找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2980|回复: 2
打印 上一主题 下一主题
收起左侧

51单片机串口协议16*64点阵显示器制作 附源程序原理图

  [复制链接]
跳转到指定楼层
楼主
使用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, 下载次数: 131)


限于文件大小,以下是一些简单展示,实际效果并非如此,绝对的丝滑:

图1-部分效果1




图2-部分效果2



图3-代码列表



图4-调试



图5-应用,网络天气时钟


单片机源程序如下:
  1. #include "main.h"
  2. #include "image.h"


  3. /*!---------------------------------------------
  4. *@file: main.c
  5. *@author: mu yu qiu feng [Yuan Huafei]
  6. *@date: 2021-04-10
  7. *@descr: MCU:STC8A8K64S4A12
  8. ROM:64KB  SRAM:8KB  IRAM:256B  SYSCLK:24.8832
  9. -----------------------------------------------*/

  10. void main(void)
  11. {
  12.         stf_init();     // 初始化标志定时器
  13.         display_init(); // 初始化显示
  14.         spp_init();     // 初始化串口协议

  15.         while(1)
  16.         {        
  17.     spp_unpack(); //解包
  18.         
  19.     if(Comreg & DISP_EN) //打开显示[默认打开]
  20.                 {               
  21.                         if((Comreg & CUSTOM_EN)==0) //未开启自定义显示
  22.                         {
  23.                           switch( Disp_num )
  24.                           {
  25.                                   case 1:
  26.                                 if(display_time_string())
  27.                                 {
  28.                                          Uart1_Send_Byte(0x04|0x80);
  29.                                 }
  30.                             break;
  31.                                 
  32.                                   case 2:
  33.                                             if(display_short_string())
  34.                                                         {
  35.                                                Uart1_Send_Byte(0x05|0x80);
  36.                                                         }
  37.                             break;
  38.                                 
  39.                                   case 3:
  40.               if(display_long_string(Comreg & SCROLL_DIR,Long_len))
  41.                                                         {
  42.                                                Uart1_Send_Byte(0x06|0x80);
  43.                                                         }        
  44.                             break;
  45.                                                         
  46.                                   case 4: //播放内置动画1 跳跳球
  47.                                                   display_animation(img2,17);
  48.                                                 
  49.                             break;
  50.                                        
  51.                                   case 5: //播放内置动画2 滑稽脸
  52.                                                   display_animation(img3,2);
  53.                                                 
  54.                             break;

  55.                                   case 6: //播放内置动画3 小娃跳大神
  56.                                                  display_animation(img4,4);
  57.                                                 
  58.                             break;                                                
  59.                                 
  60.                                   default: break;
  61.                     }
  62.                         }
  63.                   if(Comreg & 0x20) //开启自动亮度 [默认关闭]
  64.                   {
  65.                      display_auto_lum( );
  66.                   }                        
  67.                 }
  68.         }
  69. }

复制代码

评分

参与人数 1黑币 +100 收起 理由
admin + 100 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏12 分享淘帖 顶2 踩
回复

使用道具 举报

沙发
ID:480686 发表于 2022-10-14 11:12 | 只看该作者
你好能问下字库怎么烧录
回复

使用道具 举报

板凳
ID:1013588 发表于 2024-3-5 10:06 | 只看该作者
下载了,有时间做一个
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表