数码管随机模拟显示乘法口诀实验报告_第1页
数码管随机模拟显示乘法口诀实验报告_第2页
数码管随机模拟显示乘法口诀实验报告_第3页
数码管随机模拟显示乘法口诀实验报告_第4页
数码管随机模拟显示乘法口诀实验报告_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、宁 波 工 程 学 院设计与讨论课程设计报告课 题 题 目: 数码管随机模拟显示乘法口诀 学 院 名 称: 电子与信息工程学院 专 业: 学生 姓名: 指 导 教 师: 目录第一章 技术指标1.1整体功能要求1.2系统结构要求1.3设计条件第二章 整体方案设计1. 整体方框图及原理第三章 单元电路设计3.1数码管显示及其扫描程序3.2数码管显示的生成3.3主程序3.4 随机产生被乘数与乘数,并得到乘积3.5 整体电路图第四章 测试与调整第五章 设计小结5.1 设计任务完成情况5.2 问题及改进5.3心得体会附录at89c51七段显示数码管74ls245参考文献第一章 技术指标1. 整体功能要求

2、(1) 每次按下一次k1键时会模拟显示一道乘法口诀,第1,3位数码管显示被乘数与乘数,第4位数码管显示等号,第5,6位数码管显示乘积.(2) 在模拟口诀时先显示被乘数与乘数,在接下来的偶数次按键下闪烁显示结果,在结果闪烁显示时,被乘数与乘数保持静态显示,再次按键时继续这一过程。系统结构与要求按键输入控制的方波输出装置结构要求如图所示。按键扫描单片机(产生随机被乘数与乘数)按键次数奇偶判断数码管显示数码管随机模拟显示乘法口诀整体方案结构方框图2. 设计条件软件要求:uvision,protuse仿真软件具体的器件模块: 态扫描数码管模块 单片机控制模块 数码管显示模块 驱动模块元器件列表 如表1

3、元器件名数量at89c511按键2排阻1数码管(六位)1普通电容(22pf)274ls2451有向电容(10uf)1rx81电阻(10k)1 表1第二章 整体方案设计1.整体方框图及原理:如图2-1原理框图开始判断是否有键按下动态扫描数码管tmp=0tmp=tmp+1判断按键次数即判断tmp是否为偶数显示六位数码管上数字显示前四位数码管数字产生随机数值并进行相关运算图2-1原理框图原理:通过动态扫描数码管同时设置按键次数标志位,判断按键次数是否为偶数,如果是奇数,随机产生两个数值,进行乘法运算,显示四位数码管数值;如果是偶数,显示六位数码管数值。 第三章 单元电路设计3.1 数码管显示及其扫描

4、程序,按键图3-1。图3-1按键扫描显示程序:动态扫描数码管 uchar dsy_index=0xfe; /动态扫描数码管的索引 for (k=0;k6;k+) p3=dsy_index;/dsy_index赋值给p3口 p0=dsy_code m_abck ;/将被乘数与乘数,乘积,从p0口输出 dsy_index=_crol_(dsy_index,1);/dsy_index的值向左循环移位1位 delayms(1); 3.2数码管显示的生成,如图3-2:图3-3结果的生成程序:/乘积(在4,5两位中显示)m_abc4=m_abc0*m_abc2/10;m_abc5=m_abc0*m_abc

5、2%10;/当乘积的十位数(即数组中的第4位)为0时不显示if (m_abc4=0) m_abc4=10;3.3 主程序:void main()p0=0x00;p3=0xff;srand(56); /设置随机种子while(1)if(k1=0) tmp=tmp+1;delayms(10);while (k1=0); /等待k1键释放 if(tmp%2=1)get_random_num_a_b();if(k2=0) tmp=tmp+1;delayms(10);while (k2=0); if(tmp%2=1)get_random_mul_a_b();display_abc(); /显示三个数3.

6、4 随机产生被乘数与乘数,并得到乘积:/-/得到随机数,随机产生被乘数与乘数,并得到乘积/-void get_random_num_a_b() /随机生成被乘数,乘数m_abc0=rand()%9+1; m_abc2=rand()%9+1;/乘积(在4,5两位中显示)m_abc4=m_abc0*m_abc2/10;m_abc5=m_abc0*m_abc2%10;/当乘积的十位数(即数组中的第4位)为0时不显示if (m_abc4=0) m_abc4=10;3.5 整体电路图,如图3-4图3-4 第四章 测试与调整1:通过按一下按钮钮得到两个相乘的数,再按一下得到乘法口诀,看与事实是否相符,测试

7、1组。第一组:如图4-1图4-1所得结果如表4-1:乘数乘数结果236表4-1达到实验设计目的,并且得到合格的实验结果第五章 设计小结5.1 设计任务完成情况通过课程设计,顺利地完成了本次设计的技术指标,本设计主要模块如下:动态扫描数码管模块;单片机控制模块;数码管显示模块;驱动模块。按键的输入直接影响着随机函数生成被乘数与乘数,同时按键次数影响着显示数码管的状态。 5.2 问题及改进在设计实验时,存在问题:本实验随机数产生的都是个位数,限于数码管显示缺陷,无法显示乘号 ;起始没有在奇数次显示被乘数与乘数,在偶数次显示全部数码管的功能,解决方法是添加按键奇偶标志位,通过判断标志位来决定数码管的

8、显示5.3心得体会通过本次课程设计与实际操作,在确立目的的前提下设计相关单片机控制电路,是我们必须掌握的能力。同时在使用部分芯片,我们得查阅相关资料,通过自学芯片的原理并且使用,了解更多在课本上没有的知识。确定使用的元器件之后,布局的调整也是必不可少的。尤其在布线的时候,容易引起一系列问题,这时候锻炼我们的布线布局能力。还有在设计电路原理图之后,我们得设计编写相关程序,测试和调试,在仿真软件操作,同时在遇到问题之后,对问题解决的能力。虽然在短暂的学习中,但是学到的知识与能力不仅仅只是本实验中应用到的,还有更多程序实验的设计。附录at89c51简要说明:at89c51是一块单片机,在硅片上集成了

9、各种部件的微型计算机。这些部件包括中央处理器cpu,数据存储器ram,程序存储器rom,定时器/计数器和多种i/o接口电路。七段显示数码管简要说明:能显示六位的共阴数码管74ls245dir是h时,ab74ls245是我们常用的芯片,用来驱动led或者其他的设备,它是8路同相三态双向总线收发器,可双向传输数据。74ls245还具有双向三态功能,既可以输出,也可以输入数据。当8051单片机的p0口总线负载达到或超过p0最大负载能力时,必须接入74ls245等总线驱动器。当片选端/ce低电平有效时,dir=“0”,信号由 b 向 a 传输;(接收) dir=“1”,信号由 a 向 b 传输;(发送)当ce为高电平时,a、b均为高阻态。由于p2口始终输出地址的高8位,接口时74ls245的三态控制端1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论