STM32十一天燒寫中文字庫在LCD上顯示
- #include"stm32f10x.h"http://包含了STM32的寄存器和變量類型
- #include"stm32f10x_conf.h"http://包含了庫函數(shù)的.h
- #include"led.h"
- #include"key.h"
- #include"delay.h"
- #include"uart1.h"
- #include
//因為用到printf函數(shù) - #include"spi2.h"
- #include"w25q64.h"
- #include"iic.h"
- #include"at24c02.h"
- #include"lcd.h"
- voidDelay(intt)
- {
- for(;t>0;t--);
- }
- intmain(void)
- {
- u8i=0;
- u32addr=0;
- u8data;
- //初始化延時函數(shù)
- delay_init(72);
- //初始化LED
- InitLED();
- //初始化KEY
- KEY_Init();
- //初始化USART1
- UART1_Init(115200);
- //1/1152000.0000087s*10=87us
- SPI2_Init(0,0);
- W25Q64_Init();
- IIC_Init();
- LCD_Init();
- //1、擦除扇區(qū)0塊0扇區(qū)
- while(i<64)
- {
- W25Q64_SectorErase(0x000000+i*0X4096);
- i++;
- }
- //1s發(fā)1K20S
- //隨便稍寫一個....//
- printf("EraseOKrn");
- while(1)
- {
- //接收數(shù)據(jù)
- while(!(USART1->SR&(1<<5)));//等待串口收到數(shù)據(jù)
- data=USART1->DR;//串口里面就是8位
- W25Q64_ReceiveByte(addr,data);
- addr++;
- //26196*64?
- //這樣就燒寫完了代碼...
- if(addr==261696)
- {
- printf("CompleteOKrn");
- while(1);
- }
- }
- }
//注意GBK,有261926個字節(jié)255KB,W25Q64有一個扇區(qū)4K,需要64個扇區(qū),先擦除然后寫入
本文引用地址:http://m.butianyuan.cn/article/201611/318147.htm
評論