利用8031的定时/计数器T1对外部事件进行计数

某生产线包装工序上,生产线的输送带每送进一个产品到包装机,“SP”端就输出一个脉冲到8031的T1端。要求每送进来10个产品,CPU就从P1.1输出一个信号去控制包装机工作。

悬赏分:10 - 解决时间:2009-11-29 17:26

;---------------------------------------------

求助得到的最佳答案:计数工作的题目,比较少见,程序如下。

        ORG   0000H

        SJMP START

        ORG   001BH

        SJMP T1_INT

START:

        MOV   TMOD, #60H    ; T1计数,方式2,自动重新装入初始值

        MOV   TH1,    #246   ; (256 - 10)

        MOV   TL1,    #246   ; (256 - 10)

        SETB TR1

        SETB ET1

        SETB EA

        SJMP $               ;设置完成,等待中断

;------------------下面是T1中断程序,每当收到10脉冲,就执行一遍

T1_INT:

        CLR    P1.1           ;输出脉冲

        NOP

        NOP

        SETB   P1.1

        RETI

END

;---------------------------------------------

回答者: 做而论道 - 十级   2009-11-18 11:25

原文网址:http://zhidao.baidu.com/question/125921899.html

;=============================================================

急求定时器中断LED灯灭亮实验

用汇编语言编辑单片机是8个LED灯实现第一秒只有L1不亮,其余七个全亮,第二个L2不亮,其余七个全亮

悬赏分:50 - 解决时间:2009-11-24 16:07

;---------------------------------------------

最佳答案:这是常见的定时方式,如下即可。

      ORG    0000H

      SJMP   START

      ORG    000BH

      SJMP   T0_INT

START:

      MOV    TMOD, #01H     ;定时方式1

      MOV    TH0,   #3CH     ; (65536 - 50000) / 256;

      MOV    TL0,   #0B0H    ; (65536 - 50000) % 256;

      SETB   TR0

      SETB   ET0

      SETB   EA

      MOV    A,     #01H

      MOV    R2,    #20

      SJMP   $

;------------------下面是T0中断程序,50ms(@12MHz)执行一遍

T0_INT:

      MOV    TH0, #3CH     ; (65536 - 50000) / 256;

      MOV    TL0,   #0B0H    ; (65536 - 50000) % 256;

      DJNZ   R2,    T0_END

      MOV    R2,    #20

      MOV    P1,    A

      RL     A

T0_END:

      RETI

END

;---------------------------------------------

回答者: 做而论道 - 十级   2009-11-18 11:07

提问者对于答案的评价:谢谢了

原文网址:http://zhidao.baidu.com/question/125956993.html

;=============================================================

利用MCS-51单片机对一个由8盏灯组成的环形灯阵进行控制

要求:灯阵中每个时刻只能有一盏灯亮,且每隔十秒后灯亮的位置向左移动一位

悬赏分:10 - 解决时间:2009-11-17 20:25

;---------------------------------------------

最佳答案:下面两个题目采用软件延时,精度稍差,基本也可达到要求。

    ORG 0000H      

    LJMP MAIN

    ORG 0030H

MAIN:

    MOV A, #7FH          ;01111111--零为亮

XUN:

    MOV P0, A

    RL   A

    ACALL DELAY10s

    AJMP XUN

DELAY10s:                 ;延时十秒子程序

    MOV R5, #76

D1: MOV R6, #0

D2: MOV R7, #0

    DJNZ R7, $

    DJNZ R6, D2

    DJNZ R5, D1

    RET

    END

;完

;---------------------------------------------

回答者: 做而论道 - 十级   2009-11-17 20:02

原文网址:http://zhidao.baidu.com/question/125912859.html

;=============================================================

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值