找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1831|回复: 3
收起左侧

STM32F103C8T6_OLEO显示屏动画程序共享

[复制链接]
ID:313012 发表于 2019-7-6 16:04 | 显示全部楼层 |阅读模式
STM32F103C8T6_OLEO显示屏动画程序共享
0.png

单片机源程序如下:
  1. #include "led.h"
  2. #include "delay.h"
  3. #include "sys.h"
  4. #include "key.h"
  5. #include "beep.h"
  6. #include "exti.h"
  7. #include "oled.h"
  8. #include "timer.h"
  9. #include "usart.h"
  10. #include "24cxx.h"


  11. u8 S = 12;//时
  12. u8 F = 0;//分
  13. u8 M = 0;//秒
  14. u8 SX= 0;//0:刷新


  15. int main(void)
  16. {       
  17.   u8 i;         
  18.         delay_init();        //延时函数初始化          
  19.         LED_Init();                //初始化与LED连接的硬件接口
  20.         BEEP_Init();  //蜂鸣器初始化
  21.         EXTIX_Init(); //外部中断初始化
  22.         OLED_Init();  //OLED初始化
  23.         OLED_Clear(); //清屏                  
  24.         OLED_ShowCHinese(0,  0,0);//电
  25.         delay_ms(100);
  26.         OLED_ShowCHinese(18, 0,1);//子
  27.         delay_ms(100);         
  28.         OLED_ShowCHinese(36, 0,2);//爱
  29.         delay_ms(100);
  30.         OLED_ShowCHinese(54, 0,3);//好
  31.         delay_ms(100);
  32.         OLED_ShowCHinese(72, 0,4);//开
  33.         delay_ms(100);
  34.         OLED_ShowCHinese(90, 0,5);//发
  35.         delay_ms(100);
  36.         OLED_ShowCHinese(108,0,6);//板
  37.         delay_ms(100);
  38.         OLED_ShowString(8,3,"STM32F103C8T6",12); //显示字符
  39.   OLED_DrawBMP_LOGO1(0,6,128,8);
  40.   for(i=4;i<124;i++)//进度条显示
  41.                 {
  42.                         OLED_DrawBMP_LOGO2(i,6,i+2,8);
  43.                         delay_ms(4);
  44.                 }       
  45.         OLED_Clear(); //清屏
  46.   OLED_DrawBMP_LOGO4(0,0,128,2); //显示图形
  47.   OLED_ShowString(24,0,"4G",16); //显示字符
  48.         OLED_DrawBMP_LOGO5(0,6,128,8); //显示图形
  49.                
  50.         uart_init(9600);
  51.         AT24CXX_Init();         //IIC初始化          
  52.         AT24CXX_Check();       
  53.                
  54.         if(AT24CXX_ReadOneByte(1)==0x55)//判断是否是第一次启动       
  55.         {
  56.                 S=AT24CXX_ReadOneByte(2);
  57.                 F=AT24CXX_ReadOneByte(3);
  58.                 M=AT24CXX_ReadOneByte(4);
  59.         }
  60. else //第一次启动,保存数据并做标注
  61.         {
  62.                 AT24CXX_WriteOneByte(1,0x55);//写标注
  63.                 AT24CXX_WriteOneByte(2,S);//写数据
  64.                 AT24CXX_WriteOneByte(3,F);//写数据
  65.                 AT24CXX_WriteOneByte(4,M);//写数据       
  66.         }
  67.          
  68.                
  69.         TIM3_Int_Init(10000,5000);//10Khz记数频率,计数到5000=500ms         
  70.                
  71.         while(1)
  72.         {
  73.                 if(SX==0)
  74.                 {
  75.                         AT24CXX_WriteOneByte(2,S);//写数据
  76.                         AT24CXX_WriteOneByte(3,F);//写数据
  77.                         AT24CXX_WriteOneByte(4,M);//写数据
  78.                         SX = 1;
  79.                         OLED_DrawBMP_ZI(26,2,40, 5,S/10);//第一位
  80.                   OLED_DrawBMP_ZI(43,2,57, 5,S%10);//第二位               
  81.                
  82.                   OLED_DrawBMP_LOGO7(62,2,66, 5);  //显示图形
  83.                
  84.                   OLED_DrawBMP_ZI(69,2,83, 5,F/10);     //第三位
  85.                   OLED_DrawBMP_ZI(86,2,100, 5,F%10);    //第四位
  86.                   OLED_ShowString(26,5,"2018-10-08",12);//显示字符          
  87.       OLED_ShowNum(108,3,M,2,16);  //显示秒
  88.                 }

  89.                
  90.         }                 
  91. }
复制代码

所有资料51hei提供下载:
STM32_OLED_V01.7z (197.55 KB, 下载次数: 49)
回复

使用道具 举报

ID:628367 发表于 2019-10-28 14:28 | 显示全部楼层
希望可以用,多谢大佬
回复

使用道具 举报

ID:628367 发表于 2019-10-28 14:29 | 显示全部楼层
希望可以用,多谢大佬
回复

使用道具 举报

ID:634580 发表于 2019-11-4 14:13 | 显示全部楼层
感谢大佬分享
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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