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

单片机脉冲宽度

发布时间:2022-12-19 08:16:31

1. 单片机定时中断测脉冲宽度

TMOD=(TMOD&0x0f)|0x90;定时器模式这是什么意思?我忘了具体的寄存器各位是怎么定义的。
测脉冲宽度用定时器循环中断吧,最好在中断处理函数中定义一个循环累积变量。如果宽度大于你的定时时间,那么TH1和TL1中的值就没有意义了。12M的晶振,最长定时是60多ms。

2. 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分,少了点哇。呵呵,写程序很辛苦的啦~!:)呵呵

3. 利用8051单片机定时器T0测量某正脉冲的宽度

原理:分别用脉冲的上升沿和下降沿出发单片机,上升沿给出中断1开始计数,下降沿给出中断2停止计数,最后换算出高电平宽度=计数周期数×一个计数的时间。
设置的SFR:TMODE(一定要注意GATE的设置为1),TCON,IE,TH0,TL0等
最大脉宽计算:我们知道计数器中断的产生是从全1变为全0产生溢出中断,所以我们计数器的处置设定为00H,如果我们让其工作在方式1计数下,最大计数值为2^16=65536,那么最大计数脉冲宽度就是65536*2us。
一定要注意我们利用GATE的控制作用是计数器用来测量脉冲宽度。
不明白的LZ可以在上网络看看利用GATE的控制作用是计数器用来测量脉冲宽度这方面知识,或者我们在交流,呵呵

4. "利用8051单片机定时器T0测量某正脉冲的宽度 "这个问题你弄懂了 能给我看看你的程序么 我研究很久没有搞懂

原理:分别用脉冲的上升沿和下降沿出发单片机,下降沿给出中断2停止计数,最后换算出高电平宽度=计数周期数×一个计数的时间。

脉冲有间隔性的特征,因此我们可以把脉冲作为一种信号。脉冲信号的定义由此产生:

相对于连续信号(在整个信号周期内短时间中都有的信号),大部分脉冲信号周期内是没有信号的。就象人的脉搏一样。脉冲信号一般指数字信号,它已经是一个周期内有一半时间(甚至更长时间)有信号。计算机内的信号就是脉冲信号,又叫数字信号。

最大脉宽计算:知道计数器中断的产生是从全1变为全0产生溢出中断,所以计数器的处置设定为00H,如果让其工作在方式1计数下,最大计数值为2^16=65536,那么最大计数脉冲宽度就是65536*2us。


(4)单片机脉冲宽度扩展阅读:

脉宽由信号的周期和占空比确定,其计算公式是脉宽W=T×P(T:周期,P:占空比)。例如在飞思卡尔的S12dg128寄存器中的具体的

占空比计算方式是:

左对齐方式:

占空比 = [ (PWMPERx - PWMDTYx) / PWMPERx ] × 100%

中心对齐方式:

占空比 = [ PWMDTYx / PWMPERx ] × 100%

周期的计算公式:

左对齐方式:

输出周期 = 通道周期 × PWMPERx

中心对齐方式:

输出周期 = 通道周期 × PWMPERx × 2

脉宽的计算方法就不言而喻了。

5. 使用标准的8051单片机汇编语言编写脉冲宽度测量

不断查询接连脉冲的端口,有电平跳变就计算计数器时间.然后通过LED显示,手动清零通过硬件RESET可实现.

6. 我通过单片机测量方波,三角波,正弦波的脉冲宽度,范围是0-1M,如何测量请各位高手指点迷津

我通过单片机测量方波,三角波,正弦波的脉冲宽度,范围是0-1M,如何测量...
----
方波,即矩形波,才有脉冲宽度的说法。
正弦波,有振幅、频率、初相角三个要素,没有脉冲宽度的说法。
三角波,它也没有宽度。

7. 单片机测量脉冲宽度

如果是单稳态电路的脉冲可以使用上升沿外部中断捕捉起始边沿,进入中断后启动定时器,设置外部中断为下降沿,捕捉到下降沿停定时器,读取定时器即可测得脉冲宽度。

8. 求助:采用STC2051单片机测量脉冲宽度~~

提供个思路给你
计数器 模式

将脉冲接入定时器0的GATE 和中断0
将脉冲反向接入定时器1的GATE和中断1

让后在中断0里面读取 定时器1的计数器 并清零
让后在中断1里面读取 定时器0的计数器 并清零
这样
定时器1的记数就是 正脉宽
定时器0的记数就是负 正脉宽

9. 求助,通过52单片机测量外部脉冲宽度,如果脉宽小于某个设定值则输出一个信号,比如灯亮

需求没说清楚,脉宽的具体宽度,数量级先搞清楚。对具体实施很关键的。
方法有一下:
1、如果单片机有捕捉功能,则在沿上捕捉后记录定时器时间,然后计算出时间,即可比较输出信号。
2、如果没有,接入单片机的中断管脚(上下沿中断,如果没有,进入后立马改变下次中断触发方式,进行上升下降沿中断的切换),单片机外部中断服务中记录定时器时间,然后下次中断来临后计算时间,即可比较输出信号。
3、如果都没有,功能且单一,脉宽比较宽,要求不高,硬件又没有在中断管脚上,可以考虑主程序定时查询,记录时间。

5ms,很宽的,如果功能单一的话,定时器都可以免了,直接用单片机指令周期算时间,定义一个长整型变量,不断监测管脚,监测完变量加一,后再比较。
不过呢,希望还是用我提到的方法2吧,通用些。具体实施自己多想想,另位朋友的代码慎重使用,问题较多,不一一说明了

10. 51单片机测量脉冲宽度

脉冲宽度说白了就是连续两次电平变化所占用的时间,单片机实现的话就是利用电平变化中断打开定时器,到再次变化时定时器的读数(没有溢出的情况)。

阅读全文

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

热点内容
无线已加密不可上网是怎么了 浏览:464
什么app可以免费做手机 浏览:373
异性下载什么app 浏览:680
51单片机程序单步视频 浏览:239
家庭宽带如何连接服务器 浏览:117
汽车高压泵解压 浏览:770
上门正骨用什么app 浏览:758
安卓为什么免费使用 浏览:397
加密货币都有哪些平台 浏览:625
python和matlab难度 浏览:388
python爬虫很难学么 浏览:572
小米解压积木可以组成什么呢 浏览:816
为什么滴滴出行app还能用 浏览:564
怎么升级手机android 浏览:924
php权威编程pdf 浏览:995
扣扣加密技巧 浏览:722
苹果如何创建服务器错误 浏览:497
软考初级程序员大题分值 浏览:475
js压缩视频文件 浏览:580
linux如何通过命令创建文件 浏览:991