你的位置:首页 > 知识课堂 > 正文

定时器实验

发布时间:2013-06-11

定时器实验

实验,我们在日常生活、工作中都经常用到,但不知道大家对“
定时器实验”是否知道呢?本文收集整理了一些资料,希望本文能对各位读者有比较大的参考价值。

一、定时器实验实验目的:

1. 学习8031内部计数器的使用和编程方法。

2. 进一步掌握中断处理程序的编写方法。

定时器实验
定时器实验


二、定时器实验实验设备:

EL-MUT-III型实验箱,8051CPU板

三、定时器实验实验原理:

1. 定时常数的确定

定时器/计数器的输入脉冲周期与机器周期一样, 为振荡频率的1/12。本实验中时钟频率为6.0 MHZ,现要采用中断方法来实现0.5秒延时,要在定时器1中设置一个时间常数,使其每隔0.1秒产生一次中断,CPU响应中断后将R0中计数值减一,令R0=05H,即可实现0.5秒延时。

时间常数可按下述方法确定:

机器周期=12÷晶振频率=12/(6×10⁶)=2us

设计数初值为X,则(2e+16-X)×2×10(-6)=0.1,可求得X=15535

化为十六进制则X=3CAFH,故初始值为TH1=3CH,TL1=AFH

2. 初始化程序


包括定时器初始化和中断系统初始化,主要是对 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即可。

定时器实验
定时器实验


七、定时器实验参考程序:


NAME    T6               ;定时器实验

OUTPORT EQU    0CFB0H

CSEG AT 0000H

          LJMP START

CSEG AT 401BH            ;定时器/计数器1中断程序入口地址

        LJMP INT

CSEG AT 4100H

START:  MOV    A,#01H    ; 首显示码

        MOV    R1,#03H   ;03是偏移量,即从基址寄存器到表首的距离

        MOV    R0,#5H    ;05 是计数值

        MOV    TMOD,#10H ;计数器置为方式1

        MOV    TL1,#0AFH  ; 装入时间常数

        MOV    TH1,#03CH

        ORL    IE,#88H   ;CPU中断开放标志位和定时器

                         ;1溢出中断允许位均置位

        SETB   TR1       ; 开始计数

LOOP1:  CJNE   R0,#00,DISP

        MOV    R0,#5H   ;R0计数计完一个周期,重置初值

        INC    R1        ;表地址偏移量加1

        CJNE   R1,#31H,LOOP2

        MOV    R1,#03H   ; 如到表尾,则重置偏移量初值

LOOP2:  MOV    A,R1      ;从表中取显示码入累加器

        MOVC   A,@A+PC

        JMP    DISP

        DB     01H,03H,07H,0FH,1FH,3FH,7FH,0FFH,0FEH,0FCH

        DB     0F8H,0F0H,0E0H,0C0H,80H,00H,0FFH,00H,0FEH

        DB     0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH,0BFH,0DFH

        DB     0EFH,0F7H,0FBH,0FDH,0FEH,00H,0FFH,00H

DISP:   MOV    P1,A      ; 将取得的显示码从P1口输出显示

        JMP    LOOP1

INT:    CLR    TR1       ;停止计数

        DEC    R0        ;计数值减一

        MOV    TL1,#0AFH  ;重置时间常数初值

        MOV    TH1,#03CH

        SETB   TR1       ;开始计数

        RETI             ; 中断返回

END

综上所述,本文已为讲解
定时器实验实验目的、定时器实验实验设备等等,相信大家对定时器实验的认识越来越深入,希望本文能对各位读者有比较大的参考价值。

浏览过本文<
定时器实验>文的人也浏览了

用单片机控制步进电机
http://club.cntronics.com/space.php?uid=20687&do=blog&id=34412


交通灯课程设计 交通灯课程设计word文档下载

http://baike.cntronics.com/abc/994


霍尔传感器信号采集与显示系统设计

http://www.cntronics.com/sensor-art/80020535

要采购晶振么,点这里了解一下价格!
特别推荐
技术文章更多>>
技术白皮书下载更多>>
热门搜索
 

关闭

 

关闭