计算机原理电梯运行控制程序

上传人:ba****u 文档编号:152738112 上传时间:2022-09-16 格式:DOCX 页数:9 大小:180.26KB
收藏 版权申诉 举报 下载
计算机原理电梯运行控制程序_第1页
第1页 / 共9页
计算机原理电梯运行控制程序_第2页
第2页 / 共9页
计算机原理电梯运行控制程序_第3页
第3页 / 共9页
资源描述:

《计算机原理电梯运行控制程序》由会员分享,可在线阅读,更多相关《计算机原理电梯运行控制程序(9页珍藏版)》请在装配图网上搜索。

1、电梯运行控制1、2、3、4、5、一、实验任务电梯运行包含加速、匀速、减速三部分。用开关控制目标楼层。用led灯即时当前楼层信息。使用步进电机,8步为一层。自动判断电机运行方向,自动显示楼层。二、实验目的1、综合运用8254、8255、8259芯片,加深对他们控制字设置、端口连线等的理解。2、熟练运用汇编语言各种指令编程。三、实验内容使用8254定时器输出脉冲作为8259中断触发信号,8255A 口连开关读取楼层输入信息, 8255B 连led灯,显示楼层,8255C 连步进电机,通过CPU输出指令控制电机旋转。四、电路图五、程序框图中勰目 IJJASU-1 5TFP1=J45JJ1旋步|J1A

2、N5U 1|1| WEE|s HPS = BAOHU 1姓电aA步六、参考程序.model small.386data segmenti8253_0 equ210hi8253_1 equ211hi8253_kz equ213hio8255_a equ220hio8255_b equ221hio8255_c equ222hio8255kz equ223hzhengdb01h,03h,02h,06h,04h,0ch,08h,09h;正 转代码fandb09h,08h,0ch,04h,06h,02h,03h,01h ;反转代码floor_to db01hfloor_from db01hfloor_p

3、ass db00hfloor_now db01hstep1db00hstep2db00hstep3db00hsavebdw00hdata endscode segmentassume cs:code,ds:datastart: climovax,datamovds,axmoves,ax;8255init-mov dx,io8255kzmoval,90h;设置8255控制字普口输入史口输出outdx,al;8254init-movdx,i8253_kzmoval,36h;0# mode 3outdx,almovax,1000movdx,i8253_0outdx,al;先写入低字节moval,ah

4、outdx,al;后写入高字节50movdx,i8253_kzmoval,76h;设8254通道1工作方式2outdx,almovax,100;写入循环计数初值10,t=100msmovdx,i8253_1outdx,al;先与低字节moval,ahoutdx,al;后与高字节8259init-pushdsmovax,0movds,axleaax,cs:mint_proc;WRITE INTERRUPT PROGRAM EMTRY ADDRESSmovbx,5;n=IRxmovsi,30H;base =30H Masteraddsi,bxaddsi,si;type numaddsi,si;X4

5、movds:si,axpushcspopaxmovds:si+2,axpopdsWRITE8259 MASK WORD-inal,21handal,11011111b;mask byteout21h,alinal, 0a1handal,0fehout0a1h,alzhuchengxucli关中断moval,floor_tomovfloor_from,almovdx,io8255_ainal,dxcmpal,01hjeb1cmpal,02hjeb2;100cmpal,04hjeb3cmpal,08hjeb4cmpal,10hjeb5input:cmpal,20hjeb6cmpal,40hjeb7

6、cmpal,80hjeb8bl:movbl,01hjmpbbbb2:movbl,02hjmpbbbb3:movbl,03hjmpbbbb4:movbl,04hjmpbbbb5:movbl,05hjmpbbbb6:movbl,06hjmpbbbb7:movbl,07hjmpbbbb8:movbl,08hjmpbbb;将开关输入翻译为目的楼层bbb:movfloor_to,bl 目的层moval,floor_from;起始层pushaxpushbxcmpbl,aljeinputjashangsubal,blmovfloor_pass,aljmpcccshang:subbl,almovfloor_p

