蓝桥杯单片机(七)NE555
上一章讲了蓝桥杯单片机如何输出PWM波
蓝桥杯单片机(六)PWM
这一章讲解蓝桥杯单片机开发板上的NE555方波发射器的频率测量,这也是近几年的考点。
首先看原理图:
由数电的知识:
NE555的周期T=0.7(Ra+Rb)C
频率f=1/T
图中R8为定值电阻,所以NE555的斜率主要由Rb3这个滑动变阻器决定。图中NE555的PWM波输出引脚为NET SIG,所以测量只需要将单片机随便一个GPIO与NET SIG相连,然后向按键扫描那样读取高低电平就行了。
由于比赛通常用超声波跳线帽来连接P34和NET SIG引脚,所以本次例程同样如此。
首先来看测量程序:
unsigned int high=0,low=0,highdata=0,lowdata=0;void time0() interrupt 1
{if(P34==1){high++;if(low !=0){lowdata=low;low=0;}}else if(P34==0){low++;if(high !=0){highdata=high;high=0;}}
}void Timer0Init(void) //20微秒@11.0592MHz
{AUXR |= 0x80; //定时器时钟1T模式TMOD &= 0xF0; //设置定时器模式TL0 = 0x23; //设置定时初值TH0 = 0xFF; //设置定时初值TF0 = 0; //清除TF0标志TR0 = 1; //定时器0开始计时
}
让定时器每20us进行测量P34口的电平,然后将对应的高低电平的时间保存起来,然后就可以计算周期和频率了。
计算公式:
**
高电平加低电平次数乘以20us就是周期
**
time=(1000000/((highdata+lowdata)*20));
当然定时器的时间越短越精确。
实验内容:使用P34引脚测量PWM频率,使用数码管显示出来。
代码如下:
#include<stc15f2k60s2.h>
#include"intrins.h"#define uchar unsigned char
#define uint unsigned intvoid SMG_output(void);
void init(void);
void Delay1ms(void);
void Timer0Init(void);uchar tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff};
uchar SMG[8]={10,10,10,10,10,10,10,10};//初始显示10,全息数码管
uint high=0,low=0,highdata=0,lowdata=0;
uint time;void main(void)
{init();Timer0Init();EA=1;ET0=1;while(1){time=(1000000/((highdata+lowdata)*20));SMG[3]=time/10000;SMG[4]=time%10000/1000;SMG[5]=time%1000/100;SMG[6]=time%100/10;SMG[7]=time%10;SMG_output();}
}void time0() interrupt 1
{if(P34==1){high++;if(low !=0){lowdata=low;low=0;}}else if(P34==0){low++;if(high !=0){highdata=high;high=0;}}
}void SMG_output(void)
{uchar i;for(i=0;i<8;i++){P2=(P2&0X1F)|0Xc0;P0=(1<<i);P2=(P2&0X1F)|0Xe0;P0=tab[SMG[i]];Delay1ms();}P2=(P2&0X1F)|0Xc0;P0=0Xff;P2=(P2&0X1F)|0Xe0;P0=0Xff;
}void Timer0Init(void) //20微秒@11.0592MHz
{AUXR |= 0x80; //定时器时钟1T模式TMOD &= 0xF0; //设置定时器模式TL0 = 0x23; //设置定时初值TH0 = 0xFF; //设置定时初值TF0 = 0; //清除TF0标志TR0 = 1; //定时器0开始计时
}void init(void)
{P2=(P2&0X1F)|0XA0;P0=0X00;P2=(P2&0X1F)|0X80;P0=0Xff;P2=(P2&0X1F)|0Xc0;P0=0Xff;P2=(P2&0X1F)|0Xe0;P0=0Xff;
}void Delay1ms(void) //@11.0592MHz
{unsigned char i, j;_nop_();_nop_();_nop_();i = 11;j = 190;do{while (--j);} while (--i);
}
最后效果如下:
调节滑动变阻器,频率发生改变。
蓝桥杯单片机(七)NE555相关推荐
- 蓝桥杯单片机——用NE555定时器来测量频率
蓝桥杯单片机比赛第十届以及十二届(第二场)中会用到NE555来测量频率以及频率周期,平时也会用到所以这个是必须要掌握的知识,简单来介绍一下芯片和编程用法. 芯片简介 NE555是属于555系列的计时I ...
- 蓝桥杯单片机之NE555频率发生计的使用(IO模式)
蓝桥杯单片机之NE555频率发生计的使用 NE555原理图及基本原理分析 基本控制 设计思路 代码 NE555原理图及基本原理分析 NE555时基芯片的频率输出引脚为NET_SIG,连接着外部排针J3 ...
- 【蓝桥杯单片机】NE555在CT107D上的使用
实验开发板为CT107D蓝桥官方板,编译环境为MDK5 蓝桥的板子仅仅将它当作方波发生器,只需要测频率就行. 操作: 将P3^4和signal脚用跳线帽短接 打开定时器0设定为计数器模式 打开定时器0 ...
- 蓝桥杯单片机----NE555频率测量
NE555 (Timer IC)为8脚时基集成电路,NE555是属于555系列的计时IC的其中的一种型号,555系列IC的接脚功能及运用都是相容的,只是型号不同的因其价格不同其稳定度.省电.可产生的振 ...
- 蓝桥杯单片机第七届省赛-模拟风扇控制系统
九层妖塔 起于垒土 ● 改编自国信长天蓝桥杯官方蓝皮书例程,按照自己的习惯进行了补充和修改 蓝桥杯单片机第七届省赛-模拟风扇控制系统 Notes1:按键按下后在某些情况下给一定的缓冲时间 Notes2 ...
- 蓝桥杯单片机学习13——NE555方波发生器频率测量
NE555 简介 引脚图 原理图 真值表 工作原理 频率测量原理 定时器测量频率方法 代码实现 总结(一堆废话) 简介 NE555是一种高度稳定的控制器,内部用三个阻值为5KΩ的电阻分压,因此叫做55 ...
- 蓝桥杯单片机 赛后资料整理——NE555芯片模块与第十届省赛的总结
蓝桥杯单片机 赛后资料整理--NE555芯片模块 电路原理 模块特性 驱动方法 代码模板 个人总结 本文适用于 CT107D竞赛板+ IAP15转接板 电路原理 模块特性 NE555是一种时钟芯片,输 ...
- 蓝桥杯单片机NE555编程
蓝桥杯单片机中的NE555模块的编程,其实是很简单.简单来说就是计算一秒钟之内有多少个频率响应.中间所谓的频率响应也就是计算定时器作为计数器时候溢出的个数而已.能够考察的点就是这样子了,也要稍微了解, ...
- 蓝桥杯省赛考点_【蓝桥杯单片机01】从历年决赛真题中寻找单片机常见的考点...
[蓝桥杯单片机01]从历年决赛真题中寻找单片机常见的考点 广东职业技术学院 欧浩源 [第三届:门禁系统] 1.功能简述 "门禁系统"主要有两种工作模式: 模式1:7:00-22: ...
最新文章
- SQL Server中临时表与表变量的区别
- iphone-common-codes-ccteam源代码 CCUIKit.m
- 丑憨批的爬虫笔记1(导学+requests))
- 用matlab处理grib2,关于Matlab2017b读取GRIB2文件的问题
- 智能物联网系统安全与防御【会议】
- EMS批量为用户分配邮箱
- mysql导出不带注释的sql语句_MySQL mysqlbinlog解析出的SQL语句被注释是怎么回事
- Excel函数公式大全—MATCH函数
- SVG—最简单的SVG动画
- MES系统的工艺管理与绩效管理
- TypeScript基础快速上手
- H5页面、微页、轻应用、轻app、场景应用制作工具:
- python中求合数_python输出100以内的质数与合数实例代码
- 梦幻古龙服务器 文档,梦幻古龙GM命令大全较完整
- FPA Function Point Analysis 功能点分析培训免费视频地址(by陈勇)
- android 手机扔起来的高度,三防AGM X2评测:吴京硬汉本色扔海里也不怕
- Win10已配对成功的蓝牙耳机无法删除怎么办?电脑蓝牙连接不成功、删除失败,显示此项不起作用。请确保你的蓝牙设备仍可以检测到,然后再试一次。
- Dplayer直播m3u8流
- 【AI视野·今日NLP 自然语言处理论文速览 第三十一期】Fri, 15 Apr 2022
- 几何光学学习笔记(33)- 7.3 色光混合与格拉斯曼定律 7.4 颜色的匹配
热门文章
- linux小白命令,linux命令---小白笔记
- 经济学和计算机类大学排名,经济学专业世界大学排名ARWU
- 2022年秋季学期人工神经网络第四次作业
- uni-app实现微信小程序,支付宝小程序,微信、支付宝、银联多商户收款
- 基于ENVI与ERDAS的Landsat 7 ETM+单窗算法地表温度(LST)反演
- python开发出来的crm系统_用Python打造一个CRM系统(二)
- 3D知识:3D电影的技术原理及制作流程
- 吃人的那些 Java 名词:对象、引用、堆、栈
- “解析包时出现问题”
- 远程桌面时共享本地磁盘