转速表课程设计报告(共18页).doc

上传人:飞****2 文档编号:5398087 上传时间:2022-01-06 格式:DOC 页数:18 大小:320KB
返回 下载 相关 举报
转速表课程设计报告(共18页).doc_第1页
第1页 / 共18页
转速表课程设计报告(共18页).doc_第2页
第2页 / 共18页
点击查看更多>>
资源描述

《转速表课程设计报告(共18页).doc》由会员分享,可在线阅读,更多相关《转速表课程设计报告(共18页).doc(18页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、精选优质文档-倾情为你奉上目 录一、设计要求2二、设计目的2三、设计的具体实现 21.系统概述22硬件电路的设计53.软件程序的设计 6四、结论与展望10五、心得体会及建议11六、附录12七、参考文献 12转速表设计报告一、设计要求: 用PC的软硬件资源设计转速表,正确测量电动机的转速并显示。 具体要求:1.用数码管显示转速;2.转速显示范围自行确定;3.用一个拨动开关控制转速表的启动和停止;4.转速表的采样周期自行确定;二、设计目的运用微机原理及应用等课程知识,根据题目要求进行软硬件系统的设计和调试,从而加深对课程知识的理解,使学生综合应用知识能力,设计能力,调试能力,及撰写报告能力得到显著

2、提高。理解传感器测速原理及实现过程,掌握8253可编程定时/计数功能,8255可编程并行接口芯片的工作方式及实现过程,8259可编程中断控制器的实现的过程和数码管动态显示的的实现。三、设计的具体实现1.设计思路与总体方案系统概述 本系统首先用传感器将转速转化为脉冲电信号,再通过8253,8259进行定时,确定采样周期为1S,同时8253的另一个通道进行计数,最后通过8255控制数码管以动态显示的方式将结果显示出来。1) 设计思路(1)在被测电机主轴上固定一个圆盘,圆盘的边缘上打上小孔,红外传感器的发射端和接收端装在圆盘的两侧,电机带动圆盘转到有小孔的位置是,红外光通过,这样电动机每转动一周传感

3、器就会发出一个脉冲信号,从而将转速转化为电信号。同时通过调动电位器的来改变电动机的转速。(2)将8253的计数器0用作定时,设为工作方式0,并将其CLK端与1M时钟相连,初值设为50000,定时时间为50ms。并将定时器OUT端与8259中断请求端相连,这样每50ms 8253就向8259发出一次中断请求,因此通过对中断次数的计数来实现1S定时。(3)8253的计数器1用作计数,将传感器输出的脉冲信号与计数器1的CLK端相连。定时时间1S到时从计数器1中读取计数值,即得到转速。(4)采用一片8255控制数码管的动态显示,其中PA接数码管的段控制端,PC口接数码管的位控制端,PB设为输入拨动开关

4、,这样设8255工作方式0,PA、PC口为输出,PB口为输入。2) 总体方案首先用传感器将转速转化为脉冲电信号,再通过8253,8259进行定时,确定采样周期为1S,同时8253的另一个通道进行计数,最后通过8255控制四个数码管以动态显示的方式将结果显示出来显示范围确定为099999r/min。并通过开关控制启动和停止。3) 原理框图 图1.中断服务程序图2.主程序1. 硬件电路的设计1) 电路图图3.电路设计图电路图连接方式如上图所示,电位器控制电机的转速,传感器输出的脉冲电信号接计数器1的CLK1端,计数器0的0UT端接8259的IR0端,通过8253,8259进行定时,确定采样周期为1

5、S,同时8253为一个通道进行计数,最后通过8255控制数码管以动态显示的方式将结果显示出来。8255的PA接数码管的段控制端,PC口接数码管的位控制端,PB设为输入拨动开关,其中拨动开关S0控制PB输入,输入高电平时数码管开始工作,低电平时数码管停止工作。在数码管显示电路中,由于发光二级管发光时,通过的平均电流为1020mA,而通常输出锁存器不能提供这么大电流,所以LED各段必须接驱动电路如上图所示。3软件程序设计1)8253的初始化及定时的实现图4.8253的控制字计数通道0工作方式3,初始值5000,接1M脉冲产生50ms的定时脉冲程序为MOV AL, 36H MOV DX, CONTR

