找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3722|回复: 4
收起左侧

基于STM32F103单片机的废弃SPI_19264屏+DS3231万年历时钟程序

[复制链接]
ID:39072 发表于 2021-10-16 10:16 | 显示全部楼层 |阅读模式
废物利用,u坏了,于是拆解,把上面的屏幕拆出(spi的LCD19264点阵屏)来配合DS3231芯片制作一个万年历玩玩
制作出来的实物图如下:
51hei图片_20211016101445.jpg

单片机源程序如下:
  1. #include "led.h"
  2. #include "exti.h"
  3. #include "oled.h"
  4. #include "i2c_soft.h"
  5. #include "DS3231.h"
  6. #include "delay.h"
  7. #include "sys.h"
  8. #include "bmp.h"

  9. int main(void)
  10. {        
  11.         //u8 k=0;//*t=0,p=2,
  12.         
  13.         delay_init();                        //延时函数初始化         
  14.         LED_Init();                                //初始化与LED连接的硬件接口
  15.         I2C_GPIO_Config();
  16.         EXTI_KEY_Config();
  17.         DS3231_Init();
  18.         //Set_DS3231_Time(20,12,29,8,52,00,2);//第一次初始化DS3231使用
  19.         OLED_Init();
  20.         OLED_Clear();
  21.         LED1_ON;                                //LED1 ON
  22.                                 
  23.         while(1)
  24.         {
  25.                 Get_DS3231_Time();
  26.                 //if(k!=calendar.sec)
  27.                 {
  28.                         //k=calendar.sec;                        
  29.                         //显示日期
  30.                         OLED_ShowString(0,0,"20",16); //固定显示年的千位和百位字符
  31.                         OLED_ShowChar(17,0,calendar.w_year/10+48,16);
  32.                         OLED_ShowChar(26,0,calendar.w_year%10+48,16);
  33.                         OLED_ShowCHinese(35,0,0);//在2列6行显示”年“
  34.                         OLED_ShowChar(52,0,calendar.w_month/10+48,16);
  35.                         OLED_ShowChar(60,0,calendar.w_month%10+48,16);
  36.                         OLED_ShowCHinese(70,0,1);//在2列6行显示”月“
  37.                         OLED_ShowChar(86,0,calendar.w_date/10+48,16);
  38.                         OLED_ShowChar(94,0,calendar.w_date%10+48,16);
  39.                         OLED_ShowCHinese(103,0,14);//在2列6行显示”日“
  40.                         //显示时间
  41.                         OLED_Show16X32(0,2,calendar.hour/10);
  42.                         OLED_Show16X32(16,2,calendar.hour%10);
  43.                         OLED_Show16X32(32,2,10);
  44.                         OLED_Show16X32(48,2,calendar.min/10);
  45.                         OLED_Show16X32(64,2,calendar.min%10);
  46.                         OLED_Show16X32(80,2,10);
  47.                         OLED_Show16X32(96,2,calendar.sec/10);
  48.                         OLED_Show16X32(112,2,calendar.sec%10);
  49.                         
  50.                         //显示星期
  51.                         OLED_ShowCHinese(144,0,6);//144列0行显示”星“
  52.                         OLED_ShowCHinese(160,0,7);//160列0行显示”期“
  53.                         //OLED_ShowCHinese(160,0,2);//在2列0行显示”周“
  54.                         OLED_ShowCHinese(176,0,calendar.week+7); //176列0行显示”星期数“  
  55.                         //显示温度数据
  56.                         OLED_ShowChar(144,3,127,16);//温度计图标
  57.                         OLED_ShowCHinese(160,3,4);//在160列3行显示”温“
  58.                         OLED_ShowCHinese(176,3,5);//在176列3行显示”度“
  59.                         OLED_ShowChar(144,6,calendar.temper_H/10+48,16);//显示温度十位
  60.                         OLED_ShowChar(152,6,calendar.temper_H%10+48,16);//显示温度个位
  61.                         OLED_ShowString(162,6,".",16);
  62.                         OLED_ShowChar(168,6,calendar.temper_L/10+48,16);//显示小数
  63.                         OLED_ShowCHinese(176,6,3);//温度C
  64.                 }
  65.         }
  66. }        
复制代码

所有代码51hei附件下载:
STM32F103SPI_LCD19264+DS3231OK.7z (193.79 KB, 下载次数: 110)

评分

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

查看全部评分

回复

使用道具 举报

ID:1022524 发表于 2022-4-28 20:40 | 显示全部楼层
回复

使用道具 举报

ID:1030595 发表于 2022-5-30 10:57 | 显示全部楼层
屏幕spi定义有没有?
回复

使用道具 举报

ID:229641 发表于 2022-5-31 07:28 来自手机 | 显示全部楼层
key呢?
回复

使用道具 举报

ID:349598 发表于 2024-1-14 10:53 | 显示全部楼层
不错!谢谢楼主分享,要是加上农历就更好了
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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