单片机用c语言编写测量波形频率和占空比,单片机测量方波的频率、占空比及相位差的方法...
1、频率及占空比的测量
如上图所示,当脉冲的上升沿来临时,将定时器打开;紧接着的下降沿来临时,读取定时器的值,假设定时时间为t1;下一个上升沿来临时关闭定时器,读取定时器的值,假设定时时间为t2。t1即为1个周期内高电平的时间,t2即为脉冲的周期。t1/t2即为占空比,1/t2即为频率。
C语言程序如下:
TH0=0; //定时器高位,初值设为0
TL0=0; //定时器低位,初值设为0
T0_num=0; //定时器溢出次数,初值设为0
while(pulse); //pulse为脉冲的输入引脚
while(!pulse); //等待上升沿来临
TR0=1; //打开定时器
while(pusl1); //等待下降沿来临
th1=TH0;tl1=TL0;num1=T0_num; //保存定时器值
while(!pusl1); //等待上升沿来临
TR0=0; //关闭定时器
th2=TH0;tl2=TL0;num2=T0_num; //保存定时器值
2、相位差的测量
测量相位差的电路如上所示,待测量的两路脉冲分别作为两个D触发器的时钟输入,两个D触发器的输入端D及S端都接高电平,第一个D触发器的输出接第二个D触发器的R端,第二个D触发器的互补输出端接第一个D触发器的R端。从下面的波形图可以看出,第一个D触发器输出的脉冲信号的占空比乘以2π即为相位差。这样就将测量两路方波信号的相位差转化为测量一路方波信号的占空比,就可以按照前面介绍的测量占空比的方法来测量了。
黄色的波形为脉冲1,蓝色的波形为脉冲2,红色的波形为相位差。
单片机用c语言编写测量波形频率和占空比,单片机测量方波的频率、占空比及相位差的方法...相关推荐
- c语言编写闹钟主程序流程图,基于STC15W4K58S4单片机的电子万年历设计源码与报告(数码管显示)...
基于STC15W4K58S4单片机的电子万年历(数码管显示)该压缩包包含源码TXT文件 源工程文件(Keil uVision4文件)和课程设计报告 电子时钟的设计 -单片机综合设计报告 目录 1 任 ...
- 单片机中用c语言编写 逻辑按位,.单片机的C语言中位操作用法.pdf
.单片机的C语言中位操作用法 风行下载2012 正式版官方下载:/ C C 单片机的CC语言中位操作用法 作者:郭天祥 来源:转自 更新时间:2008-12-421:50:22 在对单处机进行编程的过 ...
- c语言中语句开始的标志是,第一个单片机程序(C语言编写)
第一个单片机程序: #include //包含特殊功能寄存器定义的头文件 sbitLED = P0^0; //位地址声明,注意:sbit 必须小写.P 大写! void main(){ //任何一个 ...
- 第一个单片机程序(C语言编写)
第一个单片机程序: 纯文本复制 #include <reg52.h> //包含特殊功能寄存器定义的头文件 sbit LED = P0^0; //位地址声明,注意:sbit 必须小写.P 大 ...
- 用c语言编写篮球过程运行结果,基于单片机的篮球计时计分器设计(c语言编程、含proteus仿真图) 本科毕业论文.doc...
基于单片机的篮球计时计分器设计(c语言编程.含proteus仿真图) 本科毕业论文 摘要 单片机,亦称单片微电脑或单片微型计算机.它是把中央处理器(CPU).随机存取存储器(RAM).只读存储器(RO ...
- 用c语言编写振铃检测程序,利用51单片机2进8出的程控交换机C语言源码
这个是利用51单片机加上超长的语音芯片合为一体的2进8出的程控交换机C语言源码 /************************** 6-23日 修改总台来显 ******************* ...
- c语言编写消防车声音程序教程,51单片机蜂鸣器模拟救护车消防车等各种报警喇叭声音的学习源代码...
/*----------------------------------------------- 名称:喇叭 修改:无 内容:模救护车发声 ----------------------------- ...
- c语言编写消防车声音程序教程,51单片机消防车、救护车声音模拟源程序
#include //包含特殊功能寄存器的定义 sbit SPK=P1^0; //定义喇叭端口 sbit K1=P1^4; //报警声按键 sbit K2=P1^5; //消防声按键 sbit K3= ...
- 51单片机的c语言外部扩展,教你给51单片机扩展片外RAM
上一文中扩展了单片机的程序存储器,4KB存储空间提升到64KB.其实,4K的代码空间还凑合,但是51自带的256B数据存储空间使用起来还真紧张,其中留给用户的连128B都不到,所以不得不扩展片外RAM ...
最新文章
- 浅显易懂 Makefile 入门 (07)— 其它函数(foreach 、if、call、origin )
- 和12岁小同志搞创客开发:如何驱动各类型传感器?
- Win7+Ubuntu双系统,如何卸载Ubuntu系统?
- CDS – One Concept, Two Flavors
- Lex-BERT:超越FLAT的中文NER模型?
- Google File System设计方面的问题汇总
- OpenStack组件
- 【Python学习笔记】Python深拷贝和浅拷贝
- 下血本!Facebook AI 20万美金举办“图像匹配”大赛
- **python基础函数(十一)
- php查询mysql表的行数据类型,PHP 使用mysql_fetch_row 查询获得数据行列表的简单示例...
- JavaScript:综合案例-表单验证
- 2018 蓝桥杯省赛 B 组模拟赛(五)题 G题
- 指向类对象的指针非空但是部分对象成员不存在原因分析
- 英文标题大写格式化 在线网站
- mysql 主从机器 触发器 的测试,完全正常 没有问题
- Matlab中的magic函数、vander函数、hilb函数、compan函数、pascal函数、zeros函数、ones函数、eye函数、rand函数、randn函数
- kali 邮箱攻击_利用Kali linux制作钓鱼网站
- Nginx 跨域配置
- 控制系统设计专题(三)——自抗扰控制算法(下)
热门文章
- [HNUOJ1140] Daily Division(树状数组+二分)
- 基于 OpenSSL 生成自签名证书,数字签名,泛域名证书,ca证书,PKI等
- 前端开发练习——包含了计时功能的动画时钟
- 【Spring注解驱动开发】使用@Autowired@Qualifier@Primary三大注解自动装配组件,你会了吗?
- 2023四川农业大学计算机考研信息汇总
- go文件下载(普通文件和压缩文件)
- 随机森林原始论文_【科普天地】2020年还需要阅读的10篇人工智能论文(附链接)...
- 在windows环境下搭建mac os
- 通过 acme.sh 申请 Zero SSL 免费泛域名证书
- cmd窗口的内容加上颜色