99问答网
所有问题
51单片机定时/计数器作为计数器如何用C语言编程控制 来记录外部脉冲个数
如题所述
举报该问题
其他回答
第1个回答 2011-04-29
你可以利用单片机的p3.2或p3.3口来接受外部脉冲,利用外部中断函数实现计数功能。。。。。。呵呵。
追问
我想实现的功能是:来一个频率的方波,例如10KHZ,通过编程 实现输出脉冲个数可调的方波,例如只输出3个周期的方波,不知道如何编程实现
本回答被提问者采纳
第2个回答 2011-05-10
你可以利用内部计数器计数,计数满就产生一个输出,通过改变计数值来实现对外来频率方波的分频
相似回答
51单片机使用
T0和T1
外部脉冲计数
,
C语言如何编程
?
答:
使用T0和T1
外部脉冲计数
,控制两个电机,到1700个脉冲电机停止,--统计
脉冲个数
,用外部中断更好。--T0和T1,留着定时用。用四个按键控制,按键1控制电机正转,按键2控制电机反转,按键3控制电机1正转,按键4控制电机2正转,
怎么用C语言编程
?--编程前,要先设计出来电路。
单片机
接收外来
脉冲
,
计数
程序(
C语言
)
答:
51单片机是有计数功能的,置方式1最大可以计数65536个脉冲
。但要注意脉冲频率要小于晶振频率的1/24 如果只计数的话,不用打开中断功能,只要取出TH0和TL0的值并把它清零即可。初始化程序:void init(){ TMOD=0x05;//方式一,16位计数器 TH0=0;TL0=0;TR0=1;//启动计数器 } 楼下的程序是定时...
51单片机用定时器计数器
测量频率
答:
TMOD=0x15;//
定时器
0
作为计数器
,定时器1
作为定时
器用 TH0=0;//计数器清0 TL0=0;EA=1;//开总中断 ET1=1;//允许定时器1中断 TH1=0x4c;TL1=0x5c;TR0=1;//启动计数器 TR1=1;//启动定时器 aa=0;} void write_com(uchar com)//向液晶屏写命令 { db=com;rs=0;rw = 0;lcden=...
51单片机怎么
产生
外部脉冲
??
答:
当然可以啊,51的定时器/计数器功能,
定时器用
的多了你可能都忘记了
51单片机
有计数的功能,设置TMOD中的c/t位为1,这时
的定时器计数器
就处于计数模式了,可以对P3.4或P3.5引脚的下跳沿计数,你把这两个引脚接个按键就可以了,按一次加1,注意按键的消抖问题,最好使用硬件消抖吧 这样设置定时器/计数器T1,TMOD=0x50...
1,
采用定时
器/
计数器
T0对
外部脉冲计数
,每计数1000个脉冲后,
使用
T1定时...
答:
void Timer0_init() { TMOD |=0x1d; //方式1,16位定时/
计数器
,T0计数,T1定时 TH0 = (65536-1000)/256; //计数器装初值1000,TL0 = (65536-1000)%256;TH1 = (65536-1000)/256; //
定时器
装初值1000, 即 2000uS 中断一次 TL1 = (65536-1000)%256;EA=1; ET0=1; ET1=...
单片机用c语言
编一个程序,要求用内部
定时
/
计数器
对30个
脉冲
进行计数,并...
答:
功能:内部定时/
计数器记录脉冲个数
和这些脉冲通过后所用的时间。硬件:
单片机用
AT89c51,12M晶振。原理:当门控位GATE为“1”时,TR0/1=1,INT0/1才能启动
定时器
。利用这个特性可以测量外部输入脉冲的宽度。分析:设
外部脉冲
由(P3.2)输入,T0工作于定时方式1(16位计数),GATE设为1.测试时,应...
基于
51单片机
的频率测量及测量误差
答:
可以用对单位时间内
脉冲个
计数的方法来实现,用2个 定时/计数器 ,一个
作为定时
器,定时50 ms,累积10次或20次,即0.5S或1S 另外一个
作为计数器
,对
外部脉冲
计数 误差与晶振频率准确度有关,测量与时间有关的量,你本身的时间当然要准确。如果所测信号频率高,可以测0.2s或0.5S内的
脉冲数
,...
51单片机
对
外部脉冲计数
是用中断口INT0还是
定时计数器
T0实现?它们有什...
答:
程序都需要进中断处理程序,软件处理计数。T0计数则是每来一个计数脉冲,硬件自动计数,只有在
计数器
溢出时才触发中断处理。所以,要计数肯定是用T0更好一些,但前提是T0没有做别的功能用。有时用INT0计数,不是INT0好不好用的问题,是51的计数器都被占用了,没办法只好用INT0加软件计数凑合了。
以
51单片机
为基体
用C语言
设计一个
计数器
要求显示数据8位 有复位功 ...
答:
if(keydown_flag)delay(300); 因有键按下,调用延时300mS子程序,以免调整键值的速度过快 } } 主程序结束 void extern_int1(void) interrupt 2 using 1 外中断1服务子程序 { cnt[0]++
; 计数器
的最低位加1 }
大家正在搜
51单片机有几个定时计数器
单片机定时计数器编程
51单片机定时计数器工作原理
单片机定时计数器的作用
51单片机定时计数器工作方式
51单片机定时计数器
单片机定时器与计数器的区别
51单片机的定时器是加计数的
单片机定时计数器实验
相关问题
51单片机定时/计数器的定时功能和计数功能有何不同
51单片机计数器问题,求一C语言程序,实验计算10秒内外部输...
51单片机使用T0和T1外部脉冲计数,C语言如何编程?
怎样用51单片机计数器测量一个高电平脉冲的宽度,c语言程式,...
51单片机怎么用定时器记录两次外部中断的时间?C语言应该如何...
用51 单片机的外部中断和定时计数器测下降沿个数C语言程序
如何编程实现51单片机每隔 t 时间发出一个脉冲?求C语言详...
以51单片机为基体 用C语言设计一个计数器 要求显示数据8位...