6、OL OUT DX, AL MOV AL, 50H MOV DX, COUNT0 OUT DX, AL MOV AL, 0C3H OUT DX,AL 计数通道1作为计数通道,为工作方式2,初始值为最大值0FFFFH ,其程序为: MOV AL, 74H MOV DX, CONTROL OUT DX, AL MOV AL, 0FFH MOV DX, COUNT1 OUT DX, AL MOV AL, 0FFH OUT DX,AL 读取8253的计数器1的计数值,先所存后读写,由于计时器为减,所以需要最大值减去当前计数值得到每秒计数值,再通过计算得到每分的转速其程序为: MOV AL, B MOV

7、 DX, CONTROL OUT DX,AL ;对8253的计数通道1的数据锁存 MOV DX, COUNT1 IN AL, DX ;先读低8位再读高位 MOV BL, AL IN AL, DX MOV AH, AL MOV AL, BL ;至此已将读出通道1的数据到AX中 MOV DI, 0FFFFH SUB DI, AX MOV DX, PA8255 MOV AL, DI OUT DX, AL ;将8253所记录的转数读到DX中 MOV BL, 3CH MUL BL ;乘以60,把每秒的转数转成每分钟的转数 MOV DI, AX 2)8259的初始化 8259的ICW1设置为边沿触发,单片

8、,需要ICW4,ICW2设定中断源为IR0;OCW1设定为只有IR0中断请求允许 MOV DX, CS8259A MOV AL, ICW1 OUT DX, AL MOV DX, CS8259B MOV AL, ICW2 OUT DX, AL MOV AL, ICW4 OUT DX, AL MOV AL, OCW1 OUT DX, AL 设置中断向量 CLI ;IF=0,关闭中断 MOV AX, 0 MOV DS, AX MOV BX, 4*ICW2 MOV AX, CODE SHL AX, 4 ;AX左移四位 ADD AX, OFFSET IENTER ;取IENTER的偏移量与AX相加 MO

9、V BX, AX MOV AX, 0 INC BX INC BX MOV BX, AX ;设置中断矢量 利用8259中断次数定时1S,即利用8253每50mS给出一个中断请求,8259通过计20次中断来实现1S的定时 IENTER PROC NEAR PUSH AX PUSH DX INC CNT CMP CNT, 14H JZ A4 ;中断20次结束中断,将转数转成每秒的转数A5: MOV DX, CS8259A MOV AL, 20H ;将中断类型号送入AL中开始中断 OUT DX, AL POP DX POP AX IRET ;中断返回A4: MOV CL, 11H CALL JISUA

10、N ;调用JISUAN JMP A5 IENTER ENDP ;8259,定时1秒 3)8255的控制字图5.8255的控制字开关S0的设计S0为1时开始工作显示转速,S0为0时退出程序; NOP ;空操作命令 MOV CL, 0 MOV DX, PB8255 MOV AL, 0 IN AL, DX ;8255B端口数据读入AL中 AND AL, B CMP AL, B JNZ EXIT ;开关0控制,S0=1,则开始工作 CALL LED ;调用LED显示程序,显示转速 JMP START ;无条件跳转到A1EXIT: MOV AH, 4CH INT 21H ;S0=0,退出程序4) 转速的

11、显示 将要显示的十六进制的数转化为十进制,并存入TEMP中其程序为:PRINT PROC NEAR ;将显示值转化为十进制并保存PUSH CX MOV DX, 0 MOV AX, DI MOV CX, 1000 DIV CX ;商在AX余数在DX MOV SI, AL INC SI MOV AX, DX MOV DX, 0 MOV CX, 100 DIV CX ;商在AX余数在DX MOV SI, AL INC SI MOV AX, DX MOV CL, 10 DIV CL ;商在AL余数在AH MOV SI, AL INC SI MOV SI,AH ;至此ZHUANSU已经全部转存入TEMP

