微机原理第二次实验报告-董东启.docx

微机原理第二次实验报告-董东启.docx

ID:58657834

大小:4.25 MB

页数:11页

时间:2020-10-16

微机原理第二次实验报告-董东启.docx_第1页
微机原理第二次实验报告-董东启.docx_第2页
微机原理第二次实验报告-董东启.docx_第3页
微机原理第二次实验报告-董东启.docx_第4页
微机原理第二次实验报告-董东启.docx_第5页
资源描述:

《微机原理第二次实验报告-董东启.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验二定时器实验一、实验目的与要求利用定时器控制产生占空比可变的PWM波,通过实验验证进一步加强对定时器功能的认识,掌握定时器的使用方法。1、用P1.0口输出PWM波,利用按键控制占空比的增加和降低,用示波器查看P1.0口的输出波形。2、引导学生进行利用现有程序演示定时器动态显示数码管实验,了解数码管动态扫描方式。二、实验注意事项1、启动KEIL软件,选择菜单“工程新建工程”以建立工程(扩展名为.uv2,如T2a.uv2)。2、选择菜单“文件新文件”以建立一个新的文本编辑窗口,在窗口中输入参考源

2、程序1并保存(扩展名为.asm),如test2a.asm,然后将其加入到源程序组1中。3、在工程菜单的选项“目标1属性”中设置相应的选项,包括“输出产生hex文件”选项以便汇编生成HEX代码供编程器使用,在“调试使用KeilMonitor-51Driver”的设置中选择相应的串口号。4、使用“工程”中的“编译全部文件”完成相应的文件编译,如果程序格式正确将生成相应HEX代码文件,如T2a.hex。如果提示有编译错误请自行修改源程序然后再重新编译。5、用单根连线将P1.0(JP44)连接到8路指示

3、灯部分(JP32)的LED0,将P1.6、P1.7(JP44)分别连接到JP37的K01、K02。6、完成仿真器与计算机之间的连线并通电。7、在KEIL软件中启动“调试开启仿真模式”,然后用“运行”命令实现全速运行的仿真。8、观察实验现象并分别依次按下K01、K02,观察并记录实验现象然后在KEIL软件中启动“中断运行-调试(debug)关闭仿真模式”退出仿真,选择“工程关闭工程”可关闭当前工程。9、参考步骤1-4完成参考源程序2的建立与输入,如新项目T2b.uv2和新的源程序test2b.a

4、sm,完成编译与仿真设置。10、用8PIN连线将P0口连接到数码管数据输入端,P2口连接到数码管控制端。11、输入程序并仿真运行,注意数码管的显示内容。12、根据参考源程序1和参考源程序2进行思考、修改和拓展,自行设计程序目标并编程验证。13、本次实验主要连线如图一、实验内容1.利用定时器控制产生占空比可变的PWM波,通过按K01可PWMH值增加,则占空比增加,LED灯渐暗。按K2,PWM值减小,则占空比减少,LED灯渐亮。PWMHDATA40H;高电平脉冲的个数PWMDATA41H;PWM周期CO

5、UNTERDATA42H;TEMPDATA43HOUTPWMEQUP1.0;PWM波输出引脚OUTPWMbEQUP1.1;PWM波输出引脚b,用于外接示波器探头INCKEYEQUP1.6;K01,PWMH值增加键。DECKEYEQUP1.7;K02,PWMH值减小键。ORG0000HAJMPMAINORG000BHAJMPINTT0ORG0100HMAIN:MOVSP,#60H;给堆栈指针赋初值MOVPWMH,#0bH;赋初值MOVCOUNTER,#01HMOVPWM,#15HMOVTMOD,#02

6、H;定时器0在模式2下工作MOVTL0,#38H;每200μs产生一次溢出MOVTH0,#38H;自动重装初值SETBET0;使能定时器0中断SETBEA;使能总中断SETBTR0;开始计时KSCAN:SETBINCKEY;端口输入状态,扫描按键SETBDECKEYJNBINCKEY,K1CHECK;扫描K01,如果按下跳转到KEY1处理程序JNBDECKEY,K2CHECK;扫描K02,如果按下跳转到KEY2处理程序SJMPKSCANK1CHECK:JBINCKEY,K1HANDLE;若按下K01

7、后释放,跳转到KEY1处理程序,可考虑加延时去抖动程序SJMPK1CHECKK1HANDLE:MOVA,PWMH;CJNEA,PWM,K1H0;判断是否到达上边界SJMPKSCAN;是,则不进行任何操作K1H0:MOVA,PWMHINCACJNEA,PWM,K1H1;如果在加1后到达最大值CLRTR0;定时器停止SETBOUTPWM;置输出为高电平SETBOUTPWMbSJMPK1H2K1H1:CJNEA,#02H,K1H2;如果加1后到达下边界SETBTR0;重开定时器K1H2:INCPWMH;增

8、加占空比SJMPKSCANK2CHECK:JBDECKEY,K2HANDLE;若按下K02后释放,跳转到KEY1处理程序,可考虑加延时去抖动程序SJMPK2CHECKK2HANDLE:MOVA,PWMH;CJNEA,#01H,K2H0;判断是否到达下边界,是,则不进行任何操作SJMPKSCAN;K2H0:MOVA,PWMH;MOVTEMP,PWMDECACJNEA,#01H,K2H1;如果在减1后到达下边界CLRTR0;定时器停止CLROUTPWM;输出为低电平CLR

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。