7、ass,blccc:moval,floor_pass计算经过楼层方攵到al里addal,aladdal,aladdal,al;aM8运彳行步数cmpal,08hjedddmovbl,08hmovstep1,blmovstep3,blsubal,10hmovstep2,aljmpeeeddd:movbl,04hmovstep1,blmovstep3,blmoval,00hmovstep2,al;分别计算加、匀、减速步数:step stepZ step3eee:popbxpopaxcmpbl,aljafffmovsi,offset fan目的层在下写反转代码jmpgggfff:movsi,offs

8、et zhefeg的层在上与正转代码ggg:movcl,step1moval,step3movah,step2movch,step3movbx,0incch写参数sti开中断waitt: mov bl,floor_nowcalldispcmpbl,floor_tojeinputjmpwaitt;-断程序mint_proc proc farstimovbx,savebcmpcl,0jexxjmpjiasu;加速步数不为0,执行加速xx:cmpah,0jejiansu;加速匀速步数均为0,执行减速jmpyunsu加速步数为0,匀速步数不为0,执行匀速jiasu:decclcmpcl,00hjnee

9、xit_intmovdx,io8255_cpushaxmoval,si+bxoutdx,alpopaxincbxcmpbx,08hjnehhhincfloor_nowmovbx,0hhh:movcl,step1decclmovstep1,cljmpexit_intyunsu:decahmovdx,io8255_cpushaxmoval,si+bxoutdx,alpopaxincbxcmpbx,08hjneexit_intincfloor_nowmovbx,0jmpexit_intjiansu: dec chcmpal,chjneexit_intmovdx,io8255_cpushaxmoval

10、,si+bxoutdx,alpopaxincbxcmpbx,08hjneiiiincfloor_nowmovbx,0iii: dec almov ch,step3inc chjmp exit_intexit_int:mov saveb,bx push ax mov al,20h out 20h,al pop ax iret mint_proc endp;dia子程序disp proc push bx push ax push dxcmp bl,01h je a1 cmp bl,02h je a2 cmp bl,03h je a3 cmp bl,04h je a4 cmp bl,05h je a

11、5 cmp bl,06h je a6 cmp bl,07h je a7 cmp bl,08h je a8a1:mov al,01hjmp jjja2:moval,02hjmp jjja3:moval,04hjmp jjja4:moval,08hjmp jjja5:moval,10hjmpjjja6:moval,20hjmpjjja7:moval,40hjmpjjja8:moval,80hjmpjjjjjj:movdx,io8255_boutdx,alpopdxpopaxpopretbxdispendpcodeendsendstart七、出现的问题1、8259中断屏蔽字没弄明白,在没有从中断的情

12、况下吧ir2D开放了,导致干扰 信号经常打断当前执行的程序。2、加速减速延时方面,一开始思路不清晰导致循环错乱,无法实现既定功能。3、使用loop循环,无意中改变cx寄存器中的数值,导致原本cx中数据遭到篡改。4、各种小的汇编错误,比如使用了中文标点、没有指明变量长度等。八、解决的方法1、更改8259屏蔽字,将11011011改为11011111,关闭ir2D。2、写延时程序前,先理清大致思路,先把框图画出来,然后照着框图写程序,这样可 以大大减少错误几率。3、将loop循环改为cmp判断语句,jmp跳转,这样可以避免一些寄存器暗中被篡改。4、编译时修改。九、总结及体会经过试验学习和对大作业的编写,我对汇编语言的认识有了很大的提高。汇编语言跟我 们以前学过的语言都不一样,它能实现软件和硬件综合编程,这是以前学过的语言不曾具有 的。由于汇编语言比高级语言更接近计算机的本质,所以用汇编语言编程更加考验我们的逻 辑思维能力,尤其是循环嵌套跳转等方面,如果出现一个小错误最后结果会大相径庭,这更 考验我们的细心。在这门课的学习后,我对汇编语言有了初步的了解,收获很大。

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!