基于单片机的倒计时钟的设计内容摘要:
显示的控制。 显示子程序流程图如图 13所示。 执行主程序 执行一条指令 定时器 0 有中断请求 取 下一条指令 保护现场和断点 定时器 0 中断服务程序 恢复现场 返回 否 是 14 图 13 显示子程序流程图 键盘扫描 子程序 流程图 在本设计中由 8255 的 PC口控制 4*4键盘,其中 PC口低四位控制行,PC口高四位控制列。 通过逐行扫描给各行的各个键赋键值并判断那个键按下。 键盘扫描子程序流程图如图 14所示。 定义字型码 给 8255 PB 口赋段选值 给 8255 PA口赋位选值 调用延时子程序 在相应的位显示值 给 PA 口 PB 口赋不同的值 循环 6 次 开始 子程序返回 15 图 14 键盘扫描子程序流程图 4 系统调试 整体电路仿真以 及仿真结果分析 系统仿真用的是 Protues 软件,可通过仿真显示出所设计系统的功能,对于程序的调试等有很大的帮助。 系统仿真时如果使用 C 语言编程或 C 语言与汇编语言联合编程,一般使用Keil C 译码器,把所写的程序进行编译,同时在仿真器里设置生成 HEX 文件,编译无错进行 Protues 仿真。 等所有的元件都连接完成后可以把 Keil C 生成的无错误文件编译加载到 AT89C51 中,然后点击运行。 开始 PC0 口置 0 PC口高四位为全 1。 PC1 口置 0 PC口高四位为全 1。 PC2 口 置 0 PC口高四位为全 1。 PC3 口置 0 PC口高四位为全 1。 子程序返回 读入 PC口值 读入 PC口值 读入 PC口值 读入 PC口值 查表对照求出键值 查表对照求出键值 查表对照求出键值 查表对照求出键值 执行键功能 执行键功能 执行键功能 执行键功能 Y N Y N Y N Y N 16 启动 Protues 软件的运行按钮,用矩阵键盘设定倒计时初值。 按下相应的键 6 次,数码管上从左到右依次显示 6个 数字从而设定初值,当按开始键时,数码管上的数值减 1,也就是 1s计时时间到了,如果中间按暂停键则暂停倒计时,当之后第二遍再按暂停键则继续开始倒计时,若按停止键则停止倒计时。 数码管显示 功能的调试 数码管显示功能正常,按运行键时,单片机和 8255 各引脚的高低电平显示正常。 但按键功能有点异常,致使显示无数据。 如图 15所示: 图 14 数码管显示功能调试图 5. 总结 本系统存在的问题及改进措施 存在的问题 本系统存在的主 要问题是软件上的问题,其中键盘扫描电路程序编译运行是正确的,但加载到单片机上无法实现按键在数码管上显示初值的功能。 键盘扫描程序是按逐行扫描进行的,把错误锁定到这一块之后仔细检查也未查出错误。 改进措施 ( 1) 变换编程的思路 本设计现在采用的是逐行扫描,在每一行读入 PC口值,查表对照求出键值。 逆变换思路采用逐行逐列循环扫描实现键盘扫描功能。 ( 2) 分块调试程序定位错误 把程序的各个模块写成单独的程序文件,加载到单片机中,运行看结果,如果这个模块运行的结果正确,则说明这个模块的程序没问题,如果这个模 块运行的结果错误,则说明这块有错,然后主要修改这块的错误。 心得体会 17 ( 1) 在本次课程设计中,我对 AT89C5 8255A、 74LS37 7SEG 系列显示器、按键 矩阵键盘 等都加深了了解,巩固了对它们的使用,对于硬件和软件综合运用有了更深一步理解,为以后的电路分析和设计奠定了一定的基础。 ( 2) 在本次课程设计中,我们将课本理论知识与实际应用联系起来,加深了对课本知识的认识理解,也加深了对电路设计方法和实际电路连接的实践知识。 拿到课程设计题目后,我们按照书本上的知识和老师讲授的方法,首先和同学一起分析研究此次 电路设计任务和要求,然后按照分析的结果进行实际连接操作,检测和校正,再进一步完善电路。 ( 3) 在本次课程设计中,我们普遍感到不仅实际电路设计能力有所提高,更重要的是通过对电路设计的学习和了解,进一步激发了我们对专业知识的兴趣,并能够结合实际存在的问题在专业领域内进行更深入的学习。 参考文献 [1] 郭文川主编 . 单片机原理与接口技术 . 北京:中国农业出版社, 2020. [2] 百度文库 , 20200707. [3] 道客巴巴 , 20200709. 附录 1: 倒计时钟 系统的源程序清单 include include /*******************************宏定义 *******************************/ define uchar unsigned char define uint unsigned int /************************定义 8255 各端口地址 **************************/ define porta XBYTE[0x7F00] define portb XBYTE[0x7F01] define portc XBYTE[0x7F02] define caddr XBYTE[0x7F03] /*******************************接口定义 *****************************/ sbit cs = P2^7。 /***************************定义全局变量 ******************************/ uchar keys[6]。 18 uchar key,temp。 uint i。 uint flag=0。 uchar h,m,s。 uint x=0。 /***************************共阴极字型码 ****************************/ uchar code table[]={0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71}。 /***************************毫秒延时子程序 ******************************/ void delayms(uint i) { uchar j。 while(i) { for(j=0。 j115。 j++)。 } } /***************************显示 子程序 *************************/ void disp() //时间的显示变量时分秒 { portb = table[h/10]。 //数码管显示段选,第一位数字显示时的十位 porta = 0xfe。 //数码管显示位选 delayms(3)。 //延时显示 portb = table[h%10]。 //第二位数字显示时的个位 porta=0xfd。 delayms(3)。 portb = table[m/10]。 //第三位数字显示分的十位 porta=0xfb。 delayms(3)。 portb = table[m%10]。 //第四位数字显示分的个位 porta=0xf7。 delayms(3)。 portb = table[s/10]。 //第五位数字显示秒的十位 porta=0xef。 delayms(3)。 portb = table[s%10]。基于单片机的倒计时钟的设计
相关推荐
出报警声时,时基电路 CC7555 处于暂稳态,此时电源向电容充电,从而使 CC7555 结束暂稳态回复到稳定状态,输出低电平,使扬声器停止发出报警声,直到下一次测距结束产生新的报警声。 LED 显示电路由数码管和驱动电路组成。 用两个数码管显示距离,数码管采用静态显示,由芯片 MCS14495 驱动显示, 、 分别作为驱动芯片 MCS14495的锁存 信号,用于控制产生的 BCD(Binary
HZ 范围内,超过 20KHZ 称为 超声波 ,低于 20HZ 的称为 次声波。 常用的超声波频率为几十 KHZ几十 MHZ。 超声波是一种在 弹性介质 中的机械振荡,有两种形式:横向振荡(横波)及纵和振荡(纵波)。 在工业中应用主要采用纵向振荡。 超声波可以在气体、液体 及 固体 中传播,其传播速度不同。 另外,它也有 折射 和 反射 现象,并且在传播过程中有衰减。 在空气中传播超声波
附录 C 外文资料及翻译 ...................................................................................................... 34 东北大学秦皇岛分校毕业设计 (论文 ) 第 1 页 1 绪论 倒车雷达的研究背景及意义 倒车雷达是 一种辅助车主泊车或者倒车的装置,当车主将档位挂入倒档
1在计数溢出的那个周期的 S5P2被置位。 它们的值一直到下一个周期被电路捕捉下来。 然而,定时器 2 的标志位 TF2 在计数溢出的那个周期的S2P2被置位,在同一个周期被电路捕捉下来。 表 16 中断允许控制寄存器( IE) ( MSB) (LSB) EA ET2 ES ET1 EX1 ET0 EX0 M1 M0 工作方式 方式说明 0 0 0 13位定时 /计数器 0 1 1 16位定时
在一定的关系 ,往往知道了前者就能推定后者。 最常用的标准输入信号有阶跃 信号和正弦信号两种 , 所以传感器的动态特性也常用阶跃响应和响应效率来表示。 传感器的线性度 通常情况下 , 传感器的实际静态特性输出是条曲线而非直线。 在实际工作中 , 为使仪表具有均匀刻度的读数 , 常用 一条拟合直线近似地代表实际的特性曲线、线性度 ( 非线性误差 ) 就是这个近似程度的一个性能指标。
水温度的差值很大,认为循环泵故障,报警系统报警。 此部分采用声光报警以便很容易区分哪部分出现问题,便于维修人员及时进行维修。 根据报警铃和灯的不同确定哪部分出现问题。 A1B2Q03Q14Q25Q36Q410Q511Q612Q713CLK8MR9U17 4 A L S 1 6 4A1B2Q03Q14Q25Q36Q410Q511Q612Q713CLK8MR9U27 4 A L S 1 6