怎么用51单片机来产生固定的频率

作者&投稿:闭胖 (若有异议请与网页底部的电邮联系)
怎么用51单片机来产生固定的频率~

对单片机的引脚进行固定时间的取反,不就行了。例如12mhz晶振,大概是13.9us取反一次。像高级单片机,自带pwm波输出,设置寄存器,根据公式就可以反推定时器初始值。每13.9us取反一次,一个周期也就是27.8us,1s也就有37k个频率。——来自
诺基亚
Lumia
920

ALE引脚主要是在访问外部程序存储器或数据存储器时用来产生地址锁存信号的输出脉冲用于锁存地址的低8位字节,即使不使用外部存储器他也会以时钟振荡器1/6的频率始终发出固定的正向方波脉冲。仿真的时候需要访问外部存储器就会有信号。

1、首先,你要算,38KHZ的频率对应的周期就是1/38000秒,也就是26.32us(微秒),估算为26微秒;
2、现在,你的外部晶振是11.0592,那么12分频后的机器周期大约是1.0812us。也就是说需要大概24个机器周期来形成一个26微秒;
3、要产生如此精确的时间量,非定时器莫属。那么可以想象,只要根据定时器来定时,每12个机器周期后对输出信号进行一次翻转,那么形成的信号就是一个占空比为50%的周期为24个机器周期即26us的信号了,此信号就是想要的38KHZ频率的信号;
4、那么把定时器设置在模式0、1就都是可以的,因为只需要让它从初值(max-12)计数到最大值max就可以了,设定定时器的中断,在每次中断函数中,对输出信号取反。
5、运行,一切OK!

  第一,可以使用1T单片机使得速度更快
  第二,程序上可以减少输出的采样值精度,比如8位da,应存在255个值,可以删减掉一些点,保留关键点,比如波风波谷,使得存正弦信号的数组数据变小,精度降低,在DA输出端接电容接地,使信号在电容冲放电作用下又回归正弦的波形。
  第三,第二个解决方案是灵活的,如果是固定的正弦信号则可以考虑用一些专门的芯片,这里推荐ICL8308芯片,这个芯片本身就可以产生正弦 三角波,外围电路极少,也不需要编程控制。
  51单片机是对所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8004单片机,后来随着Flash rom技术的发展,8004单片机取得了长足的进展,成为应用最广泛的8位单片机之一,其代表型号是ATMEL公司的AT89系列,它广泛应用于工业测控系统之中。很多公司都有51系列的兼容机型推出,今后很长的一段时间内将占有大量市场。51单片机是基础入门的一个单片机,还是应用最广泛的一种。需要注意的是52系列的单片机一般不具备自编程能力。

如果你把引脚电平在定时中断里取反的话,那你定时频率就是38*2KHZ=76KHZ。然后根据你的晶振算出时钟周期,11.0592不如12M好算我先按12M说那么标准51的话就是1us
1/76KHZ=0.13157毫秒约等于132us,然后这么短时间你用定时方式2自动重装载方式TH*和TL*都设为132就可以了,然后在定时器中断把你对应的引脚取反。


怎么用51单片机来产生固定的频率
1、首先,你要算,38KHZ的频率对应的周期就是1\/38000秒,也就是26.32us(微秒),估算为26微秒;2、现在,你的外部晶振是11.0592,那么12分频后的机器周期大约是1.0812us。也就是说需要大概24个机器周期来形成一个26微秒;3、要产生如此精确的时间量,非定时器莫属。那么可以想象,只要根据定时器来...

51单片机是什么?如何学习它的编程?都用在哪些方面
三、解密 之所以单片机能成为控制核心,设计出包罗万象的应用系统来,是因为开发者利用了单片机提供的种种功能及各种外设。所以,第三阶段我们要掌握单片机的各种功能,再加上诸如传感器、模数转换、扫描显示、串行、中断的应用思维,结合更多的元器件、电子电路知识,逐个学习、体会实际的单片机系统的秘密。四...

如何用51单片机定时器产生一个PWM,频率20kHz,占空比可调的PWM
include<reg52.h> \/\/包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义 sbit KEY1 = P3^1; \/\/定义调速按键 sbit PWM = P1^5; \/\/定义调速端口 unsigned char CYCLE; \/\/定义周期 该数字X基准定时时间 如果是10 则周期是10 x 0.1ms unsigned char PWM_ON ;\/\/定义...

51单片机是用来干什么的?
简单的说是用来存放数据的。51单片机是对所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8004单片机,后来随着Flash rom技术的发展,8004单片机取得了长足的进展,成为应用最广泛的8位单片机之一,其代表型号是ATMEL公司的AT89系列。它广泛应用于工业测控系统之中。很多公司都有51系列的...

什么是51系列单片机
51系列单片机指的就是MCS51单片机。MCS51是指由美国INTEL公司(对了,就是大名鼎鼎的INTEL)生产的一系列单片机的总称,这一系列单片机包括了好些品种,如8031,8051,8751,8032,8052,8752等,其中8051是最早最典型的产品,该系列其它单片机都是在8051的基础上进行功能的增、减、改变而来的,所以人们习惯...

用51单片机都能做什么工程?
当然你可以外接AD芯片,这就要比较成本了。当然单片机选型的问题不止这些,具体问题还得具体分析。做AVR有前途,其实做单片机都差不多,关键是你要学会怎么用,等你会用了,不用的单片机只不过是看个DATASHEET的差别。许多工程用51的单片机足够了 参考资料:自己打的,给点分啊 ...

