- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
嵌入式课程设计 编程闹钟 广西大学
可编程电子闹钟
设计总
系统结构框图
本设计采用ILI9341触摸屏作为基础,将程序写入STM32中,通过电阻触摸屏上不同的坐标来使用不同的功能。再将辅助用的美化图片通过Image2Lcd根据不同的分辨率生成代码放入Fonts.c中;Rcc.c作为系统时间控制三种功能的时间;EXTI.c实现外部中断即当闹钟时间到时中断RTC;用LCD.c记录一些文字,指针位置和颜色的变化及必要的设置。总体来说就是STM32中的程序和触摸屏完成设计。
系统各单元模块设计
时钟采用RTC和RCC两部分组成,其中RCC是系统时钟,系统所有功能的时间都是RCC系统时钟。STM32的实时时钟(RTC)是一个独立的定时器。RTC模块拥有一组连续计数的计数器,可提供时钟日历的功能。修改计数器的值可以重新设置系统当前的时间和日期。根据不同触摸点的位置(坐标)确定修改的年月日时分秒。
闹钟部分
闹钟程序分为逻辑部分和显示部分。逻辑部分是通过对
此次设计采用的是电阻屏
首先确认实用的该图片的分辨率应该是多少,这一点非常重要,否则在就是图片乱码。确认之后将图片先修改成规定的分辨率,再根据软件图
五、结论
附件:闹钟程序(逻辑部分)
//显示主界面
void Display_Allarm_Main(void)
{
u8 i=0;
LCD_Clear_Display(Vertical_LCD,BLACK);//清屏
LCD_Display_Window(Vertical_LCD,0,0,240,29,DARKGREEN);
LCD_Display_Num_Chinese_Char_Number_16_16(Vertical_LCD,10,6,创建闹钟,4,:,NO_Number,WHITE,RED,Fill_OFF);
LCD_Display_Window(Vertical_LCD,195,14,18,2,WHITE);
LCD_Display_Window(Vertical_LCD,203,6,2,18,WHITE);
LCD_Display_Window(Vertical_LCD,0,29,240,2,BLUE);
for(i=1;i=Display_Allarm_Num;i++)
{
Display_Allarm_Interface(i);
}
}
void Add_Allarm(void)
{
u8 i=0;
Interface_Type=Add_Allarm_Type;
Display_Set_Allarm_Interface();//添加闹钟界面
if(Success_Set==1)//表示成功添加
{
Set_Allarm_Hour=Set_Allarm_Hour_Temp;
Set_Allarm_Min=Set_Allarm_Min_Temp;
//把当前设置的一周中星期几闹铃的值更新到数组中去
for(i=0;i7;i++)
{
Set_Allarm_Week[i]=Set_Allarm_Week_Temp[i];
}
Set_Allarm_Loop=Set_Allarm_Loop_Temp;
Display_Allarm_Num++;//显示的闹钟数量增加一个
All_Allarm_Hour[Display_Allarm_Num-1]=Set_Allarm_Hour;//把当前设置的闹钟的小时值更新到所有闹钟时间的数组中对应位置
All_Allarm_Min[Display_Allarm_Num-1]=Set_Allarm_Min;//把当前设置的闹钟的分值更新到所有闹钟时间分钟的数组中对应位置
//把当前设置的一周中星期几闹铃的值更新到数组中去
for(i=0;i7;i++)
{
All_Allarm_Week[Display_Allarm_Num-1][i]=Set_Allarm_Week[i];
}
//更新当前设置的闹钟的重复与否参数写入数组中
All_Allarm_Loop[Display_Allarm_Num-1]=Set_Allarm_Loop;
//由于成功添加了闹钟之后默认这个闹钟是打开的,因此需要更新所有闹钟状态的数组值,针对那种不重复的数组如果全部都闹过了以后自动将这个闹钟关闭了,再次开启这个闹钟又会开始闹铃
//当然在打开设置里面打开了的话就会将每天的已经闹过闹铃数组清0
All_Allarm_STA[Display_Allarm_Num-1]=1;
//针对有效的闹钟进行查询,当天最接近报警时间的值,作为准备闹铃的时间
Find_Ne
您可能关注的文档
- 山东省日照市2017届高三下学期第二次模拟考试数学(理)试题.doc
- 山东省济钢高中2017届高三开学考试英语试题.docx
- 山东省济宁市微山县第一中学2015-2016学年高一英语上学期入学检测试题(普通班).doc
- 山东省淄博市2013高三英语第二次模拟考试(淄博二模)新人教版.doc
- 山东省济南市2016届高三5月针对性考试(模拟)考试英语试题.doc
- 山东省_2007年_高考英语真题(附答案+听力mp3)_历年历届试题(详解).doc
- 山东省2013中考英语试题集锦(带答案).doc
- 山东省淄博市2015年中考英语试题含答案(word版).doc
- 山东省淄博市、莱芜市2016届高三英语5月阶段性诊断考试(二模)试题.doc
- 山东省淄博市2015年中考英语试题(word版,含答案.doc
- 安全设施现场验收单(2021年6月).docx
- 2024年江苏省扬州市中考历史试题(解析版).pdf
- 领导班子学习教育查摆问题清单(含整改措施).docx
- 2025年中考道德与法治考前猜题模拟试卷2(含答案).docx
- 附件3_第三组明查暗访问题隐患清单(昆明市、保山市、丽江市、大理州).docx
- 2025年中考道德与法治考前押题模拟试卷2(含答案).docx
- 2025年学习教育对照检查11个方面突出问题清单及整改措施材料.docx
- 2.1大气的组成和垂直分层-高一地理课件(人教版2019必修1).pptx
- 2025年常州工业职业技术学院单招职业适应性考试题库(各地真题).docx
- 关于2016年上半年“平安工地”检查通报.doc
文档评论(0)