- 1、本文档共17页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
5设计具有实时时间显示的温度测量报警系统
一用按键切换时间和温度显示按键名称功能S0(PC0)显示当前时间的年月日S1(PC1)显示当前时间的时分秒S2(PC2)显示当前温度表8-9按键的功能定义
(1)复制例程8.32,并打开工程,我们将在上一个例程的基础上,继续本例程的设计工作。(2)打开config.h文件,对SD2405进行使能,如程序8-33所示。使能SD2405的同时,AVRWARE++会自动使能IIC总线,我们仅需对IIC总线进行设置即可。【程序8-33】#defineEXTERNAL_MODULE_SD2405_MODE1 //0: 没有使用SD2405芯片//1: 使用了SD2405芯片,系统会自动调用IIC总线,使用时应在IIC_config.h中,对IIC进行配置
(3)打开IIC_config.h文件对IIC总线进行设置,如程序8-34所示。对于IIC配置文件的设置,我们应当参看原理图,这些内容我们已经在前面的多个项目中进行讲述,在这里就不再赘述了。【程序8-34】#ifndefIIC_CONFIG_H_#defineIIC_CONFIG_H_?#defineIIC_PORT PORTD#defineIIC_DDR DDRD#defineIIC_PIN PIND?#defineIIC_SCL BIT2#defineIIC_SDA BIT3
(4)接下来,我们对按键使用的引脚进行配置,如表8-9,我们使用端口C与按键相连接,所以HAL.h的文件配置如程序8-35所示。这部分内容,我们是在项目5中给大家介绍的,大家如果有遗忘,复习一下就好。配置后的程序如程序8-35所示。【程序8-35】///////////////////////////////////////////////////////////////////////PortC#defineIO_PC_DIR 0defineIO_PC_OUT 0 /////////////////////////////////////////////////////////////////////#defineS0BIT0#defineS1BIT1#defineS2BIT2#defineS0_CHECKCHKBIT(PINC,S0)#defineS1_CHECKCHKBIT(PINC,S1)#defineS2_CHECKCHKBIT(PINC,S2)
(5)这样,我们已经完成了工程的配置工作,接下来就是逻辑层的设计工作了。打开main.c文件,我们查看main函数,首先进行变量的声明,如程序8-36所示。我们在原先定义的变量基础上,增加了整型变量u8_DisplayItem,它用来控制数码管显示内容的切换,当该变量的值为0时,数码管显示年月日;当该变量显示的值为1时,数码管显示时分秒;当该变量的值为2时,数码管显示温度。我们在定义变量的同时,完成了对该变量的初始化工作,也就是说,在教学开发板上电时,数码管默认显示温度。【程序8-36】//定义局部变量 uint8i; floatf_Temperature=0.0; uint8u8_Temperature[2]={0,0}; uint8u8_CheckOutSum; uint8u8_DisplayItem=2; //0:显示年月日//1:显示时分秒//2:显示温度
(6)接下来,我们应当删去原先项目中全局变量初始化代码,这是因为时间和温度的显示格式是不一样的,我们在具体显示时,进行设置就可以了。(7)进入后台主循环后,首先完成按键切换u8_DisplayItem变量的逻辑,如程序8-37所示。程序对3个按键逐一进行检测,如果发现按键按下,则进行20ms的消抖工作,然后再次确认按键是否按下。按键消抖后,仍然按下,则对u8_DisplayItem进行赋值操作。
【程序8-37】if(!S0_CHECK){TARGET_Delayms(20,0)if(!S0_CHECK){u8_DisplayItem=0;}}if(!S1_CHECK){TARGET_Delayms(20,0)if(!S1_CHECK){u8_DisplayItem=1;}}if(!S2_CHECK){TARGET_Delayms(20,0)if(!S2_CHECK){u8_DisplayItem=2;}}
(8)接下来,程序根据u8_DisplayItem的具体数值,进行相应内容的显示,如程序8-38(略)所示。大家观察这些代码的时候,可以看到显示格式的设置和显示内容是一起完成的,这是因
您可能关注的文档
- 单片机技术及应用项目教程 课件 项目5-1认知轻触机械式触点开关.ppt
- 单片机技术及应用项目教程 课件 项目5-2独立式按键设计.ppt
- 单片机技术及应用项目教程 课件 项目6-3使用C语言模拟IIC总线.ppt
- 单片机技术及应用项目教程 课件 项目7-2认知通用异步串行总线.ppt
- 单片机技术及应用项目教程 课件 项目7-4修正万年历时间.ppt
- 单片机技术及应用项目教程 课件 项目四--知识点(总).ppt
- 单片机技术及应用项目教程 课件 项目一--知识点(简介).ppt
- 单片机技术及应用项目教程 课件 知识点1- 认知智能电子产品的构成.ppt
- 单片机技术及应用项目教程 课件 知识点1-初步认识LED.ppt
- 单片机技术及应用项目教程 课件 知识点1-单片机最小系统.ppt
最近下载
- 110KV输变电项目工程监理大纲.doc VIP
- 上海市初中英语必考考纲词汇详细解析拓展--字母B--教师版 .docx VIP
- 论语原文、注释、译文、评论.doc
- 母乳喂养PDCA分析和总结.docx
- PFMEA管理规定近年原文.doc
- 吉林省名校调研(省命题)2023-2024学年七年级上学期期末生物试卷.Doc VIP
- 高考语文一轮复习--戏剧阅读.pdf VIP
- 高中英语_The Road To Success教学课件设计.ppt
- 2025年山东鲁泰控股集团有限公司下属驻陕西煤矿企业招聘(150人)笔试备考题库及答案解析.docx
- 中国共产党的社会建设思想中央党校严书翰教授博导.ppt VIP
文档评论(0)