好東東啊,樓主的主程序:- #include "fsc_stos.h" //使用多任務內核
- int main(void)
- {
- OS_MAIN(); //請到APP.c寫代碼。
- }
- /*本工程介紹:
- 2.8寸ISP彩屏
- FSC_STOS+uCGUI
- 主界面:24h溫度折線圖
- 綠線:今天溫度
- 黃線:昨天溫度
- 紅線:前天溫度
- 觸屏:長按2s以上進入主設置界面
- 滑動:(按下屏幕,稍停0.5s左右再滑動,成功率較大)
- 向左-查看上一天溫度折線圖,最大可查看7天前 此方式靈敏度一般
- 向右-查看后一天溫度折線圖,左右循環查看 此方式靈敏度一般
- 向上-關閉前兩天的折線同屏顯示(方便對比) 此方式不太靈敏
- 向下-打開前兩天的折線同屏顯示 此方式不太靈敏
- 快捷指令:串口助手發送:
- time=1919.5.4.13.15.10// //年月日時分鈔,以//結束 設置RTC時間
- hstytemp// //查看7天內的溫度情況(內存夠大的話可以無限保存任意天數的溫度信息)
- 工程文件結構:
- Application文件夾存放GUI界面,WM_開頭的C文件對應一個界面
- Driver文件夾:驅動
- HardwareDriver文件夾:板載的特殊硬件驅動
-
- GUI包含的文件夾:從AntiAlias到WM
- 其中:
- 有關移植部分:
- GUI_X(帶X表示外部,可修改)移植修改對象
- GUI_X.c為時鐘配置,即將硬件平臺的定時器脈沖注入GUI成為GUI的運行動力
- (裸機工程時,一般作一個全局變量放在外部定時器的中斷里累加即可,定時1ms)
- GUI_X_Touch.c為觸屏移植,把觸屏的兩個xy坐標獲取函數聲進來調用即可。
- 參考:
- int GUI_TOUCH_X_MeasureX(void) { //獲取X點坐標 (GUI提供的接口函數)
- return RTouch_Read_XorY(CMD_RDX); //CMD_RDX=0XD0 //用戶提供的讀X觸點坐標
- }
- int GUI_TOUCH_X_MeasureY(void) { // 獲取Y點坐標 (GUI提供的接口函數)
- return RTouch_Read_XorY(CMD_RDY); //CMD_RDY=0X90 //用戶提供的讀y觸點坐標
- }
-
- LCDDriver 液晶屏驅動層 (屏幕初始化函數在LCDConf.h里添加)
- 內含3個文件,屬于3選1,選擇其中一個用來作為液晶屏對接的接口層
- 這里選擇的是LCDDummy.c,其他兩個無用。
- LCDDummy.c中只需要把屏幕的畫點函數和讀點函數聲明進來并放進指定的函數內即可。
- 其他的屏幕操作函數如畫線畫矩形畫圈等函數GUI默認已帶,即是用調用的畫點函數完成。
- 缺點就是效率低,你也可以自己再把效率高的畫線,矩,圈等的函數聲明進來并在對應的函數內調用也行。
- 總之一句話,畫點和讀點是必要的兩個移植函數,其他可要可不要,非必須。
- 畫點函數必須有以下功能:能指定某種顏色來畫一個點,即擁有至少3個參數:顏色,x坐標,y坐標。
- 參考:
- void LCD_L0_SetPixelIndex(int x, int y, int PixelIndex) //畫點函數(GUI提供的接口函數)
- {
- LCD_Color_DrawPoint(x,y,PixelIndex); //用戶提供的畫點函數
- }
-
- unsigned int LCD_L0_GetPixelIndex(int x, int y) //讀點函數(GUI提供的接口函數)
- {
- return LCD_GetPoint(x,y); //用戶提供的讀點函數
- }
- 填充完以上4個函數,觸屏和顯示屏的移植就完成了。
- 接下來配置GUI的參數(即告訴GUI你的屏幕大小,觸屏的識別范圍,分配多少內存給它使用,需不需要其他功能等等)
-
- GUI配置:
- Config文件夾
- GUIConf.h - 對GUI性能配置:
- 是否持OS多任務刷屏。不建議,只用一個任務刷屏即可。
- 是否支持觸屏。
- 文字編碼方式。
- 默認字體。
- 分配給GUI自由動態配置使用的內存大小。
-
- 是否支持窗口管理。WM_ 即window manage ,必須要。
- GUI動態內存管理。
- 抗鋸齒。一般不用。
-
- GUITouchConf.h -觸屏配置:
- 設置觸屏邊界觸摸AD值, 本工程的觸摸ADC精度為12bit,范圍:0-4095 ,無觸屏時返回65535
- X,Y觸屏方向設置。(X,Y對調/鏡像等)。
-
- LCDConf.h 顯示屏配置:
- 屏幕分辨率。
- 像素位數。
- 顯示屏驅動IC型號。
- 調色板格式。
- 紅藍反色交換。
- 屏幕初始化函數,用戶提供。此處非函數填充形式,而是宏定替換形式。
-
- 做好以上就可以正常使用GUI了。
- FSC_STOS操作系統:
- FSC_STOS文件夾:
- APP.c - 任務函數 (用戶在此寫代碼)
- FSC_STOS.h - 操作系統配置。
-
- 硬件接口:
- PA1 -- 用作ADC功能,讀取電池電壓,轉為電池電量 (啟明的開發板接了LED0,需要把LED拆下。)
- PA14 - 用作外部供電檢測,斷電時作出相應動作。
- PA15 - DS18B20傳感器
-
- AT24C02 - 模擬IIC :PA11(SLC) PA12(SDA)
- W25Q16 - 硬件SPI1: PA4-7 -> CS CLK MISO MOSI
-
- bluetooth:UART5: PC12 (TX) PD2 (RX)
- */
復制代碼
|