- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
课程设计报告 基于触摸屏的电子计算器 班级:学号: 2009061409 姓名: 任永哲 教师评语: 教师签名: 2012年10月 课程设计题目 基于触摸屏的电子计算器 主要内容 通过键盘与LED实现多位数字的连续四则运算以及平方运算,通过键盘输入数字与运算符号,按回车之后显示LED运算结果。图形界面设计,支持触摸屏实现加减乘除平方等简单功能。 采用的工具方法 以博创UP-NETARM3000实验台和ADS1.2软件为实验环境,仿真器驱动程序,超级终端通讯程序。ARM 嵌入式开发平台、用于ARM7TDMI的JTAG 仿真器、PC机、串口线, 超级终端。 进度安排 讨论写出核心计算算法。 实现通过键盘输入数字与运算符号,按回车之后在超级终端上显示运算结果。 通过LED与键盘实现多位数字的连续四则运算以及平方运算 研究触摸屏支持的计算器界面,与实现算法。 对功能进行简单的测试并修改bug,优化代码,使系统的功能更为完善。 参考资料 《基于ARM的嵌入式系统设计实验与实践教程》 《嵌入式系统开发原理与实践》 《基于ARM的嵌入式系统开发与实例》 《ARM3000实验指导书》 - PAGE 3 - 1. 题目 基于触摸屏的电子计算器 2. 系统简介 嵌入式系统的计算器已经受广大人民的欢迎,他越来越多的人提供了便利。本系统使用ADS1.2的开发环境,在UP-net3000实验平台实现其具体功能。嵌入式系统具有便利灵活、性能价格比高、嵌入性强等特点,可以嵌入到现有任何信息家电和工业控制系统中。从软件角度来看,嵌入式系统具有不可修改性、系统所需配置要求较低、系统专业性和实时性较强等特点。很显然本计算器也有如上的几个重要特点。 本系统的界面由图形来设计的,是一个基于触摸屏的电子计算器,不仅能实现计算器的简单的加法、减法、除法、乘法、平方法,还能通过触摸屏以及键盘的输入对计算器进行控制。 根据基本的功能可以分为三个重要模块:核心计算模块,输入模块,输出模块。 输入模块可以分为两种类型,小键盘输入和触摸屏输入信息(包括符号和数字)。核心计算模块主要负责对输进来的数字的计算,根据小键盘和触摸屏上的符号获得值,再根据这个参数值不同做相应的处理,最终可以实现所述的基本计算功能。输出模块主要由LED数码管和触摸屏LCD来输出结果。不管选择输入模块哪一个方式,在输出模块的两个主要显示方式都会运行,也就是说不仅能在屏幕上显示结果,也能通过LED数码管来显示其结果。 3. 系统设计 一、系统核心算法 本系统是支持小键盘,LED和触摸屏的简单计算器,我做的是小键盘和LED显示的模块。不管是什么模块都要用到核心计算算法,算法的思想为如下: (1)写数字函数。设置一个m_second的参数,每当按下按键或触摸某个数字时会用一个m_second的参数来存值,值到出现符号键为止他会反复做m_second = m_second*10 + 数字这个操作,最后的结果也当然存到m_second这个参数里。 (2) 写小数点运算函数:跟数字函数类同,不一样的是多了个小数点运算。用m_coff参数来设定小数点参数。也就是说当点击“.”或小数点触摸屏的时候做如下操作,直到出现符号键为止反复做m_second = m_second + 数字*m_coff和m_coff *= 0.1等操作。 (3)把(1)(2)功能用if语句来合并。如果想要输入整数型的数字则做(1)操作,若果要输入浮点型的数字则做(2)操作。 (4)写符号函数。设定m_first,m_coff参数,他在一个运算里面始终是加数,相反m_second始终是被加数。每次完成一次运算后默认把最终结果赋值给m_first,这样系统就可以满足有记忆功能的特点。当每次按下符号键或触摸屏上的符号时就会根据不同的符号功能来处理计算:m_first 符号=m_second。加法,减法,乘法,平方法类似。由于除法的特殊性除法要考虑的因素就多了点,如果要被除的数字小于等于0.000001的时候他就显示错误,其余情况正常计算。 (5)本系统默认有记忆功能,也就是说计算完一次运算后他还保留原先的值。设m_first值为0,m_second是被计算的值。每次算完一次运算后最终计算得出来的值存到m_first里,并把m_second和m_coff值复位,分别写成初始值0.0和1.0,这样他们才能改变为要写入的数字。 (6)当把所述的函数写完后为了方便用switch语句来分辨符号,设置一个m_operator参数,他是switch语句里的表达式,常量表达式当然分为“+”,“-”,“*”,“∕”,“s”。根据不同的符号进入case,完成具体的计算。 void Calculate() { switch(m_operator)
有哪些信誉好的足球投注网站
文档评论(0)