学习51单片机晶振这21问题搞懂了学单片机就简单了

发布者:theta18最新更新时间:2024-03-20 来源: elecfans关键字:51单片机  晶振  串口通信 手机看文章 扫描二维码
随时随地手机看文章

在初学51单片机的时候,总是伴随很多有关与晶振的问题,其实晶振就是如同人的心脏,是血液的是脉搏,把单片机的晶振问题搞明白了,51单片机的其他问题迎刃而解……

有关51单片机有关晶振的问题一并总结出来,希望对学51的童鞋来说能有帮助。

学习51单片机晶振这21问题搞懂了学单片机就简单了

一,为什么51单片机爱用11.0592MHZ晶振?

其一:因为它能够准确地划分成时钟频率,与UART(通用异步接收器/发送器)量常见的波特率相关。特别是较高的波特率(19600,19200),不管多么古怪的值,这些晶振都是准确,常被使用的。

其二:用11.0592晶振的原因是51单片机的定时器导致的。用51单片机的定时器做波特率发生器时,如果用11.0592Mhz的晶振,根据公式算下来需要定时器设置的值都是整数;如果用12Mhz晶振,则波特率都是有偏差的,比如9600,用定时器取0XFD,实际波特率10000,一般波特率偏差在4%左右都是可以的,所以也还能用STC90C516晶振12M波特率9600,倍数时误差率6.99%,不倍数时误差率8.51%,数据肯定会出错。

这也就是串口通信时大家喜欢用11.0592MHz晶振的原因,在波特率倍速时,最高可达到57600,误差率0.00%。用12MHz,最高也就4800,而且有0.16%误差率,但在允许范围,所以没多大影响。

二,在设计51单片机系统PCB时,晶振为何被要求紧挨着单片机?

原因如下:晶振是通过电激励来产生固定频率的机械振动,而振动又会产生电流反馈给电路,电路接到反馈后进行信号放大,再次用放大的电信号来激励晶振机械振动,晶振再将振动产生的电流反馈给电路,如此这般。当电路中的激励电信号和晶振的标称频率相同时,电路就能输出信号强大,频率稳定的正弦波。整形电路再将正弦波变成方波送到数字电路中供其使用。

问题在于晶振的输出能力有限,它仅仅输出以毫瓦为单位的电能量。在IC(集成电路)内部,通过放大器将这个信号放大几百倍甚至上千倍才能正常使用。

晶振和IC间一般是通过铜走线相连的,这根走线可以看成一段导线或数段导线,导线在切割磁力线的时候会产生电流,导线越长,产生的电流越强。现实中,磁力线不常见,电磁波却到处都是,例如:无线广播发射、电视塔发射、手机通讯等等。晶振和IC之间的连线就变成了接收天线,它越长,接收的信号就越强,产生的电能量就越强,直到接收到的电信号强度超过或接近晶振产生的信号强度时,IC内的放大电路输出的将不再是固定频率的方波了,而是乱七八糟的信号,导致数字电路无法同步工作而出错。

所以,画PCB(电路板)的时候,晶振离它的放大电路(IC管脚)越近越好。

三,单片机电路晶振不起振原因分析

遇到单片机晶振不起振是常见现象,那么引起晶振不起振的原因有哪些呢?

①PCB板布线错误;

②单片机质量有问题;

③晶振质量有问题;

④负载电容或匹配电容与晶振不匹配或者电容质量有问题;

⑤PCB板受潮,导致阻抗失配而不能起振;

⑥晶振电路的走线过长;

⑦晶振两脚之间有走线;

⑧外围电路的影响。

解决方案,建议按如下方法逐个排除故障:

①排除电路错误的可能性,因此可以用相应型号单片机的推荐电路进行比较。

②排除外围元件不良的可能性,因为外围零件无非为电阻,电容,很容易鉴别是否为良品。

③排除晶振为停振品的可能性,因为不会只试了一二个晶振。

④试着改换晶体两端的电容,也许晶振就能起振了,电容的大小请参考晶振的使用说明。

⑤在PCB布线时晶振电路的走线应尽量短且尽可能靠近IC,杜绝在晶振两脚间走线。

四,51单片机时钟电路用12MHZ的晶振时那电容的值是怎样得出来的?拿内部时钟电路来说明吧!

其实这两个电容没人能够解释清楚到底怎么选值,因为22pF实在是太小了。这个要说只能说和内部的振荡电路自身特性有关系,搭配使用,用来校正波形,没有人去深究它到底为什么就是这么大的值。

19.89c52单片机如果不接晶振会有什么后果?

单片机不工作了,程序无法烧入……等等

五,单片机晶振电路中两个微调电容不对称会怎样?相差多少会使频率怎样变化?在检测无线鼠标的接受模块时,发现其频率总是慢慢变化(就是一直不松探头的手,发现频率慢慢变小)晶振是新的!

