《微机原理课程设计》 简易全自动洗衣机设计(2)
5
(1)利用8255A芯片,在数码管上实时显示洗衣机档位和洗衣时间倒计时;(2)利用8254芯片,设置精确倒计时时间或者发送信号给蜂鸣器;(3)利用8259A芯片,设置按键或开关中断控制功能;(4)利用0809芯片,模拟水位传感器采集一个电压信号,控制电机旋转。 附上详细的程序
数据,OE=1,输出转换得到的数据 OE=0输出数据线呈高阻状态。D7-D0为数字量输出线CLK
为时钟输入信号线,因ADC0809的内部没有时钟电路,所需时钟信号必须由外界提供,通常频率为500KHZ。VREF(+),VREF(-)为参考电压输入。 4.2 功能模块设计
图4 硬件功能图
图4硬件功能图中,系统总体功能模块在具体实践中,因硬件资源的限制有所调整,比如有些电路采用其他电路来模拟,进水部分有电位器来模拟,电机驱动用直流系统来模拟。
其接线图如图5所示:
(1)利用8255A芯片,在数码管上实时显示洗衣机档位和洗衣时间倒计时;(2)利用8254芯片,设置精确倒计时时间或者发送信号给蜂鸣器;(3)利用8259A芯片,设置按键或开关中断控制功能;(4)利用0809芯片,模拟水位传感器采集一个电压信号,控制电机旋转。 附上详细的程序
图5 系统接线图
4.3 遇到问题及解决措施
问题1: 当把所有线路按照设计要求连接好过后,发现芯片8254没有输出时钟信号。
解决方法:芯片8254没有输出时钟信号,这表示8254没有起作用,原以为是芯片坏了,换了好几个新品牌还是一样不起作用,后来经过不断排查是由于采用了12V供电电压,实际要求是5V。
问题2:当把所有的线路按照设计要求连接好之后,发现电机不能运转。 解决方法:经检查是连接到电机驱动电路上的接线出现断路,换根接线就把问题解决了
(1)利用8255A芯片,在数码管上实时显示洗衣机档位和洗衣时间倒计时;(2)利用8254芯片,设置精确倒计时时间或者发送信号给蜂鸣器;(3)利用8259A芯片,设置按键或开关中断控制功能;(4)利用0809芯片,模拟水位传感器采集一个电压信号,控制电机旋转。 附上详细的程序
五、系统软件设计
5.1 总体设计思想
程序首先要用伪指令定义一下。然后是8255、8254与8259的初始化,如: MOV DX,CADDR ;8255初始化 MOV AL,MODE OUT DX,AL
MOV DX,MY8254_MODE ;初始化8254工作方式 MOV AL,36H ;计数器0,方式3 OUT DX,AL
MOV DX,MY8259_ICW1 ;初始化实验系统中8259的ICW1 MOV AL,1BH ;边沿触发、单片8259、需要ICW4 OUT DX,AL
MOV DX,MY8259_ICW2 ;初始化实验系统中8259的ICW2 MOV AL,08H OUT DX,AL
MOV DX,MY8259_ICW4 ;初始化实验系统中8259的ICW4 MOV AL,01H ;非自动结束EOI OUT DX,AL
MOV DX,MY8259_OCW1 ;初始化实验系统中8259的OCW1 MOV AL,0FCH ;打开IR0和IR1的屏蔽位 OUT DX,AL
然后按照原先设计好的原理框图的步骤设计检测洗衣机开/停信号,如; CHECK: MOV DX,PORTB IN AL,DX TEST AL,80H JZ CHECK
还有接下来的点亮运行指示灯等程序。在设计中用到了子程序调用、循环、测试等程序。
在编程时按照设计好的原理框图,结合微机课程上所学的具有一定功能的程
(1)利用8255A芯片,在数码管上实时显示洗衣机档位和洗衣时间倒计时;(2)利用8254芯片,设置精确倒计时时间或者发送信号给蜂鸣器;(3)利用8259A芯片,设置按键或开关中断控制功能;(4)利用0809芯片,模拟水位传感器采集一个电压信号,控制电机旋转。 附上详细的程序
序一一编出来,然后在计算机上进行调试,发现错误后再进行修改。在编程过程中要注意程序的嵌套使用,即有些程序按照前面流程图设计好了但在后面的程序中然要用,所以就要注意调用。
软件可分为10个模块:主程序、键盘扫描子程序、参数设置子程序、延时子程序、显示子程序、自检程序、甩干子程序、暂停子程序、蜂鸣器子程序。
系统的总体流程图如图6所示:
图6 整体流程方框图
(1)利用8255A芯片,在数码管上实时显示洗衣机档位和洗衣时间倒计时;(2)利用8254芯片,设置精确倒计时时间或者发送信号给蜂鸣器;(3)利用8259A芯片,设置按键或开关中断控制功能;(4)利用0809芯片,模拟水位传感器采集一个电压信号,控制电机旋转。 附上详细的程序
5.2 功能模块设计 (1)延时功能模块设计
根据机箱上给出的芯片我们选用了8254作为定时计数器,在延时程序中计时,在加水过程中计量加水的量。 由于需要多次调用延时子程序,所以把他写成一个DALLY程序,每次调用的时候配合CALL和RET就能往返于子程序和主程序之间,之前把要记的数值放在SI寄存器中,在子程序中读取该寄存器就可以知道要记的数是多少而不必每次都重新给计数器赋值,减少了程序的步骤也使得更易读。
(2)洗衣功能模块设计
洗衣子程序中是一个不停的在正传反转间循环的过程,期间每次正转或者反转都调用了延时子程序,定时3S,在完成5次循环过后,洗衣过程完成。 (3)脱水功能模块设计
脱水子程序中只需调用上面做好的延时程序,并在该延时之前打开或关闭相应的指示灯即可。然后用8086的片选信号加给0832控制电动机正转反转,根据公式 : V0= -NVREF/256计算得到要使电动机保持不转的时候要输入给80H,而正转则取最大值FFH,反转取最小值00H,由于这样得到的V0不相同,所以引起了正传反转时候的速度有些差异,最后等延时子程序执行完毕后,关闭相应指示灯即可完成。脱水、延时、加水等子程序后面都要加上RET,否则将无法跳回主程序MAIN。当时在前几次通电试验的时候每次都出现在排水的时候加水指示灯亮起,需要加水后才能熄灭,后检查发现就是少了一个RET导致的,执行完排水程序后没返回而是接下去执行了加水程序。 (4)甩干、报警功能模块设计
甩干子程序是一个不停的在正转的过程,甩干可以分为快甩和慢甩两种档位,甩干子程序还可以通过按键直接跳过洗衣进行调用。当甩干程序运行结束后,8254会产生一个时钟信号给蜂鸣器从而让蜂鸣器报警,表示洗衣过程结束。 (5)加水子程序设计
加水是这个总程序中很重要的部分,特别是如何将水位信号读取和比较,最终还要输出到8253进行计数。首先打开加水指示灯,将水位信号扫描到寄存器AL中。然后根据与设定好的数据进行比较确定水位信号是什么,假如检测到的
(1)利用8255A芯片,在数码管上实时显示洗衣机档位和洗衣时间倒计时;(2)利用8254芯片,设置精确倒计时时间或者发送信号给蜂鸣器;(3)利用8259A芯片,设置按键或开关中断控制功能;(4)利用0809芯片,模拟水位传感器采集一个电压信号,控制电机旋转。 附上详细的程序
是高水位的话,跳转到LEVEL,否则给AL置为3,高水位的时候将控制字写给计数器0,继续执行下去直到给BL加上1,当加到与原来保存的水位信号数值相等的时候,由PC7口将信号传递给8253,告之加水计数程序完成,跳出加水程序,然后关闭加水指示灯,执行下面的程序。 5.3 遇到问题及解决措施
问题1.通过中断实现数码管计时显示与步进电机延时相互冲突,导致步进电机不能正常运转。
解决方法:经过很长时间调试,还是不能成功,由于时间有限,所以最后只好 …… 此处隐藏:3021字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [资格考试]石油钻采专业设备项目可行性研究报告编
- [资格考试]2012-2013学年度第二学期麻风病防治知
- [资格考试]道路勘测设计 绪论
- [资格考试]控烟戒烟知识培训资料
- [资格考试]建设工程安全生产管理(三类人员安全员
- [资格考试]photoshop制作茶叶包装盒步骤平面效果
- [资格考试]授课进度计划表封面(09-10下施工)
- [资格考试]麦肯锡卓越工作方法读后感
- [资格考试]2007年广西区农村信用社招聘考试试题
- [资格考试]软件实施工程师笔试题
- [资格考试]2014年初三数学复习专练第一章 数与式(
- [资格考试]中国糯玉米汁饮料市场发展概况及投资战
- [资格考试]塑钢门窗安装((专项方案)15)
- [资格考试]初中数学答题卡模板2
- [资格考试]2015-2020年中国效率手册行业市场调查
- [资格考试]华北电力大学学习实践活动领导小组办公
- [资格考试]溃疡性结肠炎研究的新进展
- [资格考试]人教版高中语文1—5册(必修)背诵篇目名
- [资格考试]ISO9001-2018质量管理体系最新版标准
- [资格考试]论文之希尔顿酒店集团进入中国的战略研
- 全国中小学生转学申请表
- 《奇迹暖暖》17-支2文学少女小满(9)公
- 2019-2020学年八年级地理下册 第六章
- 2005年高考试题——英语(天津卷)
- 无纺布耐磨测试方法及标准
- 建筑工程施工劳动力安排计划
- (目录)中国中央空调行业市场深度调研分
- 中国期货价格期限结构模型实证分析
- AutoCAD 2016基础教程第2章 AutoCAD基
- 2014-2015学年西城初三期末数学试题及
- 机械加工工艺基础(完整版)
- 归因理论在管理中的应用[1]0
- 突破瓶颈 实现医院可持续发展
- 2014年南京师范大学商学院决策学招生目
- 现浇箱梁支架预压报告
- Excel_2010函数图表入门与实战
- 人教版新课标初中数学 13.1 轴对称 (
- Visual Basic 6.0程序设计教程电子教案
- 2010北京助理工程师考试复习《建筑施工
- 国外5大医疗互联网模式分析




