NE555方波发生器

基础知识

NE555不需要进行编程,或者与单片机进行通信,它本身就能产生方波。方波的频率可以调节,只要改变电阻电容的值就可以了。

电路原理

方波产生在排针J3的15(SIGNA)脚上,方波的频率通过Rb3电位器进行调节的

P34是一个特殊的计数器,每个下降沿来临+1,可以统计方波的下降沿,通过对下降沿个数的判断,就能知道此时方波的频率。

计数器来自单片机的外部引脚,计数器0(T0)为P34,T2为P31,T3为P07,P4为P05。计数器的配置类似于定时器

获得计数器1s后TH0和TL的值,就可以得到外部脉冲的频率。

NE555频率测量编程

void Conuter2_init()
{
    TMOD |=0X05;
    TL0=0;
    TH0=0;
    TR0=1;


}
#include <STC15F2K60S2.H>
#include <SYSTEM.H>
#include <SMG.H>

u16 cnt_ne555;
u16 temp_ne555;
void NE555_process()
{
    cnt_ne555++;
    if(cnt_ne555==1000)
    {
        cnt_ne555=0;
        temp_ne555=(TH0<<8)|TL0;
        TL0=0;
        TH0=0;
    }

}

void smg_process()
{
    smg_code[0]=t_display[temp_ne555/10000];
    smg_code[1]=t_display[temp_ne555/1000%10];
    smg_code[2]=t_display[temp_ne555/100%10];
    smg_code[3]=t_display[temp_ne555/10%10];
    
    smg_code[4]=t_display[temp_ne555%10];
    smg_code[5]=0;
    smg_code[6]=0;
    smg_code[7]=0;
    
    

}

//数码管显示NE555电压值
void main()
{
    system_init();
    Timer2Init();
    Conuter2_init();
    while(1)
    {
        smg_process();
    }

}


void t2int() interrupt 12           //中断入口
{
    
    smg_display();
    NE555_process();
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值