版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
........word.....word...课程论文课程论文成绩成绩题 目: 基于STM32的多功能电子时钟学生姓名: 梁健学生学号: 1008050120系 别: 电气信息工程系专 业: 电子信息科学与技年 级: 2010级任课教师: 郑晓东电气信息工程学院制2013年3月基于stm32的多功能电子时钟学生:梁健电气信息工程学院电子信息科学与技术专业一、设计任务与要求 51、设计任务 52、设计要求 5二、方案设计与论证 51、单片机芯片选择方案 72、显示选择方案 7三、硬件单元电路设计与参数计算 81、电源电路 82、按键电路 83、rtc时钟 94、12864显示电路 95、温度传感器模块 10四、软件设计与流程图 101、主程序流程图 102、显示子程序流程图 123、按键子程序流程图 14五、总原电路及元器件清单 161.总原理图 16六、元器件清单 26七、主程序 26八、参考文献 30摘要:stm32芯片作为核心控制器的单片机数字电子钟的设计与制作,包括硬件电路原理的实现方案设计、软件程序编辑的实现、数字电子钟正常工作的流程、原理图仿真实现、硬件实物的安装制作与硬件实物的调试过程。该单片机数字电子钟采用stm32自带的用lLCD1286能够准确显示时间(显示格式为:年月日时分秒,可随时进行时间12小时制显示或2412864铃提醒,可按自己的要求设置扩展的小键盘个数,并增加温度显示。关键词:单片机、数字电子钟、LCD12864、STM32、RTC,温度传感器一、设计任务与要求1、设计任务用STM32设计一个数字电子钟,采用LCD12864来显示并修改,时间或闹铃。2、设计要求显示格式为:XX\XX\XXXX\XX\XX即:年\月\日时\分\秒。具有闹铃功能。按键改变时间。按键改变闹铃。温度的显示。二、方案设计与论证整个系统用stm32单片机作为中央控制器,由单片机执行采集内部rtc值,I/OLCD12864,模块,通过显示模块来实现信号的输出、LCD12864的显示及相关的控制功能。所示。开始选择开始选择更改时间,闹铃跳显示时间,温度是设正常显图1 系统整体框图1、单片机芯片选择方案stm32是一个低功耗,高性能32位单片机,片内含4kBytesISP(In-systemprogrammable)1000FlashMCS-51:0Hz~33Hz、三级加密程序存储器、32I/O16/计数器、八个中断源、UARTCMOS88k的可反复擦写的Flash只读程序存储器和256bytes的随机存取数据存储器RAMMCS5132I/O256x8bit316/0-24MHz2UART2623从单片机芯片主要性能角度出发,本数字电子钟单片机芯片选择设计采用方案一既stm32。2、显示选择方案方案一:lcd1286。显示质量高,没有电磁辐射,可视面积大,应用范围广,画面效果好,数字式接口,”身材”匀称小巧,功耗小。方案二:数码管动态显示。动态显示,即各位数码管轮流点亮,对于显示器I/OI/Olcd12864三、硬件单元电路设计与参数计算1、电源电路5V2.5V源引脚相连接即可达到硬件设计要求。即本数字电子钟设计用两节电压值大小2.5V2、按键电路4I/O3、rtc时钟Stm32rtcRTC值可以重新设置系统当前的时间和日期RTC(RCC_BDCR器)处于后备区域,即在系统复位或从待机模式唤醒后,RTC的设置和时间维持RTC域(BKP)RTC(RTC_DIVH/RTC_DIVL可改变时间,在RTC闹钟寄存器(RTC_ALRH/RTC_ALRL)4、12864显示电路8对应引脚相连接。5、温度传感器模块DS18B20LTM8877,LTM8874DS18B201:DS18B20+125℃,固有测温误差(注意,不是分辨率,这里之前是错误的)0.5℃。③、支持多点组网功能,多个DS18B20可以并联在唯一的三线上,最多只能并联8个,实现多点测温,如果数量过多,会使供电电源电压过低,从而造成信号传输的不稳定。④、工作电源:3~5V/DC(可以数据线寄生电源)⑤、在使用中不需要任何外围元件。四、软件设计与流程图1、主程序流程图主程序流程图如下图图2所示开启开启rtc,初始化温是否Sec变了?更改数值显示温度图22、显示子程序流程图显示程序流程图如下图图3所示。开始开始Rtc计数开始11s?1是否满N1N是 否 满Y1N是 否 满Y0返回图33、按键子程序流程图显示子程序流程图如下图图4所示。开始开始DISPLAYY切换键是N否按下?秒正分小值常值时小按显按按时>=NA键示键键按?Y按按下下下标志位显示YHYYY时数加分数加秒数加图4五、总原电路及元器件清单总原理图最小系统控制原理图如下图图5所示,12864原理图如下图图6所示。图5(:stm32f103引脚图图5(2:指示灯与复位电路图5(3:稳压电路,变压电路,晶震图6实物图图7按键模块图8stm32最小系统模块图9欢迎界面图10选择界面图11正常显示界面图12选择时界面图13调整时间界面1415图1612864实物图17调温度传感器实物六、元器件清单STM32F103VET6一个杜邦线一束Lcd12864一个定位器(10k)一个Ds18b20一个插排一排电源一个铜柱两个七、主程序//#include<stm32f10x_lib.h>#include"sys.h"#include"usart.h"#include"delay.h"#include"led.h"#include"key.h"#include"exti.h"#include"wdg.h"#include"timer.h"#include"rtc.h"#include"lcd12864.h"#include"ds18b20.h"#include"adc.h"#include"timer.h"constu8*COMPILED_DATE= DATE ;//获得编译日期constu8*COMPILED_TIME= TIME ;//获得编译时间externu8 TIM5CH1_CAPTURE_STA; //输入捕获状externu16TIM5CH1_CAPTURE_VAL;//shorttemp;intmain(void){//u16adcx;u8t=1;Stm32_Clock_Init(9);//系统时钟设置delay_init(72); //延时初始化uart_init(72,9600);//串口1初始KEY_Init();LCD12864_initial(); //初始化12864液LCD_Clearh(); //12864液晶初始化LED_Init(); //初始化与LED连接的硬件接Adc_Init(); //AD转换初始化EXTIX_Init(); //外部中断初始RTC_Init(); //时钟初始化xuanzhe(); //选择你需要的操作while(DS18B20_Init())//DS18B20,{LCD(3,0,"失败");delay_ms(500);LED0=!LED0;//DS0}while(1){temp=DS18B20_Get_Temp();if(temp<0){temp=-temp;LCD(3,4,"_");}Show_dig(2,5,temp/10);//显示温度值LCD12864_sendbyte(0,0x33);LCD12864_sendbyte(1,46);Show_digl(temp%10);LCD(2,7,"℃");if(t!=timer.sec){t=timer.sec;Show_dig(1,0,timer.w_year);LCD12864_sendbyte(1,47);if(timer.w_month<=9){Show_digl(0);Show_digl(timer.w_month);}elseShow_digl(timer.w_month);LCD12864_sendbyte(1,47);if(timer.w_date<=9){Show_digl(0);Show_digl(timer.w_date);}elseShow_digl(timer.w_date);switch(timer.week){case0:LCD(1,5,"星期天");break;case1:LCD(1,5,"星期一");break;case2:LCD(1,5,"星期二");break;case3:LCD(1,5,"星期三");break;case4:LCD(1,5,"星期四");break;case5:LCD(1,5,"星期五");break;case6:LCD(1,5,"星期六");break;}Show_digshuzhi(2,0,timer.hour);LCD12864_sendbyte(1,58);LCD12864_sendbyte(0,0x33);if(timer.min<=9){Show_digl(0);Show_digl(timer.min);}elseShow_digl(timer.min);LCD12864_sendbyte(0,0x33);LCD12864_sendbyte(1,58);if(timer.sec<=9){Show_digl(0);Show_digl(timer.sec);}elseShow_digl(timer.sec);LCD12864_sendbyte(0,0x02);Show_dig(2,5,temp/10);//显示温度值LCD12864_sendbyte(0,0x33);LCD12864_sendbyte(1,46);Show_digxiaoshu(temp%10);LCD(2,7,"℃");delay_ms(50);LCD12864_sendbyte(0,0x02);}}}八、参考文献康华光.[M].:高等教育出版社,1999.6.阎石.[M].:高等教育出版社,1999.6.王福瑞等.单片微机测控系统设计大全[ M.北京航空航天大学出版社,1998(331-337).宁改娣,杨拴科.DSP控制器原理
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年版高楼外墙装饰施工协议版B版
- 2024年新版建筑工程预算定额合同
- 2024年样品机器试用协议模板一
- 2024年标准型搅拌机销售协议范本版B版
- 2024年小学二年级数学(北京版)-总复习:综合练习-1教案
- 2018房地产经纪人考试《业务操作》试题
- 2024年度基础设施建设投资借款协议范本3篇
- 2025年衢州货运从业资格证模拟考试题库下载
- 2025年沧州考货运上岗证试答题
- 单位人事管理制度展示合集
- 幕墙施工重点难点及解决方案
- 年度成本管控的实施方案
- 2024年中国板钉式空气预热器市场调查研究报告
- 人教版八年级上册数学期末考试试卷附答案
- DB1331T 041-2023 雄安新区绿色街区规划设计标准
- 北京市海淀区2022届高三上学期期末考试政治试题 含答案
- 初中七年级主题班会:如何正确对待自己的错误(课件)
- 中华民族共同体概论学习通超星期末考试答案章节答案2024年
- 2024年航空职业技能鉴定考试-航空票务知识考试近5年真题集锦(频考类试题)带答案
- 2023年山东省潍坊市中考物理试卷及答案
- 天津市2023-2024学年七年级上学期期末数学试题(含答案)
评论
0/150
提交评论