




已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
大连理工大学本科设计报告(计算机原理接口实验综合设计)题目:基于“准PWM技术”的直流电机调速系统设计 课程名称: 计算机原理实验 学院(系): 信息与通信学院 成 绩: 题目:基于“准PWM技术”的直流电机调速系统设计1 设计要求 利用实验台上的开关(K7-K0),实现3V直流电机的转速控制。利用8253产生“准PWM”(占空比50%0%)波形,不同的占空比影响着直流电机的转速。通过秒中断服务程序读取K7-0的数据、修改PWM的占空比,实现直流电机的转速控制。具体要求:1) 以8253为核心,通过8253的OUT1输出方式2的方波经反相器后控制电机;a) 设置8253的CNT0为 方式三,将输入的1MHZ信号进行5000分频,在OUT0上得到200HZ对称方波,送CLK1使用;b) 设置8253的CNT1为 方式二,利用8253的CNT1的OUT1输出的不对称方波(参见图2.1),经一个反相器输出后,与直流电机连接、控制电机的转速;2) 利用D8255A的PA7-PA0做输入,与K7-K0连接。利用开关数据控制电机的转速。根据PA的数据设置CNT1的初值在102之间变化(共9档速度)、实现电机转速的控制;3) 利用8253的CNT2做秒脉冲发生器(CLK2与OUT0连接以获取200HZ脉冲),(N=400)在OUT2上输出0.5HZ的周期性方波,并由此方波与主8259的MIR5连接,引发中断服务ISR。在ISR中对D8255A的PA口进行输入,并根据此数据修改CNT1的初值(PWM的占空比)。4) 加分题:考虑如何使用一个电位器(替代开关)实现对电机转速的控制,并通过数码管显示相应档速值。OUT_1输出反相器输出/A(准PWM信号)N=6N-1=51N-1=5N-1=5N-1=5N-1=5N-1=5111N的取值范围在210之间图2.1(a) CNT1方式2的OUT1波形及反相器的波形OUT_1反相器(非门)8253计数器1方式2LED监视图 2.1(b)加入反相器的控制逻辑示意图A/A反相器输出/A(准PWM信号)N=2111111111111111111111平均电压平均电压VVV2 设计分析及系统方案设计1) 设计方案分析:根据设计要求,可以8253为中心模块,利用AD转换器,8255实现拨码开关和电位器进行调速,程序编写实现将以中断为主。并利用8255,数码管实现显示各速度档位功能(在开关控制和电位器控制下均可显示档位)。具体模块分析如下。(1)8253部分:根据设计要求,8253的三个通道分别做如下初始化,其中以CNT0为中心,将输入的时钟源1MHZ进行分频,以供给其他通道使用故其工作在方波方式(方式3)。CNT1作为驱动直流电机的脉冲源,工作在方式2(矩形波输出),而CNT2为中断的时钟源,在CNT0的输出时钟基础上再次分频实现每0.5S进入一次中断。(2)8259部分:中断管理,初始化MIR5,并设置35H号中断向量。(3)8255部分:初始化并实现PA口的开关数据输入程序,PB口的数码管数据输出。(4)AD转换部分:转换电位器接入的模拟电压值,得到相应数字量。(5)数码管显示部分:通过8255和预先写入存储空间的字型代码驱动数码管显示。2) 系统方案设计:(1)主程序:主要完成上述相应可编程芯片的初始化,包括8255,8253,8259的初始化,同时进行中断向量的设置,并开启AD转换器,然后等待相应中断的到来。(2)中断服务程序:利用8255的PA口输入的数据控制电机转速的操作,PB口作输出驱动数码管显示。拨码开关分为8个档位,8个开关中以高有效为原则,即当K1和K7同时为高时,则为8档(最快档),同时当前档速可通过数码管显示。当CNT1的初值N=2时,占空比最大(为50%),随着N值的增加,高电平的占空比逐渐下降,电机转速也逐渐变慢。当拨码开关全部为0时,切换到电位器调节:完成AD转换值的采集,将采集得到的数据进行处理,转换成相应的档速值,并通过8255送给数码管进行显示,得到的N值送给驱动脉冲源通道CNT1,最后退出等待下一次中断的到来。3系统电路图4 外围接口模块硬件电路功能描述 图2.3 8255引脚图 图2.4 8253引脚图 图2.5 ADC0809引脚图8255作为主机与外设的连接芯片,利用D8255A的PA7-PA0做输入,与K7-K0连接。利用PB口与数码管的阳极相连,驱动数码管。ADC0809与电位器相连,将电位器输入的模拟量转化为8位数字量,开关数据或电位器控制电机的转速。8253是NMOS工艺制成的可编程计数器,利用8253cnt1输出“准PWM”波形,cnt0用于基础分频,输出200HZ方波,cnt2输出2HZ方波触发中断。相关器件引脚原理连接如系统电路原理图,其功能均在前面内容已作介绍。5 主程序中主要变量说明变量名称内存单元类型功能SPEEDDB档速值bufferDB数码管字型代码6系统软件中各个子程序的功能描述子程序名称入口参数出口参数功能描述MAIN无无主程序INT_PROC无无中断服务程序7主程序程序流程图8程序清单data segment paraio8253_0 equ 200hio8253_1 equ 201hio8253_2 equ 202hio8253_k equ 203hio_8255 EQU 210hAD_IO EQU 220Hbuffer DB 06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH speed DB 10data endsssg segment stackDw 256 DUP(0)ssg endscode segmentassume cs:code,ds:data,ss:ssgmain proc farcliMOV AX,DATAMOV DS,AX;8255初始化,a口输入,b口输出,方式0mov dx,IO_8255+3 mov al,10010000bout dx,al;8253初始化,cnt0mov dx,io8253_k mov al,36hout dx,almov ax,5000mov dx,io8253_0out dx,almov al,ahout dx,al;8253初始化,cnt1,产生准PWM波mov dx,io8253_k mov al,74hout dx,almov al,speed ;speed 初值设为10mov dx,io8253_1out dx,almov al,0out dx,al;8253初始化,cnt2,在cnt0的基础上再次分频设置中断mov dx,io8253_k mov al,0b6hout dx,almov ax,100mov dx,io8253_2out dx,almov al,ahout dx,al;设置386EX主8259中断屏蔽字in al,21h and al,11011111bout 21h,al ;设置中断向量表push dsmov ax,0mov ds,axlea ax,cs:int_procmov si,35hadd si,siadd si,simov ds:si,axpush cspop axmov ds:si+2,axpop dssti l2: nop ;等待中断 jmp l2mov ax,4c00hint 21hmain endpINT_PROC proc far PUSH AX PUSH CX PUSH DX mov si,0 mov dx,IO_8255 in al,dx MOV AH,10;设置初始速度 test al,80h jnz next1 test al,40h jnz next2 test al,20h jnz next3 test al,10h jnz next4 test al,08h jnz next5 test al,04h jnz next6 test al,02h jnz next7 test al,01h jnz next8;若开关都为0,则切换到电位器控制 MOV DX,AD_IO ;启动AD转换 OUT DX,AL mov dx,ad_io add dx,2 L1: in al,dx test al,01h jz L1 MOV DX,AD_IO INC DX IN AL,DX ;读取 LEA BX,buffer MOV CX,8LOOP1: TEST AL,01H JZ NEXT11 DEC AH INC BXNEXT11: SHR AL,1 LOOP LOOP1 ;循环判断开ADC值有几个有效,决定输出档速,8个有效,档速最高为2,;0个有效,最低档速为10 MOV DX,io_8255+1 ; 数码管显示 MOV AL,BX OUT DX,AL jmp next9next1: dec ah ;开关8档,最快档 inc si ;控制开关模式下数码管的数据next2: dec ah inc sinext3: dec ah inc sinext4: dec ah inc sinext5: dec ah inc sinext6: dec ah inc sinext7: dec ah inc sinext8: dec ah inc si lea bx,buffer add bx,si MOV DX,io_8255+1 ; 数码管显示 MOV AL,bx OUT DX,AL next9: mov al,ah ; 送响应档速值给CNT1 mov dx,io8253_1 out dx,al mov al,0 out dx,al MOV AL,20H ;发送EOI命令 OUT 20H,AL POP DX POP CX POP AX STI IRETINT_PROC ENDPCODE ENDSEND MAIN9系统调试运行结果说明、分析所出现得问题1) 硬件环境:PC机,386EX实验系统,其中包括硬件模块:8255,8253,8259, ADC0809,基于30386处理器的最小系统,时钟源,电源等。2) 软件环境:TPC_386EX集成开发环境3) 设计语言:汇编语言4) 出现的问题:1.在编程的过程中,开始开关档不能正常工作,上电后电机会自动跳到最快档。 2.在驱动数码管时,开始没有实现开关档显示档位数据,开关档时数码管显示的是原来电位器的档位,与当前电机转速不符。5) 解决方法:1.开始使用调试工具设置断点检查程序运行情况,发现断点只要设置在开中断之后,程序就会运行异常,判断问题出在中断服务程序中,经过检查和思考发现是跳转条件语句用错了,按照逻辑应该JNZ,却用了JZ。2.经过思考,在不同的档位速度调整的同时,又设置了一寄存器SI,用来同步保存当前档位的值,使开关控制时也可以同步显示当前档位,改进了程序。6) 结果说明:通过开关k7-k0,改变直流,电动机的速度,当开关档同时都为低电平时,电位器控制有效,手动调节实验箱中的电位器,可以看到直流电机实现不同速度转动。 两种控制方式都可
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025届春季雅砻江公司校园招聘正式启动考前自测高频考点模拟试题及答案详解一套
- 2025年西安工业投资集团有限公司招聘(7人)考前自测高频考点模拟试题附答案详解(考试直接用)
- 2025年安徽国控资产管理有限公司第二季度社会招聘5人模拟试卷完整参考答案详解
- 2025黑龙江黑河市爱辉区中心敬老院招聘护理员、夜巡安保员及消防设施操作员13人考前自测高频考点模拟试题及答案详解(历年真题)
- 2025江苏盐城市第七人民医院招录政府购买服务用工14人考前自测高频考点模拟试题及一套完整答案详解
- 2025内蒙古通辽市奈曼旗招募青年见习人员387人模拟试卷(含答案详解)
- 2025广东中山市城市管理和综合执法局招聘雇员5人考前自测高频考点模拟试题及答案详解(易错题)
- 2025年福建省厦门海沧华附实验小学招聘1人模拟试卷及答案详解(考点梳理)
- 2025黑龙江齐齐哈尔市建华区北华街道公益性岗位招聘考前自测高频考点模拟试题附答案详解(考试直接用)
- 2025年眼科光学器具项目发展计划
- 2025年新生儿科常见疾病诊断试题答案及解析
- 律师调查报告委托合同9篇
- 寻乌县2025年公开招聘社区工作者【10人】考试参考试题及答案解析
- 高校财会监督与预算绩效管理协同效能优化研究
- 输液室理论知识培训课件
- 协会转让接手协议书模板
- 家长学校综合测试题库与评分标准
- 看板管理管理办法
- 2025至2030镍氢电池隔膜行业市场发展现状及竞争格局与投资价值报告
- 造林质量管理办法
- 冠心病人饮食健康管理
评论
0/150
提交评论