永发信息网

“脉冲分配”程序,汇编语言

答案:2  悬赏:60  手机版
解决时间 2021-02-27 10:17
  • 提问者网友:送舟行
  • 2021-02-26 18:27
令p1口低三位依次输出001B、011B、010B、110B、100B、101B六种状态并反复循环,每种状态须保持1ms时间(假定已有1ms延时子程序DELAY可以供直接调用)。
最佳答案
  • 五星知识达人网友:逐風
  • 2021-02-26 19:00
;用最简单的思路:

LOOP:

MOV P1, #00000001B
CALL DL1ms
MOV P1, #00000011B
CALL DL1ms
MOV P1, #00000010B
CALL DL1ms
MOV P1, #00000110B
CALL DL1ms
MOV P1, #00000100B
CALL DL1ms
MOV P1, #00000101B
CALL DL1ms

SJMP LOOP

DA1ms:
;;;;;;;;;;;;;;;;;
RET

END
全部回答
  • 1楼网友:你可爱的野爹
  • 2021-02-26 20:13
51单片机是有计数功能的,置方式1最大可以计数65536个脉冲。但要注意脉冲频率要小于晶振频率的1/24 如果只计数的话,不用打开中断功能,只要取出th0和tl0的值并把它清零即可。 初始化程序: void init() { tmod=0x05;//方式一,16位计数器 th0=0; tl0=0; tr0=1;//启动计数器 } 楼下的程序是定时器,不是计数器 欢迎来我空间看看 百度空间:http://hi.baidu.com/%b4%f3%ce%b0%b5%e7%d7%d3%d6%c6%d7%f7
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