使用STC8A8K64S4A12為主控,可以自由燒錄不同字體的16*16大小的字庫。
使用簡單的串口控制控制協議,實現時間專用字符顯示,短字符串,長字符串顯示;
詳細說明、原理圖及代碼已分享在附件中,有需要的可以下載查看。
顯示器具有如下基本功能:
1.時間顯示時,時間分號點自動閃爍,時間的每一個字符位均可獨立向上滾動翻頁顯示;
2.短字符[8個字符]顯示,默認向上滾動后停滯顯示。
3.長字符[128個字符]顯示,可以配置向上、下、左、右滾動顯示;滾動速度可調節0~250共250級。
4.自定義顯示,此時可作為如同常見的OLED屏來發送顯示數據。
5.定義了幾個簡單的內置動畫,可通過命令指定顯示。
6.顯示亮度可自由調節,可設置為0~10級,可設置為自動調節顯示亮度,此時將通過環境亮度自動調節顯示亮度。
7.代碼及說明文檔:
2020-07-26 點陣屏.zip
(728.66 KB, 下載次數: 147)
2021-7-27 16:11 上傳
點擊文件名下載附件
代碼及說明 下載積分: 黑幣 -5
限于文件大小,以下是一些簡單展示,實際效果并非如此,絕對的絲滑:
圖1-部分效果1
部分展示.gif (7.19 MB, 下載次數: 109)
下載附件
效果展示1
2021-7-27 16:05 上傳
圖2-部分效果2
111.gif (5.88 MB, 下載次數: 152)
下載附件
效果展示2
2021-7-27 17:06 上傳
圖3-代碼列表
代碼展示.png (237.62 KB, 下載次數: 107)
下載附件
代碼列表
2021-7-27 16:05 上傳
圖4-調試
調試展示.png (184.96 KB, 下載次數: 87)
下載附件
2021-7-27 16:05 上傳
圖5-應用,網絡天氣時鐘
666.jpg (5.33 MB, 下載次數: 98)
下載附件
應用
2021-7-27 17:06 上傳
單片機源程序如下:- #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(); // 初始化標志定時器
- display_init(); // 初始化顯示
- spp_init(); // 初始化串口協議
- while(1)
- {
- spp_unpack(); //解包
-
- if(Comreg & DISP_EN) //打開顯示[默認打開]
- {
- 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: //播放內置動畫1 跳跳球
- display_animation(img2,17);
-
- break;
-
- case 5: //播放內置動畫2 滑稽臉
- display_animation(img3,2);
-
- break;
- case 6: //播放內置動畫3 小娃跳大神
- display_animation(img4,4);
-
- break;
-
- default: break;
- }
- }
- if(Comreg & 0x20) //開啟自動亮度 [默認關閉]
- {
- display_auto_lum( );
- }
- }
- }
- }
復制代碼 |