校准的ATmega88片内 RC 振荡器提供了固定的 8.0 MHz 的时钟 这是在 3V、25 C 下的标称数值。 器件出厂时CKDIV8熔丝位已经被编程,请参见 P31”系统时钟预分频器” 。按照Table11 对熔丝位 CKSEL 进行编程即可将其作为系统时钟。
选择这个时钟之后就无需外部器件了。复位时硬件将标定字节加载到 OSCCAL 寄存器,自动完成对 RC 振荡器的标定。在3V、25 C 时,这种标定可以提供标称频率 ± 1%的精度。 通过改变 OSCCAL 寄存器,标定可以使振荡器在 7.3 - 8.1 MHz 的范围内的精度达到 ± 1%。
当使用这个振荡器作为系统时钟时,看门狗振荡器继续为看门狗定时器和溢出复位提供时钟。更多的有关标定数据的信息请参见 P259” 校准字节 ” 。
选择了这个振荡器之后,启动时间由熔丝位 SUT确定,如 P28Table12 所示。
振荡器标定寄存器- OSCCAL
· Bits 7..0 – CAL7..0: 振荡器标定数据
将标定数据写入这个地址可以对内部振荡器进行调节以消除由于生产工器频率偏差。这在芯片复位时自动完成。 25°C 时振荡器频率为 8.0 MHz。应用软件可对 该寄存器进行写操作来改变振荡器频率。振荡器频率范围在 7.3 - 8.1 MHz 内标定精度可达到 ±1%以内,频率超出此范围则无法保证。
注意该振荡器用来为 EEPROM与 Flash 的写访问定时,从而对相应的时序产生影响。如果需要对 EEPROM 或 Flash 执行写入操作,不要将频率标定到高于 8.8 MHz。否则对EEPROM 或 Flash 的写操作将会失败。
CAL7位决定振荡器工作范围。将该位置0给出低端频率范围,而将该位置1则给出高端频率范围。这两个频率范围是有重叠的,也就是说 OSCCAL = 0x7F 给出的频率高于OSCCAL = 0x80。
CAL6..0位 用来调节被选中范围内的频率。设置为0x00表示该范围中的最低频率,设置为0x7F表示该范围中的最高频率。 当频率范围在7.3 - 8.1MHz时,CAL6..0中的值增加1频率值增加低于 2%。
上一篇:ATmega88 外部时钟
下一篇:ATmega88 外部RC振荡器
推荐阅读最新更新时间:2024-11-09 11:32
设计资源 培训 开发板 精华推荐
- 博世力士乐二期将新增12条组装技术和线性传动技术生产线
- 巴西iPhone12系列售价最贵;联通最快明年2G全面退网
- 信通院:10月国内5G手机出货1676万部,连续5个月占比超过60%
- NetApp ONTAP数据管理软件,助力企业加快数字化转型步伐
- Nordic低功耗蓝牙传感器持续监测吉他温湿度,提供高效保护
- NXP与NuCurrent合作,以扩展Qi无线充电的范围
- 微星AMR无人车队智慧转型,协助粗力产业自动化
- Arm Ethos-U65 microNPU对边缘计算市场意味着什么?
- 是德Vision X 与 Gigamon GigaVUE HC3性能比拼
- 慧联无限用LoRa技术为进博会筑起安全屏障