基于STM32的多功能数字钟(中文版)
程序功能:基于STM32的多功能数字钟(中文版)
**************************************************************************************
1、时钟的基准用STM32F103RCT6自带的RTC实现。
2、这三个按键的功能分别为:"设置"、"加"、"减"。(WAKEUP KEY0 KEY1)
三个按键作为这三个功能:
键盘上的WAKEUP用作"设置",KEY0用作"加",KEY1用作"减"。
设定时间、日期、星期时,按下设定键,
相应的参数会闪动,即一亮一灭,提示正的修改的数据,每按一下设置键,
设定的项目就会变化,顺序为:
秒--分--时--星期--日--月--年--闹铃分--闹铃时。
顺序设定完后,再按一下设定键,就退出设定状态,回到正显示状态。
3、用DS18B20显示温度。精确到小数点后一位。如:33.5℃。
4、增加用红外遥控器的CH CH+ CH- 三个按键进行时间设置,
功能等同于键盘上的(WAKEUP KEY0 KEY1)"设置"、"加"、"减"。
5、通过串行口设置时间日期。
如串行口发送t12:30:00 设置时间;
如串行口发送d2016-08-12 设置日期;
6、通过触摸屏进行时间日期设置
在触摸屏上有 "设置"、"加"、"减"三个标志,当用触笔去按时,就会产生同开发板上的
按键一样的效果。
触摸按下去和弹起来时,按键的颜色会发生变化。
7、闹铃时间到,蜂鸣器发生“嘀嘀”声
8、超温报警
TFT屏界面如下:
-----------------------------------------
| --多功能数字钟-- |
| 作者:王庐山 16/08/18 |
| 日期:2016年08月18日 |
| 时间:17时12分 |
| 星期:四 |
| 温度:34.5℃ |
| ___ __ __ |
| |设置| |加 | |减 | |
| ---- --- --- |
------------------------------------------
9、需要完速程序的朋友请QQ我。
**************************************************************************************
硬件:LED0----GPIOA.8 (LED运行灯)
KEY0----GPIOC.5 (对时间日期进行设置)
KEY1----GPIOA.15
KEY_WAKEUP----GPIOA.0
TIMER2定时器定时功能。(用于LED运行灯)
TIMER5定时器的定时和捕获功能(红外解析)
TFT液晶屏2。8寸屏带触摸功能。(显示界面与触摸功能)
TOUCH触摸屏。 (触摸按键)
DS18B20---PC4; (环境温度)
HS138红外遥控---PA1;(实现红外调时)
串行口USART1; (实现串口调时调时)
RTC实时时钟 (时间基准)
SD卡 (存放字库,文件系统使用)
EEPROM 24C02 (存放触摸屏的相关信息)
FLASH W25Q64 (存放字库的相关信息及文件系统使用)
软件:FATFS(文件系统)
MALLOC(存储管理)
汉字字库
SPI总线协议
IIC总线协议
开发板:正点原子MINI开发板
**************************************************************************************
编程目的:让大赛学生尽快学会STM32的综合编程。
本程序用到了STM32众多的硬件资源,还用到了存储管理和FATFS,
只要学会了该程序的编程,可以这样说,你的STM32已经入门了。
**************************************************************************************
编程软件:KEIL5
**************************************************************************************
常用的算法:
按键采用状态机实现按键扫描。在定时器中对按键进行处理。
红外部分采用定时器捕获功能实现。
时间用STM32自带的RTC实现;
**************************************************************************************
时间:2016.8.18
作者:王庐山
工作室:湖北工业职业技术学院电子创新中心
***************************************************************************************/
#include "stm32f10x_conf.h"
#include "delay.h"
#include "sys.h"
#include "LED.h"
#include "key.h"
#include "timer2.h"
#include "24cxx.h"
#include "lcd.h"
#include "touch.h"
#include "usart.h"
#include "rtc.h"
#include "ds18b20.h"
#include "remote.h"
#include "malloc.h"
#include "flash.h"
#include "spi.h"
#include "mmc_sd.h"
#include "exfuns.h"
#include "fattester.h"
#include "ff.h"
#include "FONTupd.h"
#include "diskio.h"
#incl
STM32数字钟中文 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)