电容不对称也不会引起频率的漂移,说的频率漂移可能是因为晶振的电容的容量很不稳定引起的,可以换了试,换两电容不难,要不就是的晶振的稳定性太差了,或者测量的方法有问题.

六,单片机晶振与速度的疑问,执行一条指令的周期不是由晶振决定的吗。那么比如51单片机和MSP430,给51接高速晶振,430接低速的,是不是51跑的要快?是不是速度单片机速度仅仅与晶振有关,关键是单片机能不能支持那么大的晶振?

每个单片机的速度是受到内部逻辑门电平跳变速度限制的。两个芯片同时使用同样的晶振,比如12M的。因为AVR是RISC指令集,它在同样外部晶振频率下,比51要快。

比如,51最快能接40M,AVR是16M的晶振。

STC89C52大都用12MHz晶振,但由于其12个时钟周期才是一个机器周期,相当于其主频只有1MHz。

MSP430采用RISC精简指令集,430单片机若采用内部DCO震荡可达21MHz主频。单个时钟周期就可以执行一条指令,相同晶振,速度较51快12倍。

对于一个51,给他用更高的晶振,速度会快些。但是对于高级的单片机就不一样了。高级单片机内部,一般都是有频率控制寄存器的,所以,简单的增加晶振,可能达到单片机的极限,导致跑飞。

学习51单片机晶振这21问题搞懂了学单片机就简单了

七,请问:有什么方法可以确定某一款单片机在某一大小的晶振下是否能正常工作?

晶振选择太高不太合适,具体晶振上限是多少,恐怕测不出来,只能按照人家单片机的要求,一般STC系列单片机上限是35M或40M,stc单凭上写的有,如STC11F16XE35I-LQFP44G其中35I就是晶振最高35M的工业级芯片。

超过上限会出现什么样的问题,没有测试过,一般晶振选择12M的比较多,如果选择STC1T指令的,就相当于12*12=144M的晶振。如果用于串口通信,建议选用11.0592M的或22.184M,选择晶振最主要还是参照人家的说明书。

八,4个AT89C51单片机能否用一个12M的晶振使其都正常工作?一个采用内部时钟方式,其余三个用外部方式...那四个都用内部方式可以不(将4个单片机都并联在一个晶振上)?

可以,其中一个正常接晶振,他的XTAL2输出接到另外三个的XTAL1输入上。


九,单片机的运行速度和晶振大小的关系,若单片机的最高工作频率是40M,晶振是否可以选择24M或更高,但不超过40M,这样单片机的运行速度是否大增?长期在此工作频率下对单片机是否有不良影响?单片机对晶振的选择的原则是怎样的?

当然是有影响的,单片机的工作速度越快,功耗也越大,受干扰也会越厉害,总之最高能跑40M的,跑不超过40M的是没有问题的,只是对相关的技术(如PCB的设计元件的选取等)会高去很多.

十,89c51单片机的复位电路中常采用12MHZ的晶振,实际上市场上稍小于12MHZ,为什么呢?

答:需要串口通讯时一般是用11.0582MHZ的,这样波特率才好算。

用12MHZ的工作周期就容易计算。

学习51单片机晶振

十一,单片机晶振上电不起振,但是手碰一下晶振就起振了,为什么?怎么判断单片机晶振是否起振呀?

看看晶振配的电容焊了没有,值有没有错误?

最简单是用示波器,另外可以看一下电源是否正常。

十二,怎样判断单片机外部晶振有没有起振?的STC89C52单片机本来是好好的后来不行了,换了个晶振就好了。但是过了几个小时后又不行了,是怎么回事。还有就是怎样判断晶振是否起振?

①先换一块单片机试试,问题还在则排除单片机;

②可能是虚焊造成的,这点要注意;

③用STC89C52也碰到过类似的问题,换了块晶振就OK了,好像STC起振不橡AT89S52那么顺。其实对于STC89C52可以直接看30脚(ALE),接个灯,起振一下子就能看出来了。

十三,51单片机晶振上接的电容大小该如何选择?是晶振越大,电容值也要大一些吗,一般常用多大的。有人说常用的从15-33pf,具体如何选择效果最好?比如分别用一个6M和12M的晶振,用多大电容更合适?

15-33pf都可以们一般用的是15P和30P晶振大小影响不大们常用的4M和12M以及11.0592M和20M24M们都用的30P单片机内部有相应的整形电路们不必担心。

十四,没有程序的空白单片机,外部晶振能起振么?

没有内部晶振的单片机,外部晶振可以起振,如传统类MS51系列单片机有内部晶振的单片机,外部晶振不会起振,需要对外部晶振进行配置后才会起振,如果不对外部晶振进行配置仍使用内部晶振,如siliconlab系列C8051F020单片机

