mega328p中文资料片内adc的精度会受什么影响

当熔丝编程引脚将被覆盖任何時钟源,包括内部RC

振荡器可以在时钟输出上CLKO选择。如果系统时钟预分频器是 使用时它是分割的系统时钟被输出。 8.10定时器/计数器振荡器

ATMEGA48PA/88PA/168PA/328P采用了相同的晶体振荡器低频振荡器 和定时器/计数器振荡器。请参阅“低频晶体振荡器”第32页上的细节 振荡器和晶体的需求

ATMEGA48PA/88PA/168PA/328P分享定时器/计数器振荡器引脚(TOSC1和TOSC2) 与XTAL1和XTAL2。当使用定时器/计数器振荡器系统时钟必须是 四倍的振荡器频率。由于这一点该引脚共享,定时器/计數器振荡器 当标定的内部RC振荡器作为系统时钟源只能被使用

使用一个外部时钟源TOSC1可以,如果EXTCLK ASSR寄存器来实现的 写入逻辑1参见“定时器/计數器的异步操作”155页上的进一步 说明在选择外部时钟输入,而不是一个32.768 kHz的钟表晶体 8.11系统时钟预分频器

该ATMEGA48PA/88PA/168PA/328P有一个系统时钟分频器,系统时鍾可以 通过设置“CLKPR - 时钟预分频寄存器”分为377页上的这一功能可以 使用时的要求降低了系统的时钟频率和消耗电力

对处理能力低这可以与所有的时钟源的选择可以使用的,并且会影响到

CPU和所有同步外设的时钟频率 clkI / O驱动,clkADC都clkCPU和clkFLASH 由系数被划分为示于表28-3318页上。 表8-16启动时间为外部时钟选择 电源条件

启动时间从掉电 和省电

当预分频器设置之间切换时,系统时钟预分频器确保没有 毛刺发生在时钟系统它还确保没囿中间频率高于

既没有相应的时钟频率为以前的设置,也没有时钟频率对应的 到新的设置纹波计数器实现预分频器运行在

频率的未分割嘚时钟,这可能比CPU的时钟频率快的因此,它 是不可能的以确定预分频器的状态 - 即使它是可读的,并且确切的 它需要从一个时钟分频切換到另一个时不能精确地预测。从 时间CLKPS值被写入它需要T1 + T2和T1+2* T2之间才新

时钟频率是有效的。在此区间2个时钟边沿产生。这里T1是以前 时鍾周期,T2是对应于新的预分频比设定的时间段

为了避免时钟频率的无意改变,一个特殊的写程序必须befollowed到 改变CLKPS位:

1写时钟分频器变化使能(CLKPCE)位一和所有其他bitsin CLKPR为零。

2在四个周期,同时将零写入CLKPCE写入所需的值CLKPS 必须禁止中断,改变预分频器设置时要确保写程序 不中断 37

振蕩器校准寄存器用来调整校准的内部RC振荡器 从消除振荡器频率的工艺变化。预编程的校准值 在复位时自动写入该寄存器使工厂校准的频率为

317页的表28-1中指定的应用软件可以写这个寄存器来改变

振荡器的频率。该振荡器可以进行校准以频率如表中指定的28 1页317校准的范围之外,鈈能保证

请注意,此振荡器用于EEPROM和Flash的写访问而这些写

次将相应地受到影响。如果EEPROM或Flash写不进行校准,以更 超过880兆赫否则,EEPROM或Flash写可能會失败 该CAL7位确定操作的振荡器的范围内。该位设置为0使

最低的频率范围内该位设置为1,给出了最高的频率范围这两个频率 范围是重疊的,换句话说OSCCAL=0x7F的设置提供了一个更高的 频率高于OSCCAL=0x80的

该CAL6..0位用于调整选定范围内的频率。 0×00的设置 使在该范围内的最低频率到0x7f的设置使頻率最高的 范围。

?位7 - CLKPCE:时钟预分频器变化使能

该CLKPCE位必须写入逻辑1以使能CLKPS位。该CLKPCE 当CLKPR其他位被同时写入到零位才会更新 CLKPCE在 由硬件清零写入㈣个周期后或当CLKPS位写入。重写

在此超时期限CLKPCE丝毫没有延长超时时间也没有清除 CLKPCE位。

?位3..0 - CLKPS3..0:时钟预分频器选择位3 - 0 这些位定义所选时钟源和内蔀系统之间的分频因子

时钟这些位可以被写入运行时间来改变时钟频率,以适应应用程序 要求由于分频器分频主时钟输入到MCU,所有同步速度 当分频系数是用来外设降低该部门的因素中给出 表8-17第38页。 位7 6 54 3 210

读/写读/写读/写读/写读/写读/写读/写读/写读/写 初始值标定值 位7 6 54 3 210

CKDIV8熔丝位决定CLKPS位的初始值若CKDIV8未编程, CLKPS位将被重置为“0000”如果CKDIV8已编程,CLKPS位复位到 “0011”给人8日开始了分频因子。这个功能应该如果选定的时钟被用于 源具有的频率高于该装置在本操作的最大频率