12、 MOV SI, OFFSET TEMP POP CX RET 将TEMP存储的转速值,通过四位数码管以动态显示的方式将其示出来其中PA接数码管的段控制端,PC口接数码管的位控制端,PA、PC口为输出LED PROC NEAR AGAIN: MOV CH, B ;初始化位选码 MOV SI, OFFSET TEMP A2: MOV DX, OUTBIT MOV AL, 0 OUT DX, AL ; OUTBIT地址空间数据清零 MOV DX, OUTSEG MOV BX, OFFSET LEDMAP MOV BL, BX+SI ;转化为段码 MOV AL,BX INC SI OUT DX, A

13、L ;输出段码 MOV DX, OUTBIT MOV AL, CH OUT DX, AL ;输出位选码 SHR CH, 1 ;右移一位,指向下一个数码管 CMP CH, B ;用到的8255的端口为PC2PC5 JZ A3 JMP A2 DEC COUNTJNZ AGAINMOV COUNT, 100 ;重复显示数据100次四、结论与展望通过本次课程设计成功的实现了对电动机转速的测量,但在在实践中可以有多种方法来实现,比如我们可以选择霍尔传感器来测定其转速,例如还可以用8253两个计数通道来实现定时,但它们各有各自的优点,需要我们结合实际情况来选择最佳的放案和方法。微机原理这门课程很好的把软件

14、和硬件结合在一起,这就要求我们不仅有良好硬件电路基础,还要求我们有较高的编程水平这就要求我们在今后的学习和工作中,注重软硬件结合,利用它们各自的优点从中找到最优的方案,以达到最优的效果。五、心得体会及建议 这次微机原理课程设计,从选题到定稿,从理论到实践,在整整两星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服,从而提高自己的实际动手能力和独立思考的能

15、力。在设计的过程中遇到问题,可以说得是困难重重,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如在编写汇编程序时,可以看出自己薄弱环节,通过这次课程设计之后,一定把以前 所学过的知识重新温故。 课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,微机的发展也空前的活跃, 在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握微机这门课程的开发技术是十分必要的。六、附录元器件明细表1.名称数量PC机1台825

16、3编程定时/计数1片8255可编程并行接口芯片1片8259可编程中断控制器1片8段数码管4个单刀双掷开关2个电位器1个直流电动机1个红外传感器1个七、参考文献陈继红 徐晨 王春明 徐慧微机原理及应用高等教育出版社 2011马争微计算机与单片机解题指南与实验指导高等教育出版社2010朱定华 林卫 微机原理、汇编与接口技术实验教程清华大学出版社2010刘乐善微型计算机接口技术及应用华中科技大学出社2003黄勤计算机硬件技术基础实验教程重庆大学出版社1990附件源程序:OUTBIT=9002H OUTSEG=9004H MODE=82H PA8255=8000H PB8255=8001H CTL82

17、55=8003H ; 8255芯片ICW1=B ICW2=B ICW4=B OCW1=B CS8259A=0D000H CS8259B=0D001H ; 8259芯片CONTROL=0A003H COUNT0=0A000H COUNT1=0A001H COUNT2=0A002H ; 8253芯片 ;* 数据段定义开始*DATA SEGMENT LEDMAP: DB 3FH, 06H, 5BH, 4FH, 66H, 6DH, 7DH, 07H DB 7FH, 6FH, 77H, 7CH, 39H, 5EH, 79H, 71H TEMP DB 16H DUP (?) CNT DB 0 ZHUANS

18、U DW 0FFFFH COUNT DB 100DATA ENDS ;* 数据段定义结束*;*代码段定义开始*CODE SEGMENT ASSUME CS: CODE, DS: DATA ;*代码段主体开始*START: MOV DX, CTL8255 MOV AL, MODE OUT DX, AL ; 8255基本输入输出方式,A,C输出,B输入MOV AL, 36H ;8253 MOV DX, CONTROL OUT DX, AL MOV AL, 50H MOV DX, COUNT0 OUT DX, AL MOV AL, 0C3H OUT DX,AL ;8253计数通道0接1M脉冲产生50

19、ms的定时脉冲ANDY PROC NEAR MOV AL, 74H MOV DX, CONTROL OUT DX, AL MOV AL, 0FFH MOV DX, COUNT1 OUT DX, AL MOV AL, 0FFH OUT DX,AL RET ANDY ENDP ;8253计数通道1接电机脉冲 并初始化为0FFFFH CLI ;IF=0,关闭中断 MOV AX, 0 MOV DS, AX MOV BX, 4*ICW2 MOV AX, CODE SHL AX, 4 ;AX左移四位 ADD AX, OFFSET IENTER ;取IENTER的偏移量与AX相加 MOV BX, AX MO

