|
使用STC8A8K64S4A12為主控,可以自由燒錄不同字體的16*16大小的字庫。
使用簡單的串口控制控制協(xié)議,實現(xiàn)時間專用字符顯示,短字符串,長字符串顯示;
詳細(xì)說明、原理圖及代碼已分享在附件中,有需要的可以下載查看。
顯示器具有如下基本功能:
1.時間顯示時,時間分號點自動閃爍,時間的每一個字符位均可獨立向上滾動翻頁顯示;
2.短字符[8個字符]顯示,默認(rèn)向上滾動后停滯顯示。
3.長字符[128個字符]顯示,可以配置向上、下、左、右滾動顯示;滾動速度可調(diào)節(jié)0~250共250級。
4.自定義顯示,此時可作為如同常見的OLED屏來發(fā)送顯示數(shù)據(jù)。
5.定義了幾個簡單的內(nèi)置動畫,可通過命令指定顯示。
6.顯示亮度可自由調(diào)節(jié),可設(shè)置為0~10級,可設(shè)置為自動調(diào)節(jié)顯示亮度,此時將通過環(huán)境亮度自動調(diào)節(jié)顯示亮度。
7.代碼及說明文檔:
2020-07-26 點陣屏.zip
(728.66 KB, 下載次數(shù): 147)
2021-7-27 16:11 上傳
點擊文件名下載附件
代碼及說明
限于文件大小,以下是一些簡單展示,實際效果并非如此,絕對的絲滑:
圖1-部分效果1
效果展示1
圖2-部分效果2
效果展示2
圖3-代碼列表
代碼列表
圖4-調(diào)試
圖5-應(yīng)用,網(wǎng)絡(luò)天氣時鐘
應(yīng)用
單片機(jī)源程序如下:- #include "main.h"
- #include "image.h"
- /*!---------------------------------------------
- *@file: main.c
- *@author: mu yu qiu feng [Yuan Huafei]
- *@date: 2021-04-10
- *@descr: MCU:STC8A8K64S4A12
- ROM:64KB SRAM:8KB IRAM:256B SYSCLK:24.8832
- -----------------------------------------------*/
- void main(void)
- {
- stf_init(); // 初始化標(biāo)志定時器
- display_init(); // 初始化顯示
- spp_init(); // 初始化串口協(xié)議
- while(1)
- {
- spp_unpack(); //解包
-
- if(Comreg & DISP_EN) //打開顯示[默認(rèn)打開]
- {
- if((Comreg & CUSTOM_EN)==0) //未開啟自定義顯示
- {
- switch( Disp_num )
- {
- case 1:
- if(display_time_string())
- {
- Uart1_Send_Byte(0x04|0x80);
- }
- break;
-
- case 2:
- if(display_short_string())
- {
- Uart1_Send_Byte(0x05|0x80);
- }
- break;
-
- case 3:
- if(display_long_string(Comreg & SCROLL_DIR,Long_len))
- {
- Uart1_Send_Byte(0x06|0x80);
- }
- break;
-
- case 4: //播放內(nèi)置動畫1 跳跳球
- display_animation(img2,17);
-
- break;
-
- case 5: //播放內(nèi)置動畫2 滑稽臉
- display_animation(img3,2);
-
- break;
- case 6: //播放內(nèi)置動畫3 小娃跳大神
- display_animation(img4,4);
-
- break;
-
- default: break;
- }
- }
- if(Comreg & 0x20) //開啟自動亮度 [默認(rèn)關(guān)閉]
- {
- display_auto_lum( );
- }
- }
- }
- }
復(fù)制代碼 |
評分
-
查看全部評分
|