十五,为什么at89c52P1.0输出2.5v电压,单片机好像未工作,晶振波形是不规则的正弦波可不可以?线路板没有达到预想效果,发光二极管一直亮,感觉还是单片机的问题,P1.0输出2.5v电压,看门狗用的X5045。怎么回事?

将看门狗拿掉,暂时做成最小系统,既只有电源、8952、晶振和两只30P左右的电容。

①将P1.0口置1,测试该口的电压是否在2.5V以上;

②将P1.0口置0,测试改口电压是否约为0V。

是的话就是OK的,否则就要看看电源电压、晶振、8952了。电源电压是5+、-0.25V,且纹波一定要小

十六,制作max232下载单片机,工作电压都正常,要外加晶振嘛?

当然要加,如果没有外加晶振,那么单片机的时钟电路就没有了,导致单片机串口就不能进行数据传输了,最终这个下载器具就不能下载程序了。

十七,若89c52单片机使用外接晶振,应如何设置?

晶振的两个管脚各接一个20~30pf的电容后分别接入单片机的XTAL1和XTAL2,两个电容的另一端并接后接地即可,不再需要任何设置

十八,晶振的原理,如何产生正弦信号的,详细一点,从电路方面分析?

晶体可以等效为一个电感,与里面的电容形成振荡回路,能量从电感慢慢到电容,再从电容慢慢到电感,周而复始形成振荡。正半周是电容的充放电过程,负半周是电感的充放电过程。

十九,现在要用52单片机做一个交通灯电路。要求是红灯,绿灯30s,黄灯3s。循环变化。那么外界晶振怎样选择?单指令周期多少比较合适?图中外接的两个电容的作用是什么?大小多少合适?

如果选择晶振的话,那两个电容值可以选择:30加减10PF左右的(频率在0~33MHZ之间);

如果选择陶瓷晶振的话,电容值可以选择:40加减10PF左右的(频率在1.2~12MHZ)振荡器应尽量靠近电容。指令周期是可以算的,这个是有公式的!

二十,89c52单片机晶振频率才12兆,太小了,怎样能改大晶振频率?

外接18.432或者24MHz的晶振。或者换4T的W77E58单片机,这样相当于把工作频率提高3倍。或者换1T的DS89C4XX单片机,这相当于把工作频率提高8倍!用1T的STC12C5A60S2单片机也有这样的效果。

二十一,单片机不能正常工作,晶振问题?如何去检查晶振正常还是不正常?另外看到说晶振跟两个小电容要离得很近,几乎都没剪引脚(就是买回来多长就多长)就插上去了,这个也有关系吗?

用万用表测量单片机连接晶振的两个引脚,正常起振的状态下电压大概比供电电压的1/2略低一些,如果其中一个或全部引脚为电源电压或零就表明没起振。那个引脚长些一般不会有什么影响,相比之下接地更关键些,两个谐振电容接地端到单片机的电源地要尽量近些。


关键字:51单片机  晶振  串口通信 引用地址:学习51单片机晶振这21问题搞懂了学单片机就简单了

上一篇:c51特殊功能寄存器定义及作用
下一篇:基于51单片机的湿度监测仿真和程序

推荐阅读最新更新时间:2026-03-20 12:02