20、V AX, 0 INC BX INC BX MOV BX, AX ;设置中断矢量 CALL IINIT ;8259芯片的初始化 MOV AX, DATA MOV DS, AX MOV CNT, 0 MOV AL, CNT MOV DX, PA8255 OUT DX, AL ;8255A端口清零 STI ;IF=1,中断允许A1: NOP ;空操作命令 MOV CL, 0 MOV DX, PB8255 MOV AL, 0 IN AL, DX ;8255B端口数据读入AL中 AND AL, B CMP AL, B JNZ EXIT ;开关0控制,S0=1,则开始工作 CALL LED ;调用LED

21、显示程序,显示转速 JMP START ;无条件跳转到A1EXIT: MOV AH, 4CH INT 21H ;S0=0,退出程序LED PROC NEAR AGAIN: MOV CH, B ;初始化位选码 MOV SI, OFFSET TEMP A2: MOV DX, OUTBIT MOV AL, 0 OUT DX, AL ; OUTBIT地址空间数据清零 MOV DX, OUTSEG MOV BX, OFFSET LEDMAP MOV BL, BX+SI ;转化为段码 MOV AL,BX INC SI OUT DX, AL ;输出段码 MOV DX, OUTBIT MOV AL, CH O

22、UT DX, AL ;输出位选码 SHR CH, 1 ;右移一位,指向下一个数码管 CMP CH, B ;用到的8255的端口为PC2PC5 JZ A3 JMP A2 DEC COUNTJNZ AGAINMOV COUNT, 100 ;重复显示数据100次A3: RET LED ENDP ;数码管显示 PRINT PROC NEAR ;将显示值转化为十进制并保存PUSH CX MOV DX, 0 MOV AX, DI MOV CX, 1000 DIV CX ;商在AX余数在DX MOV SI, AL INC SI MOV AX, DX MOV DX, 0 MOV CX, 100 DIV CX

23、;商在AX余数在DX MOV SI, AL INC SI MOV AX, DX MOV CL, 10 DIV CL ;商在AL余数在AH MOV SI, AL INC SI MOV SI,AH ;至此ZHUANSU已经全部转存入TEMP MOV SI, OFFSET TEMP POP CX RET PRINT ENDP IENTER PROC NEAR PUSH AX PUSH DX INC CNT CMP CNT, 14H JZ A4 ;中断20次结束中断,将转数转成每秒的转数A5: MOV DX, CS8259A MOV AL, 20H ;将中断类型号送入AL中开始中断 OUT DX, A

24、L POP DX POP AX IRET ;中断返回A4: MOV CL, 11H CALL JISUAN ;调用JISUAN JMP A5 IENTER ENDP ;8259,定时1秒 IINIT PROC NEAR MOV DX, CS8259A MOV AL, ICW1 OUT DX, AL MOV DX, CS8259B MOV AL, ICW2 OUT DX, AL MOV AL, ICW4 OUT DX, AL MOV AL, OCW1 OUT DX, AL RET IINIT ENDP ;对8259A芯片写入控制字和操作命令 JISUAN PROC NEAR MOV DI, OF

25、FSET ZHUANSU MOV CNT, 0 PUSH AX MOV AL, B MOV DX, CONTROL OUT DX,AL ;对8253的计数通道1的数据锁存 MOV DX, COUNT1 IN AL, DX ;先读低8位再读高位 MOV BL, AL IN AL, DX MOV AH, AL MOV AL, BL ;至此已将读出通道1的数据到AX中 MOV DI, 0FFFFH SUB DI, AX MOV DX, PA8255 MOV AL, DI OUT DX, AL ;将8253所记录的转数读到DX中 MOV BL, 3CH MUL BL ;乘以60,把每秒的转数转成每分钟的转数 MOV DI, AX CALL PRINT CALL ANDY POP AX RET JISUAN ENDP ;*代码段主体结束*CODE ENDS END START ;*代码段定义结束*专心-专注-专业

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 教育教学

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

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com