- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于launchpad的爱情万年历精选
基于launchpad的爱情万年历一、要实现的功能:1、 精确显示年月日时分秒2、 闰年、二月自动调节时间4、 显示自定义的语句5、 恋爱纪念日提醒,显示不一样的画面(We’ve been together for XX years!)二、硬件部分:1、 launchpad开发板一块(板载MSP430G2553)2、 LCD12864液晶屏一块3、 DS1302数字时钟芯片4、 32.768KHz晶振一枚5、 按键四枚6、 二极管一个7、 电容、导线、插针等8、开关一个三、设计思路a、依据题目要求,作品采用德州仪器Texas Instrument公司的混合信号处理器MSP430系列单片机作为控制核心。该芯片以惊人的低功耗性能著称,是一款基于RISC指令集的16位MCU,在实现超低功耗的前提下达到较高的性能,是绝对适合本题设计要求(超低功耗、高运算性能、相对低廉价格、相对较低的开发成本)的单片机。考虑到万年历并非高级电子设备,成本不能过高,控制核心单片机一般在低端的MSP430FX1XX系列或MSP430G2XX系列中选择。我们最终选择了MSP430G2553芯片作为控制核心 1、Launchpad所采用的G2553芯片存储空间为4K; 2、G2553有20管脚,如果用于开发将不得不设计较为复杂的程序实现管脚的分时复用。基于以上讨论,作品最终采用MSP430G2553芯片作为控制核心。 b、实时时钟 由于MSP430G2553片内没有实时时钟RTC模块,作品采用外扩实时时钟的方式完成计时功能。不同厂商生产的RTC芯片有许多,性能、价格上相差甚远。出于性价比考虑,Dallas公司的DS1302芯片足以满足万年历的计时要求。该芯片具有涓细电流充电能力,利用普通手表晶振实现低功耗运行,利用备用电源(纽扣电池)实现断电计时功能,操作简单,性价比极高,精度足以满足题目要求。基于以上讨论,作品最终采用Dallas?DS1302芯片作为实时时钟模块的核心。c、?人机交互?根据题目要求,作品采用LCD12864作为主显示器,显示公历的年月日、时分秒及闰年情况,同时实现农历年月日的汉字输出,同时实现温度等数据以及全中文菜单的显示。?根据题目要求,作品采用四枚独立按键分别作为上、下、确认、菜单功能按键,足以满足多级菜单间的切换与相应时间、功能、日程安排的设置。?d、?程序开发语言?MSP430单片机开发采用C语言较多。但由于开发时间极短、开发人数极少、课业压力大、任务较重,作品采用IEEE制定的Embedded?C++语言开发,且充分利用了面向对象编程的思想,大大简化了程序设计的过程,也较大程度地提高了代码的复用性(且代码具有很高的可重用性)。代码也适当地利用了IAR?Electric?Workbench?for?MSP430开发环境对C++泛型编程开发的良好支持,使用了标准模板库STL中的部分函数简化部分算法和数据结构的设计开发工作。由于C++编译的程序将比C效率低,为保证程序仍具有较高效率,编程时充分考虑MSP430内部结构,遵循C430编程规范,尽量避免使用不适合MSP430架构执行的代码段。为保持较好的可移植性,几乎没有使用Embedded?C++语言不支持的特性。?e、?算法选择?万年历主要涉及的算法为公历年月日(涉及闰年补偿)及星期的算法、公历与农历的高效转换算法。基于1.1.2的讨论,作品采用了外连RTC模块的设计方案,而DS1302具有闰年补偿功能,能实现较完整的公历年月日计算,因此只需设计星期的计算方法。作品采用了基于Zeller公式的星期计算方法,时间复杂度仅为O(1)。由于中国农历计算依赖于天象等不确定量,无特定算法。因此作品内建了公农历映射表实现公农历间转换。此外,作品在菜单设计部分还利用到了递归算法的思想,在日程设计方面利用了STL提供的快速排序算法。2.总体设计设计总体框架图四、方案描述?基于1.1部分的比较分析,作品最终的方案描述如下:1、?作品提供了一种基于MSP430与DS1302的万年历解决方案。硬件方面,作品控制核心采用MSP430G2553单片机,以LCD12864作为显示器,依赖DS1302提供实时时钟信息。?软件方面,系统代码采用Embedded?C++编写,采用面向对象设计方法实现,设计了利用中断实现的支持多任务时间片轮转调度、高优先级任务抢占调度的伪RTOS;设计了功能完善的多级菜单,具有良好的人机交互性能;设计了基于Zeller公式与紫金历数据表的万年历算法,能显示判断闰年并自动调整日期。?功能与特性包括以下几点:?1、 精确显示年月日时分秒2、 闰年、二月自动调节时间3、 两个按键控制调节时间日期等4、 显示自定义的语句5、 恋爱纪念日提醒,显示不一样的画面(We’ve been togeth
文档评论(0)