PIC单片机常见单片机常见14问问
本文主要简单介绍了PIC单片机常见问题
1、PIC单片机振荡电路中如何选择晶体?
对于一个高可靠性的系统设计,晶体的选择非常重要,尤其设计带有睡眠唤醒(往往用低电压以求低功耗)的系统。这是因为低
供电电压使提供给晶体的激励功率减少,造成晶体起振很慢或根本就不能起振。这一现象在上电复位时并不特别明显,原因时
上电时电路有足够的扰动,很容易建立振荡。在睡眠唤醒时,电路的扰动要比上电时小得多,起振变得很不容易。在振荡回路
中,晶体既不能过激励(容易振到高次谐波上)也不能欠激励(不容易起振)。晶体的选择至少必须考虑:谐振频点、负载电容、
激励功率、温度特性、长期稳定性。
2、如何判断电路中晶振是否被过分驱动?
电阻RS常用来防止晶振被过分驱动。过分驱动晶振会渐渐损耗减少晶振的接触电镀,这将引起频率的上升。可用一台示波器
检测OSC输出脚,如果检测一非常清晰的正弦波,且正弦波的上限值和下限值都符合时钟输入需要,则晶振未被过分驱动;相
反,如果正弦波形的波峰,波谷两端被削平,而使波形成为方形,则晶振被过分驱动。这时就需要用电阻RS来防止晶振被过
分驱动。判断电阻RS值大小的最简单的方法就是串联一个5k或10k的微调电阻,从0开始慢慢调高,一直到正弦波不再被削平
为止。通过此办法就可以找到最接近的电阻RS值
3、晶振电路中如何选择电容C1,C2?
(1)因为每一种晶振都有各自的特性,所以最好按制造厂商所提供的数值选择外部元器件。
(2)在许可范围内,C1、C2值越低越好。C值偏大虽有利于振荡器的稳定,但将会增加起振时间。
(3)应使C2值大于C1值,这样可使上电时,加快晶振起振。
4、PIC系列单片机I/O脚有什么特点?
PIC系列单片机的任意一条I/O管脚都有很强的带负载能力(至少可提供或灌入25mA的电流)。因此,在某些场合,这些管脚可
作为可控的电源。举个例子,在一些低功耗的设计中,希望一些周围的器件在系统待命时不耗电或尽量少耗电
此时可考虑这些器件的电源供电由一条I/O脚负责提供,在工作时MCU在该条管脚上输出高电平(接近VDD)带几个mA的负载绝
对不成问题。若要进入低功耗模式
MCU就在该管脚输出低电平(接近0),被控器件没有了电源也就不会耗电。比如LCD
显示电路、信号调制电路等都非常适合此类控制。
5、为何系统在外界磁场和电场的干扰时不能正常工作?
如果在主控电路中没有滤波电路,您用的芯片在/MCLR端应接一个能保证滤去该端口上的窄脉冲电路。因/MCLR上加的低电
平宽度应大于2US,系统才能复位,而小于2US的低电平将会干扰系统的正常工作。
6、使用带A/D的PIC芯片时,怎样才能提高A/D转换的精度?
(1)保证您的系统的时钟应是适合的。如果您关闭/打开A/D模块,应等待一段时间,该段时间是采样时间;如果您改变输入通
道,同样也需等待这段时间,和最后的TAD(TAD为完成每位A/D转换所需的时间)。TAD可以在ADCON0中(ADCS1、ADCS0)
中选择,它应在2US-6US之间。如果TAD太小,在转换过程结束时,没有完全被转换;如果TAD太长,在全部转换结束之前,
采样电容上的电压已经下降。对该时间的选择的具体细节请参照有关的数据手册或应用公式。
(2)通常模拟信号的输入端的电阻太高(大于10Kohms)会使采样电流下降从而影响转换精度。若输入信号不能很快的改变,建
议在输入通道口用0.1UF的电容,
它将改变模拟通道的采样电压,由于电流的补给,内在的保持电容为51.2PF
(3)若没有把所有的A/D通道用完,最好少用AN0端。因它的下一个脚与OSC1紧靠在一起会对A/D转换造成影响。
(4)最后,在系统中,若芯片的频率较低,A/D转换的时钟首选的是芯片的振荡。这将在很大范围内降低数字转换噪音的影响。
同时,在系统中,在A/D转换开始后,进入SLEEP状态,必须选择片内的RC振荡作为A/D转换的时钟信号。该方法将提高转
换的精度。
7、PIC16C7XX的A/D片内RC振荡器能否用于计数器?
16C71A/D转换器片内RC振荡器的作用是让MCU处于睡眠时(此时主振停振)能有一个时钟源来进行A/D转换。此RC振荡器因
其内部设计的限制不能被其他电路使用。A/D转换器内部RC振荡器钟频典型值为250K,但会随着环境温度,工作电压,产品
批号等不同而有相当的变动。定时器的时钟源可以选择内部的振荡频率,也可以是外部的脉冲输入信号。若你能选择后者,那
就能方便地做到MCU的主频很高而时钟的溢出率较低。不然,除了用软件来计数分频,好象也没有其它招数。另一种选择是
用其它型号的MCU,其内部至少还另有一个TIMER1,因为TIMER1可以有独立的一颗晶体作为时钟振荡的基准,你可以方便
地选用频率低的晶体来完成你的设计。