导航:首页 > 操作系统 > 51单片机测脉冲宽度

51单片机测脉冲宽度

发布时间:2025-03-16 16:47:36

‘壹’ 51单片机测量正脉冲宽度

建议你在INT1引脚上,加一个反相器。这样,可以使用中断功能来完成。程序如下:
ORG 0000H
SJMP MAIN
ORG 000BH
LJMO I_T0
ORG 00013H
LJMP I_INT1
MAIN:
MOV R0,#0
MOV TMOD,#02H
MOV TH0,#0
MOV TL0,#0
SETB IT1
SETB EA
SETB EX1
SETB ET0
SJMP $
I_INT1:
SETB TR0
JNB P3.3,$
MOV 60H,TL0
MOV 61H,R0
MOV R0,#0
MOV TL0,#0
CLR TR0
RETI
I_T0:
CLR TF0
INC R0
RETI
END
最后正脉冲的宽度为:[(61H)×256+(60H)]×T
其中:T为机器周期,如果是6MHz的话就是2uS,如果是12MHz的话就是2uS。
我评经验,你要测量正脉冲宽度是要计算占空比。这个程序,实现该功能没问题。

附带说一句,你这样的问题才30分,少了点哇。呵呵,写程序很辛苦的啦~!:)呵呵

‘贰’ 跪求51单片机控制舵机程序(切记,单片机,不要弄个C来忽悠啊)

目前我正在研究舵机的控制,这里提供一个控制舵机的程序供参考。通过按键可以改变单片机输出脉冲宽度,从而控制舵机的转动范围。这个程序是基于51单片机设计的。

首先,程序从0000H开始,跳转到主程序。定时中断子程序位于000BH,用于处理定时中断。

主程序开始时,初始化堆栈指针和中断系统。然后设置P3.7为脉冲波形的起始状态,初始化定时器0,并设定舵机0位的初始值,即1.5ms。

接下来,程序通过检测按键状态来控制舵机转动角度。当右转键被按下时,程序会递增脉冲宽度,使舵机转动。当左转键被按下时,程序会递减脉冲宽度,使舵机反向转动。

当电机回0键被按下时,程序将舵机归零,即脉冲宽度恢复为1.5ms。

定时中断服务程序用于处理定时中断,它通过改变定时器0的初始值来控制脉冲宽度。

此外,程序中还包含了一个简单的延时子程序D10MS,用于防抖处理。

这个程序的核心在于通过改变脉冲宽度来控制舵机的角度,通过按键可以灵活调整舵机的位置。

整体而言,这是一个通过按键控制舵机转动角度的51单片机程序,适用于舵机控制的基本应用场景。

‘叁’ 单片机PCA能测量1秒脉宽吗

可以,只要代码编辑无误,一般情况下是可以测量的。STC12C系列增强型单片机片上扩展了基本51单片机的功能,如提供了PCA/PWM接口,定时器能工作在1T模式下(基本51单片机的时钟是Fosc的12分频,1T模式下1分频)。PCA可以用于脉宽测量,但是,protues暂不支持该系列单片机的仿真功能,反复烧写也挺麻烦,所以还是先用基本51单片机实现该功能,在后面的博文里在实现PCA测量脉宽。TMOD最高位GATEn置位后,Tn启动计数受INTn(Pin3.3)和TRn的共同影响:TRn为1,当INTn引脚输入为高电平时,Tn才允许计数。利用这个功能可测量INTn上正脉冲的宽度。

‘肆’ 各位老铁,小弟在论文进行答辩的时候碰到了点问题,论文题目是基于51单片机的数字频率计设计

1。单片机测量的是方波信号,如果是其它波形或幅度不合适,就进行放大和整形
2。.该信号进入单片机的哪个引脚,如果用定时器0作为计数器,输入引脚是P3.4
如果用定时器1作为计数器,输入引脚是P3.5 如果测单个脉冲宽度(或周期),可以输入任意引脚,但最好用中断引脚P3.2或P3.3
3。.信号进入引脚之后怎么计算它的程序
用另外一个定时器定时50ms,测50ms内有多少个脉冲输入,然后乘以20(即1S)即是频率

阅读全文

与51单片机测脉冲宽度相关的资料

热点内容
4g63压缩比 浏览:204
如何开泰拉瑞亚服务器 浏览:256
程序员的经历有哪些 浏览:12
涟源码山物流园联系电话 浏览:674
phpjson转换成数组 浏览:872
java删除注释 浏览:925
冒泡排序算法原理 浏览:327
陕西服务器阵列卡芯片云主机 浏览:302
阿里云学生认证服务器怎么购买 浏览:713
为什么手机app广告多 浏览:253
js调用php获取本机ip 浏览:789
离地铁1公里源码 浏览:556
安卓和ios系统编程 浏览:664
php转化为大写 浏览:447
如何给别人的服务器上传文件 浏览:366
romberg算法matlab 浏览:771
安卓二次压缩怎么解压 浏览:116
php读取图片信息 浏览:381
剪映提取字幕文件夹 浏览:804
e语言抽奖源码 浏览:793