51单片机使用T0和T1外部脉冲计数,C语言如何编程

51单片机使用T0和T1外部脉冲计数,C语言如何编程,第1张

使用T0和T1外部脉冲计数,控制两个电机,到1700个脉冲电机停止,

--统计脉冲个数,用

外部中断

更好。

--T0和T1,留着定时用。

用四个按键控制,按键1

控制电机

正转

,按键2控制电机反转,按键3控制电机1正转,按键4控制电机2正转,怎么用

C语言编程

--编程前,要先设计出来电路。

int count = 0;

while (true) {

count++;

if (count >= 9999)

count = 0;

}

输出程序结束之前缺少一个goto loop_2;实现了同样的增量效果,但过程与书上的不一致,你说的对,先是每b增加1,然后a增加3次。

在现在的C语言程序设计中已经不再使用goto语句了,虽然可以使用,但不推荐。建议学习for 和while循环语句控制。原因是goto语句随意性太大,比较容易出错。如果要学C语言的话,可以看谭浩强的C语言程序设计

1、编译,通过后,添加波形文件,如下图所示。

2、保存,点击波形仿真按钮,开始波形仿真,如下图所示。

3、仿真成功,结果如下图所示。

4、波形仿真情况1:使能en及m=1时模23计数仿真结果如下图。

5、波形仿真情况2:循环及m=0时模119计数仿真结果如下图。

5、波形仿真情况3:m跳变及复位清零仿真结果如下图。

在等于2的地方少一个=吧。

因为在一个周期里首先需要一个高电平,之后变成低电平。之后不再变化。

初始值为0,当cnt==1时p10求反得高电平。

在cnt==2时再求反得低电平,之后不再变化

给你个思路,P20接第一个(十位)位选,P21接第二个(个位)位选。

P1接口接数码管的8个段选,建议使用共阳的两位一体数码管 这样走线比较简单。

阳极的位选控制电路建议使用8550三极管。

程序大概思路:inc a 寄存器a加1

cjne a,#100,next;比较寄存器a的值是不是到超过99了,如果没有执行next

clr a;a清零

jmp out 如果超过99就跳出

mov b,#10;给b赋值10作为除数

next: div ab ; a/b 得到个位和十位

MOVC A,@A+DPTR ;查表取得段显值

mov p1,a; 送段显值到P1,同时控制位选信号P20和P21

以上就是关于51单片机使用T0和T1外部脉冲计数,C语言如何编程全部的内容,包括:51单片机使用T0和T1外部脉冲计数,C语言如何编程、跪求生产线产品数量计数,单片机C语言程序设计。 计数量为0000~9999,在达到9999自动清零。、在《从程序设计》上看到一道计数器编程例题,说的是a每增加到3,b增加等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9777774.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存