1、-1-昆明理工大学信息工程与自动化学院学生实验报告( 2011 2012 学年 第 1 学期 )课程名称:汇编与微机接口 开课实验室:信自楼机房 445 2011 年 12月 13 日年级、专业、班计科 093 学号 200910405310姓名 孙浩川 成绩实验项目名称 实验五:输入输出程序设计 指导教师 袁梅宇教师评语该同学是否了解实验原理: A.了解 B.基本了解 C.不了解该同学的实验能力: A.强 B.中等 C.差 该同学的实验是否达到要求: A.达到 B.基本达到 C.未达到实验报告是否规范: A.规范 B.基本规范 C.不规范实验过程是否详细记录: A.详细 B.一般 C.没有
2、教师签名:年 月 日1、上机目的及内容1) 掌握输入输出指令的使用;2) 上网查 3相步进电机的工作原理;3) 用 emu8086工具运行步进电机程序;4) 对步进电机程序进行改进,精确控制其转速;5) 观察并记录运行结果。二、实验原理及基本技术路线图(方框原理图或程序流程图)-2-三、所用仪器、材料(设备名称、型号、规格等或使用软件)1 台 PC 及 masm5.0四、实验方法、步骤(或:程序代码或操作过程); this is an example of out instruction.; it writes values to virtual i/o port; that controls
3、 the stepper-motor.; c:emu8086devicesstepper_motor.exe is on port 7#start=stepper_motor.exe#name “stepper“#make_bin#steps_before_direction_change = 20h ; 32 (decimal)jmp start; = data =; bin data for clock-wise; half-step rotation:datcw db 0000_0110bdb 0000_0100b db 0000_0011bdb 0000_0010b; bin data
4、 for counter-clock-wise; half-step rotation:datccw db 0000_0011bdb 0000_0001b db 0000_0110bdb 0000_0010b; bin data for clock-wise; full-step rotation:datcw_fs db 0000_0001bdb 0000_0011b db 0000_0110bdb 0000_0000b-3-; bin data for counter-clock-wise; full-step rotation:datccw_fs db 0000_0100bdb 0000_
5、0110b db 0000_0011bdb 0000_0000bstart:mov bx, offset datcw ; start from clock-wise half-step.mov si, 0mov cx, 0 ; step counternext_step:; motor sets top bit when its ready to accept new commandwait: in al, 7 test al, 10000000bjz waitmov al, bxsiout 7, alinc sicmp si, 4jb next_stepmov si, 0inc cxcmp
6、cx, steps_before_direction_changejb next_stepmov cx, 0add bx, 4 ; next bin datacmp bx, offset datccw_fsjbe next_stepmov bx, offset datcw ; return to clock-wise half-step.jmp next_step-4-五、实验过程原始记录( 测试数据、图表、计算等)1.从 7号端口读取数据到 AL2.测试电机是否准备好-5-3.如果没准备好就跳回第一步,继续从 7号端口读取数据4.状态初始化-6-5.把 AL输出给 7号端口,电机准备好6.A
7、L被置为 6,即 2号、1 号通电,电机向右旋转一下。同时,计数器 SI加 1-7-7.比较 SI是否等于 4-8-8.若 SI小于 4则跳回 next_step9.此时 SI=1,跳转到 next_step,并说明此时电机已经准备好10.判断此时电机已经准备好,继续循环-9-6、实验结果、分析和结论(误差分析与数据处理、成果总结等。其中,绘制曲线图时必须用计算纸或程序运行结果、改进、收获)通过这次的上机实验,了解了汇编语言 emu8006模拟器的使用方法,以及三项模拟电机程序的原理。而且在这次实验中我也更加深刻的体会到了理论与实践的比一致性,有时候我们是懂得了理论知识,但是在具体的运用之中,我们会发现很难实施,这就是理论和实践有时候的不一致性吧,但是只要我们多进行实践操作,这样很有利于我们以后的学习,提高我们的实际操作能力。注:教师必须按照上述各项内容严格要求,认真批改和评定学生成绩。