如何用51单片机制作简易电子钟
MOV A, R1 ;取来8位二进制数 MOV B, #100 DIV AB ;除以100 MOV A, B ;取回余数 MOV B, #10 DIV AB ;再除以10 MOV R4, A ;商是十位数,存放到R4 MOV R5, B ;余数是个位,存放到R5 MOV 42H,R4 mOV 41H,R5 ;R1的BCD码放入41-42H单元 MOV A, R2 ...

51单片机是什么
(2)仪器仪表方面。现代仪器仪表的自动化和智能化要求越来越高,对此最好使用单片机来实现。随着单片机的使用,又将加速仪器仪表向数字化、智能化、多功能化和柔 性化方向的发展。而且,单片机的使用还有助于提高仪器仪表的精度和准确度,简化结构、减小体积及质量而易于携带和使用。并具有降低成本,增强抗干扰...

需要用51单片机做一个数据采集系统,但是要求采样频率达到至少每秒2000次...
肯定要速度快的单片机,比如带ADC的STC12单片机,用定时器设置好每秒中断2000次,每次启动ADC转换一次,这样就得到数据了。当然要存储2000个数据还是问题,如果是8bit的结果,那需要2000字节,12bit结果要4000字节。所以要求单片机本身有很大的RAM或者要扩展RAM才行。但STC12内部才1024字节的RAM,肯定不够用...

什么是51单片机?
单片机是对所有兼容Intel8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8031单片机,后来随着Flashrom技术的发展,8031单片机取得了长足的进展。很多公司都有51系列的兼容机型推出,很长的一段时间内将占有大量市场。51单片机是基础入门的一个单片机,需要注意的是52系列的单片机一般不具备自编程能力。...

乔口区13774233550: 51单片机中如何利用I/O口产生一定频率的方波 -
巫筠莱恩: 可以用定时器中断实现这样的处理,这种方法重点在于根据你的晶振频率计算出定时器中断的参数,然后就可以很好的控制定时器中断触发的时间了.只要在中断处理过程里不断的让I/O口取反,就可以实现这样的方波了.// 常数定义#define ...

乔口区13774233550: 单片机的晶振频率怎么确定? -
巫筠莱恩: 根据使用需要确定,举例:如果要产生标准的串口波特率,应使用11.0592MHz,如果要让51单片机产生整数的时钟频率可使用12MHz或者24MHz单片机. 另外根据单片机本身的参数,不要选择过高的频率,否则会工作不稳定.举例:Atmega8...

乔口区13774233550: 51单片机的频率是如何计算出来的? -
巫筠莱恩: 不是计算出来的,设计的时候就是这样的.12个晶振周期才能完成一条指令的执行,开始取下一个指令.现在的STC 51就能在6个晶振周期完成一条指令的执行.

乔口区13774233550: 如何利用51单片机产生一个200HZ的三角波 -
巫筠莱恩: 用IO口结合定时器产生100HZ的方波,再用积分电路输出三角波.

乔口区13774233550: 51单片机 p1口产生一个固定频率的占空比50%的方波信号的程序 -
巫筠莱恩: while(1) {p1=0xff; delayms(num); p1=~p1; delayms(num); //括号里面数字需要根据你方波周期大小及单片机晶振确定 } void delay(void) { int x; for(x = 0;x < 500;x++) //500只是瞎写同上根据需要自己确定一个值 } void delay_ms(unsigned char num) { int x; do{ num--; for(x = 0;x < 500;x) x++; } while(num > 0x01); }

乔口区13774233550: 如何用51单片机输出500kHz的时钟频率 -
巫筠莱恩: 对于传统51单片机,如果晶振12M,不断地执行访问外部存储器指令,ALE引脚上可以输出500kHZ的脉冲信号

乔口区13774233550: 怎么用C写一个让51单片机发生一个频率40K标准的方波 -
巫筠莱恩: 汇编语言可以很准的,准确率可以达到百分百.40K的频率,一周期就是25us,高电平才12.5us,换句话说12.5us在中断程序里面取反.但是中断服务程序的一些语句占用的时间可能就超过了12.5us,这样的话,频率肯定远远小于40K,即便中...

乔口区13774233550: 如何利用单片机产生500HZ的信号 -
巫筠莱恩: 使用单片机的定时器可以产生500Hz的信号 以51单片机为例,程序如下:#include<reg51.h> sbit Wave=P1^6; unsigned char k=0; void main() { Wave=0; EA=1;//开总中断 TMOD=0x01;//设置定时器0为工作方式1 TH0=(65536-10000)/256; TL0=(...

乔口区13774233550: 如何让51单片机输出可以调节的频率 -
巫筠莱恩: 如果是用定时器来做,那么改变定时器的初值就可以调节频率.如果是用延时函数来做,那么改变延时时间就可以调节频率.

乔口区13774233550: 大神求助,怎么用51单片机产生正弦信号,要求是20kHz以下的连续可调的频率.且不能用集成度高的专用芯片 -
巫筠莱恩: 要连续可调的频率……这就是最大的难度了,比如20KHz,19.999KHz,19.998KHz.......如果这样的连续,除了DDS之外,估计想用单片机的定时器模拟SPWM基本不可能.就算是用方波进行低通滤波得到正弦波,但是连续频率的方波产生难度也是很大的,需要使用PLL……嗯,估计只有这个办法了.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网