您的位置:首页 > 其它

STM32十一天烧写中文字库在LCD上显示

2015-05-31 14:16 288 查看
首先用PCToLCD2002,生成中文字库,选择所有文件,选择GBK.bin
#include "stm32f10x.h"//包含了STM32的寄存器和变量类型
#include "stm32f10x_conf.h" //包含了库函数的.h
#include "led.h"
#include "key.h"
#include "delay.h"
#include "uart1.h"
#include <stdio.h>//因为用到printf函数
#include "spi2.h"
#include "w25q64.h"
#include "iic.h"
#include "at24c02.h"
#include "lcd.h"

void Delay(int t)
{
for(;t>0;t--);
}

int main(void)
{
u8 i=0;
u32 addr = 0;
u8 data;
//初始化延时函数
delay_init(72);

//初始化LED
InitLED();

//初始化KEY
KEY_Init();

//初始化USART1
UART1_Init(115200);
//   1/115200 0.0000087s *10 = 87us

SPI2_Init(0,0);
W25Q64_Init();

IIC_Init();

LCD_Init();

//1、擦除扇区0块0扇区
while(i<64)
{
W25Q64_SectorErase(0x000000+i*0X4096);
i++;
}
//1s发1K 20S
//随便稍写一个....//
printf("Erase OK\r\n");

while(1)
{
//接收数据
while(!(USART1->SR&(1<<5)));//等待串口收到数据
data = USART1->DR;  //串口里面就是8位
W25Q64_ReceiveByte(addr,data);
addr++;
//26196*64?
//这样就烧写完了代码...
if(addr == 261696)
{
printf("Complete OK\r\n");
while(1);

}
}
}
//注意GBK,有261926个字节255KB,  W25Q64有一个扇区4K, 需要64个扇区,先擦除然后写入
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: