定时器循环彩灯实验c语言,定时器实验循环彩灯实验-单片机原理及应用实验报告…

定时器循环彩灯实验c语言,定时器实验循环彩灯实验-单片机原理及应用实验报告…定时器实验循环彩灯实验-单片机原理及应用实验报告计算机与信息工程学院设计性实验报告专业:通信工程年级/班级:2011级2013—2014学年第一学期课程名称单片机原理及应用指导教师岳明本组成员学号姓名实验地点计科楼214实验时间周五3-4节项目名称定时器实验-循环彩灯实验实验类型设计性一、实验目的:1、学习8031内部计数器的使用和编程方法。2、进一步掌握中断…

大家好,又见面了,我是你们的朋友全栈君。

41528d3028836879cd698677c3999917.gif定时器实验循环彩灯实验-单片机原理及应用实验报告

计算机与信息工程学院设计性实验报告专业:通信工程 年级/班级:2011 级 2013—2014 学年第一学期课程名称 单片机原理及应用 指导教师 岳明本组成员学号姓名实验地点 计科楼 214 实验时间 周五 3-4节项目名称 定时器实验 – 循环彩灯实验 实验类型 设计性一、实验目的:1、学习 8031内部计数器的使用和编程方法。2、进一步掌握中断处理程序的编写方法。二、实验设备:EL-8051-III型单片机实验箱三、实验原理:1、定时常数的确定定时器/计数器的输入脉冲周期与机器周期一样, 为振荡频率的 1/12。本实验中时钟频率为 6.0 MHZ,现要采用中断方法来实现 0.5秒延时,要在定时器 1中设置一个时间常数,使其每隔 0.1秒产生一次中断,CPU 响应中断后将 R0中计数值减一,令 R0=05H,即可实现 0.5秒延时。时间常数可按下述方法确定:机器周期=12÷晶振频率=12/(6×106)=2us设计数初值为 X,则(2e+16-X)×2×106=0.1,可求得 X=15535化为十六进制则 X=3CAFH,故初始值为 TH1=3CH,TL1=AFH2、初始化程序包括定时器初始化和中断系统初始化,主要是对 IP、IE、TCON、TMOD 的相应位进行正确的设置,并将时间常数送入定时器中。由于只有定时器中断,IP 便不必设置。3、设计中断服务程序和主程序中断服务程序除了要完成计数减一工作外,还要将时间常数重新送入定时器中,为下一次中断做准备。主程序则用来控制发光二极管按要求顺序燃灭。四、实验题目由 8031内部定时器 1按方式 1工作,即作为 16位定时器使用,每 0.1秒钟 T1溢出中断一次。P1 口的 P1.0~P1.7 分别接发光二极管的 L1~L8。要求编写程序模拟一循环彩灯。彩灯变化花样可自行设计。例程给出的变化花样为:①L1、L2、…L8 依次点亮;②L1、L2、…L8 依次熄灭;③L1、L2、…L8 全亮、全灭。各时序间隔为 0.5秒。让发光二极管按以上规律循环显示下去。五、实验电路:六、实验步骤:P1.0~P1.7 分别接发光二极管 L1~L8 即可。七、程序框图:T6.ASM主程序框图 中断程序框图 八、参考程序:T6.ASM NAME T6 ;定时器实验OUTPORT EQU 0CFB0HCSEG AT 0000HLJMP STARTCSEG AT 401BH ;定时器/计数器 1中断程序入口地址LJMP INTCSEG AT 4100HSTART: MOV A,#01H ;首显示码MOV R1,#03H ;03是偏移量,即从基址寄存器到表首的距离MOV R0,#5H ;05是计数值MOV TMOD,#10H ;计数器置为方式 1MOV TL1,#0AFH ;装入时间常数MOV TH1,#03CHORL IE,#88H ;CPU中断开放标志位和定时器;1溢出中断允许位均置位SETB TR1 ;开始计数LOOP1: CJNE R0,#00,DISPMOV R0,#5H ;R0计数计完一个周期,重置初值INC R1 ;表地址偏移量加 1CJNE R1,#31H,LOOP2MOV R1,#03H ;如到表尾,则重置偏移量初值LOOP2: MOV A,R1 ;从表中取显示码入累加器MOVC A,@A+PCJMP DISPDB 01H,03H,07H,0FH,1FH,3FH,7FH,0FFH,0FEH,0FCHDB 0F8H,0F0H,0E0H,0C0H,80H,00H,0FFH,00H,0FEHDB 0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH,0BFH,0DFHDB 0EFH,0F7H,0FBH,0FDH,0FEH,00H,0FFH,00HDISP: ;MOV DPTR,#OUTPORT ;MOVX @DPTR,AMOV P1,A ;将取得的显示码从 P1口输出显示JMP LOOP1INT: CLR TR1 ;停止计数DEC R0 ;计数值减一MOV TL1,#0AFH ;重置时间常数初值MOV TH1,#03CHSETB TR1 ;开始计数RETI ;中断返回END教师签名:年 月 日

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/160493.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Mac连接不上无线网络的解决方法「建议收藏」

    Mac连接不上无线网络的解决方法「建议收藏」Mac电脑突然连不上WiFi了怎么办?小编使用了这么久的Mac,这种情况也是出现过很多次的,这个问题如果不是因为苹果无线网硬件出现了故障,基本都能通过排除法来解决问题,主要解决思路是从路由器过热造成网络阻塞,IP地址冲突、系统bug导致等这些方面入手,下面小编给大家介绍一下详细的解决方法,需要的小伙伴看过来!第一步、重启Mac无线网卡点击桌面顶部无线网络图标,下拉菜单中点击“关闭Wi-Fi”,然后再使用同样方法,下拉菜当中点击“Wi-Fi:打开”,重新启动无线网卡。第二步、重启路由器过长时间开着路

    2022年6月21日
    57
  • scp命令传文件–远程ip加端口号的方式[通俗易懂]

    scp命令传文件–远程ip加端口号的方式[通俗易懂]scp命令传文件–远程ip加端口号的方式

    2022年8月22日
    7
  • c语言字符串赋值_c++中字符串变量

    c语言字符串赋值_c++中字符串变量从大一学c语言到现在都快三年了,今天居然还在简单的字符串赋值的过程中犯了错误,应该记下来,以免日后再犯。这是一个结构体typedefstructstudent{charname[21];charsno[21];intgrade;}student;现在又两个student类型的变量stu1,stu2,当我想把stu2的值赋给stu1是我一开始是这样…

    2025年7月15日
    4
  • 【安卓笔记】高速的发展设置界面—–PreferenceActivity

    【安卓笔记】高速的发展设置界面—–PreferenceActivity

    2022年1月1日
    35
  • vue和Jquery差别之动态添加删除元素

    vue和Jquery差别之动态添加删除元素vue和jquery都是耳熟能详的,我就不多赘述了,直接上正餐吧为了展示他们在动态添加删除元素的区别,我分别用他们写了同一个功能的小例子。这个例子要求要在输入框中输入字符串,按回车键后增加一行。点击蓝色按钮,数字增加。点击“X”按钮删除整行。很明显的是jquery的代码行数更为少,但是他的灵活性和代码逻辑性比vue’差。代码如下,有可以优化的地方望指正。

    2022年10月15日
    4
  • 开源 自由 java CMS – FreeCMS1.9 评论管理

    开源 自由 java CMS – FreeCMS1.9 评论管理

    2022年1月13日
    44

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号