51单片机晶振与定时器
Part1 晶振 晶振,也就是晶体振荡器,主要作用是产生稳定的振动频率用于单片机时钟电路。 一、晶振的工作原理 压电效应: 如图所示,晶体振荡器主要由引线构成的电极和晶体片构成。 当我们在晶体两电极外加电压后,晶体会发生形变,反过来,如果外力使得晶体变形,两极上又会产生电压。 因此当我们在晶体两端施加一个交变电压时,随着电压正负的改变,晶体交替形变,进而以一定的频率发生谐振–单频振荡(振荡频率固定不变)。 二、晶体单频振荡产生时钟脉冲 我们知道,脉冲信号是一个按一定电压幅度、一定时间间隔连续发出的信号。 而我们的晶体振荡器,既有电压幅度–晶体两端施加的电压,又有时间间隔–振荡频率 f 的倒数作为周期。因此我
[单片机]
<font color='red'>51单片机</font>之<font color='red'>晶振</font>与定时器
51单片机串口通信详解:PROTEUS仿真实践指南
一.仿真电路搭建 1.PROTEUS中器件名称 只需要51单片机、虚拟串口即可。 注:虚拟串口软件请自行上网搜索,网络资源较多,这里不赘述。 2.仿真电路 二.软件设计 1.波特率设置 进入STC-ISP软件,点击波特率计算器,根据自己单片机型号、频率及所需要使用的定时器进行相应设置。 这里,博主系统频率为11.0592MHZ,波特率需求为9600,定时器1发生波特率,8位自动重载,具体见下图。 设置完成后复制并粘贴到自己的代码文件。 2.串口发送函数及例程 (1)串口发送函数 // 字符传递函数,用于通过串口发送一个字节的数据 void UART_SendByte(unsigned char Byte) {
[单片机]
<font color='red'>51单片机</font><font color='red'>串口通信</font>详解:PROTEUS仿真实践指南
51单片机学习(6)- 串口通信
本次是学习单片机中的串口通信,实验部分会用到蓝牙模块来实现手机和单片机之间的通信 编程软件:keil4 烧录软件:STC-IPS 材料:郭天祥TX-1C单片机 内容关键点: 1 串行口通信方式 单片机通信是指单片机与计算机或单片机与单片机之间的信息交换; 通信有并行和串行通信两种方式,现在以串行为主; 串行通信是将数据字节分成一位一位的形式在一条传输线上逐个地传输,此时只需要一根数据线,外加一条公共信号地线和若干控制信号线。 串行通信的必要过程:发送数据时,要把并行数据变成串行数据发送到线路上去,接收时,要把串行信号再变成并行数据,这样才能被计算机或其他设备处理。 串行通信可分为异步和同步: 异步串行通信:指通信的发送和接收设
[单片机]
基于51单片机(stc12c5a60s2)和Nrf24l01P无线模块的串口通信
NRF24L01.H源码和注解: #ifndef __NRF24L01_H__ #define __NRF24L01_H__ #include STC12C5A60S2.H #include intrins.h #define uchar unsigned char #define uint unsigned int #define MODE 0 //MODE=1时 为发送代码 MODE=0时 为接收代码 //****************************************IO端口定义*************************************** sbit MISO = P3 ^
[单片机]
51单片机如何实现串口通信?它的工作原理是什么?
51单片机是一种常见的微控制器,它具有串行通信接口(Serial Communication Interface,SCI)。通过串口通信接口,51单片机可以与其他设备或系统进行串行通信,实现数据传输和控制。 串口通信接口的工作原理是将要传输的数据或命令按照一定的协议进行编码,然后通过串行通信接口逐位传输。在接收端,串行通信接口将接收到的数据进行解码,还原成原始的数据或命令,并进行相应的处理。 具体来说,51单片机的串行通信接口一般包括以下几个部分: 1. 串行数据输入寄存器(RX):用于接收从外部设备或系统传输过来的数据或命令,并将其存储在寄存器中。 2. 串行数据输出寄存器(TX):用于将需要发送的数据或命令存储
[单片机]
51单片机串口通信实验电路详解
  51单片机是对所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8004单片机,后来随着Flash rom技术的发展,8004单片机取得了长足的进展,成为应用最广泛的8位单片机之一,其代表型号是ATMEL公司的AT89系列,它广泛应用于工业测控系统之中。   很多公司都有51系列的兼容机型推出,今后很长的一段时间内将占有大量市场。51单片机是基础入门的一个单片机,还是应用最广泛的一种。需要注意的是51系列的单片机一般不具备自编程能力。   单片机的串口通信看起来是很复杂的,主要是因为他用到了更多的寄存器,与前面的知识相比他更具综合能力,写起来考虑的问题自然也变多了。而前面学习过的定时器
[单片机]
<font color='red'>51单片机</font><font color='red'>串口通信</font>实验电路详解
51单片机基础之串口通信
原理: 这里需要解释一下,串口通信是需要占用定时器1的,所以使用了串口通信就不能使用定时器1,除非是代码优化。 这个需要配置几个寄存器,都比较简单,TMOD寄存器设置定时器计数器的工作方式,SCON则是设置串口通信的工作方式,PCON则是波特率加倍操作,都是比较简单的。 计时器初始值的设置有专门的工具 链接:https://pan.baidu.com/s/1BSi8YCaRWtBGLaV2gslpSw 提取码:1234 使用方法: 设置定时器工作方式,单片机晶振,所需波特率,是否开启倍频,最好让误差为零。 代码: #include reg51.h typedef unsign
[单片机]
<font color='red'>51单片机</font>基础之<font color='red'>串口通信</font>
51单片机~串口通信
(一)计算机串行通信原理: 综上:所以在设置的时候,经常将SCON设置为0X50==0101 0000 ,使用方式1. (二)工作: 中断控制 led灯,每发送一条指令灯亮或灭(反转一下) #include reg52.h typedef signed char int8; typedef signed int int16; typedef signed long int32; typedef unsigned char uint8; //字符型 typedef unsigned int uint16; typedef unsigned long
[单片机]
<font color='red'>51单片机</font>~<font color='red'>串口通信</font>
小广播
最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

厂商技术中心

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2026 EEWORLD.com.cn, Inc. All rights reserved