单片机综合设计训练报告
学院:机械与电子工程学院
专业:05电气工程及其自动化
姓名:高强
学号:0
指导老师:张自强王爱华
日期:2008年7月2日
实验一生产流水线产品产量统计显示系统
一、实验条件:
1.1.提供EAT598仿真机。
1.2.提供脉冲输入消抖电路。
二、实验内容:
用单片机构成一个生产流水线产品产量统计显示系统。
2.1.系统功能:
a.用八位数码管动态显示班产件数(设班产量不超过件)。
b.设置一个计数开关,当某班开始生产时,将该开关置于高电平,系统开始统计,并动
态显示班产量。当将开关置于低电平时,则停止计数,显示值重新清零,班产量储入指定存储单元备用。
c.通过按按钮产生脉冲,模拟生产流水线上生产出一台产品,每按一次按钮,数码管实
现累进显示。
2.2.具体要求:
a.采用EAT598仿真机为硬件主体,设每一产品经过流水线终端时,由光电检测装置
产生一个脉冲,现通过按按钮模拟产生脉冲,经消抖电路输入单片机,可用定时器/计数器计数,也可由并行口计数。计数结果以十进制形式存放于片内RAM67H(高位)、68H及69H(低位)单元。并用仿真机上的8279芯片和8个数码管中的右边六个数码管实现累进显示。
b.计数开关接P1.0引脚,当该开关接高电平时(开机时置低电平),开始计数,当该开
关由高电平变低电平时,停止计数,并将已计数据送片内RAM49H(高位)、50H及51H(低位)单元保存,要求用压缩BCD码数记录,同时六位数码管又复零,为下一班生产重新计数作好准备。
三、实验程序
ORG0000H
LJMPSTART
START:
MOV SP,#2FH
LCALL P8279
MOV67H,#00H
MOV 68H,#00H ;计数器先清零
MOV 69H,#00H
LOOP0: LCALL DISP ;调显示子程序
JNB P1.0,$ ;判计数开关是否接高电平
LOOP: LCALL DISP ;再调显示子程序
JNB P1.0,NEXT ;判计数开关是否恢复为低电平
WAIT: LCALL GETKEY ;判有否按键
CJNE A,#0FFH,WAIT;无键,等待
MOV A,69H ;有键,计数器加1
ADDA,#01H
DAA
MOV69H,A
MOVA,68H
ADDCA,#00H
DAA
MOV68H,A
MOVA,67H
ADDCA,#00H
DAA
MOV67H,A
SJMP LOOP ;循环
NEXT:
MOV49H,67H
MOV 50H,68H
MOV 51H,69H
LCALL P8279
MOV67H,#00H
MOV 68H,#00H ;计数器先清零
MOV 69H,#00H
SJMP LOOP0;返LOOP0,重新开始
P8279: ;8279初始化子程序
PUSH DPH ;保护现场
PUSH DPL
PUSH ACC
MOV DPTR,#0F239H
MOV A,#00H ;置8279工作方式(8个字符显示,左入口;
;编码扫描键盘,双键锁定)
MOVX @DPTR,A
MOV A,#2FH ;置键盘扫描速率
MOVX @DPTR,A
MOV A,#0C1H ;清除LED显示
MOVX @DPTR,A
POP ACC ;恢复现场
POPDPL
POPDPH
到此这篇单片机设计课程(单片机课程设计模板内容)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/hd-api/21221.html