我用CH579做了個(gè)假手表
2、硬件設(shè)計(jì)
最近買了個(gè)電腦,11代i7配置不錯(cuò),打開最新版AD21,開始愉快的硬件設(shè)計(jì)。
2-1、原理圖
- CPU :CH579,配置請(qǐng)點(diǎn)擊
- LCD:240*240,SPI接口
- USB toTTL:CP2102
- 其他模塊
2-2、具體設(shè)計(jì)
- 電源電路:考慮到電池電壓會(huì)低于3.4V還要工作,選擇DCDC。
- 充電電路:選擇拓品的TP4055,電路很簡(jiǎn)單,價(jià)格很美麗,值得推薦。
- 一鍵開關(guān)電路:低功耗設(shè)備,需要完全斷電。
- LCD電路:中景園的1.28寸SPI接口,價(jià)格30內(nèi),背光記得可控,用于省電。
- USB to TTL電路:CP2102最近漲價(jià)到10塊錢了,快用不起了,跳線接CH579兩個(gè)串口,一個(gè)Log,一個(gè)用戶。
2-3、PCB
放兩張圖吧
3、軟件設(shè)計(jì)
下載官方SDK,開始擼碼。
3-1、軟件
-
增加LED、KEY驅(qū)動(dòng),SDK自帶的,只要使能即可:
-
參考LED、寫個(gè)LCD,更多參考源碼:
GPIOA_SetBits(GPIO_Pin_12); GPIOA_ModeCfg(GPIO_Pin_12 | GPIO_Pin_13 | GPIO_Pin_14, GPIO_ModeOut_PP_5mA); SPI0_MasterDefInit();
LCD_RES_Clr(); DelayMs(100); LCD_RES_Set(); DelayMs(100);
LCD_Init(); LCD_BLK_Set();//打開看看刷新速度 LCD_ShowPicture(0, 0, 240, 240, gImage_2); DelayMs(500); LCD_Fill(0,0,240,240,WHITE); LCD_ShowChinese(30, 40, "送給最帥的人", RED, WHITE, 32, 1); LCD_ShowString(32, 80, "key num:", RED, WHITE, 16, 1); LCD_ShowString(32, 100, "Increaseing Num:", RED, WHITE, 16, 1);
// LCD_BLK_Set(); PRINT("LCD init.\n");}
-
藍(lán)更改藍(lán)牙名為Hello XB,并在藍(lán)牙連上和斷開地方增加LED指示和串口Log輸出:
4、效果
演示視頻拍不出效果,所以就不放了。
-
提升SPI刷屏速度,移植LVGL
-
按鍵切換界面等
-
一鍵開關(guān)機(jī)顯示進(jìn)度等
-
電量檢測(cè)顯示
-
藍(lán)牙相關(guān)信息顯同步示
5、開源下載
公眾號(hào)回復(fù)“手表”下載。