|
這是最近做的esp8266模塊與oled同時(shí)工作的代碼
單片機(jī)源程序如下:
- #include "led.h"
- #include "delay.h"
- #include "sys.h"
- #include "usart.h"
- #include "lcd.h"
- #include "key.h"
- #include "usmart.h"
- #include "malloc.h"
- #include "MMC_SD.h"
- #include "ff.h"
- #include "exfuns.h"
- #include "fontupd.h"
- #include "text.h"
- #include "common.h"
- #include "touch.h"
- #include "usart2.h"
- #include "oled.h"
-
-
- int main(void)
- {
- u8 key,fontok=0;
-
-
- u8 t;
- delay_init(); //延時(shí)函數(shù)初始化
- delay_init(); //延時(shí)函數(shù)初始化
-
- // delay_ms(8000);
- OLED_Init(); //初始化OLED
- OLED_Clear();
- t=' ';
- OLED_ShowCHinese(0,0,0);//中
- OLED_ShowCHinese(18,0,1);//景
- OLED_ShowCHinese(36,0,2);//園
- OLED_ShowCHinese(54,0,3);//電
- OLED_ShowCHinese(72,0,4);//子
- OLED_ShowCHinese(90,0,5);//科
- OLED_ShowCHinese(108,0,6);//技
- while(1)
- {
- OLED_Clear();
- OLED_ShowCHinese(0,0,0);//中
- OLED_ShowCHinese(18,0,1);//景
- OLED_ShowCHinese(36,0,2);//園
- OLED_ShowCHinese(54,0,3);//電
- OLED_ShowCHinese(72,0,4);//子
- OLED_ShowCHinese(90,0,5);//科
- OLED_ShowCHinese(108,0,6);//技
- // OLED_ShowString(6,3,"0.96' OLED TEST",16);
- //OLED_ShowString(8,2,"ZHONGJINGYUAN");
- // OLED_ShowString(20,4,"2014/05/01");
- // OLED_ShowString(0,6,"ASCII:",16);
- // OLED_ShowString(63,6,"CODE:",16);
- // OLED_ShowChar(48,6,t,16);//顯示ASCII字符
- t++;
- if(t>'~')t=' ';
- // OLED_ShowNum(103,6,t,3,16);//顯示ASCII字符的碼值
- delay_ms(8000);
- delay_ms(8000);
- delay_ms(8000);
- delay_ms(8000);
- delay_ms(8000);
- // OLED_DrawBMP(0,0,128,8,BMP1); //圖片顯示(圖片顯示慎用,生成的字表較大,會(huì)占用較多空間,F(xiàn)LASH空間8K以下慎用)
- delay_ms(8000);
- delay_ms(8000);
- delay_ms(8000);
- delay_ms(8000);
- // OLED_DrawBMP(0,0,128,8,BMP1);
- delay_ms(8000);
- delay_ms(8000);
- delay_ms(8000);
- delay_ms(8000);
- }
-
- NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //設(shè)置NVIC中斷分組2:2位搶占優(yōu)先級(jí),2位響應(yīng)優(yōu)先級(jí)
-
- uart_init(115200); //串口初始化為9600
- USART2_Init(115200); //初始化串口2波特率為115200
- LCD_Init(); //初始化液晶
- LED_Init(); //LED初始化
- KEY_Init(); //按鍵初始化
-
- tp_dev.init(); //觸摸屏初始化
- mem_init(); //初始化內(nèi)存池
- exfuns_init(); //為fatfs相關(guān)變量申請(qǐng)內(nèi)存
- f_mount(fs[0],"0:",1); //掛載SD卡
- f_mount(fs[1],"1:",1); //掛載FLASH.
- key=KEY_Scan(0);
- if(key==KEY0_PRES) //強(qiáng)制校準(zhǔn)
- {
- LCD_Clear(WHITE); //清屏
- tp_dev.adjust(); //屏幕校準(zhǔn)
- LCD_Clear(WHITE); //清屏
- }
- fontok=font_init(); //檢查字庫(kù)是否OK
- if(fontok||key==KEY1_PRES)//需要更新字庫(kù)(字庫(kù)不存在/KEY1按下)
- {
- LCD_Clear(WHITE); //清屏
- POINT_COLOR=RED; //設(shè)置字體為紅色
- LCD_ShowString(60,50,200,16,16,"ALIENTEK STM32");
- while(SD_Initialize()) //檢測(cè)SD卡
- {
- LCD_ShowString(60,70,200,16,16,"SD Card Failed!");
- delay_ms(200);
- LCD_Fill(60,70,200+60,70+16,WHITE);
- delay_ms(200);
- }
- LCD_ShowString(60,70,200,16,16,"SD Card OK");
- LCD_ShowString(60,90,200,16,16,"Font Updating...");
- key=update_font(20,110,16);//更新字庫(kù)
- while(key)//更新失敗
- {
- LCD_ShowString(60,110,200,16,16,"Font Update Failed!");
- delay_ms(200);
- LCD_Fill(20,110,200+20,110+16,WHITE);
- delay_ms(200);
- }
- LCD_ShowString(60,110,200,16,16,"Font Update Success!");
- delay_ms(1500);
- LCD_Clear(WHITE);//清屏
- }
- atk_8266_test(); //進(jìn)入ATK_ESP8266測(cè)試
-
- }
復(fù)制代碼
所有資料51hei提供下載:
1.0.rar
(977.46 KB, 下載次數(shù): 33)
2018-4-6 16:38 上傳
點(diǎn)擊文件名下載附件
|
|