条件需要注意的是任何值可被写入CLKPS位不管CKDIV8的 保险丝设置。该应用软件必须确保有足够的分頻系数选择如果 所选择的时钟源具有更高的频率比该装置的最大频率 本操作条件。该设备出厂时CKDIV8熔丝编程 表8-17。时钟预分频器选择

睡眠模式可以使应用程序关闭没有使用的模块的MCU从而节省 电源。 ***R具有不同的睡眠模式允许用户定制功耗 应用程序的需求。

当启用时欠压檢测器(BOD)的主动监测过程中,电源电压

睡眠周期以进一步节省电力,所以能够禁止BOD在一些睡眠模式

请参阅第40页上的“董事会禁用”嘚更多细节。 9.1睡眠模式

ATMEGA48PA/88PA/168PA/328P以及它们的分布。此图在选择一个有帮助的 合适的睡眠模式表9-1给出了不同的睡眠模式,他们唤醒源董事会 禁用嘚能力

注:1,仅推荐与选定的时钟源为外部晶体或谐振器 2,如果定时器/计数器运行在异步模式下 3,对于INT1和INT0只级中断。

要输入任何睡眠模式的在SMCR的SE位必须写入逻辑1和

SLEEP指令必须执行。该SM2SM1和SM0位在SMCR寄存器选择 睡眠模式(空闲模式,ADC噪声抑制省电,省电待机,或扩展 待机)将由SLEEP指令被激活参见第44页的表9-2总结。 如果使能的中断而MCU处于休眠模式下MCU唤醒。该MCU 然后停止对除了启动时间的四个周期,执行Φ断程序并 返回到SLEEP的下一条指令。寄存器文件的内容并

SRAM不会改变时,该设备从睡眠中醒来如果在睡眠过程中发生了复位, 在MCU唤醒后從中断向量开始执行

表9-1。主动时钟域和唤醒源在不同的睡眠模式 有源时钟域振荡器唤醒源 软件

当欠压检测器(BOD)由BODLEVEL保险丝,表27-7启用296页 在睡眠期间的BOD是主动监视电源电压。为了节省电量

可以通过软件禁用生化需氧量一些睡眠模式,参阅第220页表9-1 然后39睡眠模式下的功耗將是在同一水平时的BOD是全局

通过保险丝禁用。如果董事会在软件中禁用BOD的功能立即关闭 进入睡眠模式之后。一旦唤醒从睡眠,生化需氧量自动重新启用 这可确保安全操作的情况下的VCC电平已在休眠周期期间下降。 当BOD已被禁用从睡眠模式唤醒时间约为60

μs的,以确保董事會正常工作之前MCU继续执行代码。

BOD禁用由位6控制BODS(BOD休眠)中的控制寄存器MCUCR,见 “MCUCR - MCU控制寄存器”第44页上写位后关闭相关的董事会 睡眠模式而在这一点零董事会保持活跃。默认设置保持积极的BOD 即BODS设置为零。

写入BODS位由时序控制和使能位请参阅“MCUCR - 第44页上的MCU控制寄存器“。 9.3空閑模式

模式下CPU停止运行,而SPIUSART,模拟比较器ADC,两线串行 接口定时器/计数器,看门狗和中断系统继续工作这种睡眠 模式基本停止了clkCPU囷clkFLASH,同时允许其他时钟运行 空闲模式使MCU从外部触发中断以及唤醒内部 象定时器溢出与USART传输完成中断。如果唤醒从

模拟比较器中断并不是必需的模拟比较器可以通过断电

设置在模拟比较器控制和状态寄存器ACD位 - 钢芯铝绞线。这将 减少在空闲模式下的功耗如果ADC使能,转换会洎动启动 当这种模式进入 9.4 ADC噪声抑制模式

当SM2..0位写入001,SLEEP指令使MCU进入ADC 降噪模式下CPU停止运行,而ADC外部中断,2 - 线接口地址配置定时器/计数器(1)和看门狗继续工作 (如果已启用)。这个睡眠模式只停止了clkI/ OclkCPU和clkFLASH,同时允许其他 时钟来运行

这提高了噪声环境下的ADC,可实现更高分辨率的测量如果 ADC使能,进入此模式的转换会自动启动除了从

//函数功能: Ai端口初始化 //转换数据对齊(右对齐) //函数功能: 读AD转换值 //函数功能: 取电压值 //函数功能: Pwm端口初始化 //函数功能: 设定PWM占空比 //函数功能: Uart端口初始化 ////函数功能: 发送一个字节 //函数功能: 发送一个字节 //函数功能: 串口发送数据 //函数功能: 取一个字节 //函数功能: 串口读数据 //函数功能: UART1接收中断服务 //函数功能: UART1发送中断服务(数据寄存器为空)
//函数功能: Ai端口初始化 //转换数据对齊(右对齐) //函数功能: 读AD转换值 //函数功能: 取电压值 //函数功能: Pwm端口初始化 //函数功能: 设定PWM占空比 //函数功能: Uart端口初始化 ////函数功能: 发送一个字节 //函数功能: 发送一个字节 //函数功能: 串口发送数据 //函数功能: 取一个字节 //函数功能: 串口读数据 //函数功能: UART1接收中断服务 //函数功能: UART1发送中断服务(数据寄存器为空)

参考资料

 

随机推荐