PIC16F1946/1947:利用SCS位切换时钟源以优化数据科学解决方案

需积分: 27 7 下载量 95 浏览量 更新于2024-08-09 收藏 7.77MB PDF 举报
在Microchip的PIC16F1947数据手册中,章节5.3讨论了时钟切换功能,这对于数据科学解决方案至关重要。该功能允许在系统时钟源之间进行灵活切换,以适应不同的性能需求和应用场景。主要涉及以下几个关键知识点: 1. **系统时钟选择 (SCS) 位**: SCS位位于OSCCON寄存器中,负责控制CPU和外设使用的系统时钟源。当SCS=00时,系统时钟由配置字寄存器中的FOSC<2:0>位决定,这是默认的系统振荡器;SCS=01时,使用Timer1的32kHz晶体振荡器;而SCS=1x时,系统时钟来自由IRCF<3:0>位选定的内部振荡器。 2. **振荡器起振延时状态 (OSTS) 位**: OSCSTAT寄存器的OSTS位指示当前系统时钟源,是外部时钟还是内部时钟。在LP、XT或HS模式下,若OSTS置位,表示振荡器起振定时器超时,不适用于Timer1振荡器。 3. **Timer1振荡器**: Timer1振荡器是独立于主时钟的32.768kHz晶体振荡器,与Timer1外设集成。通过T1OSO和T1OSI引脚连接,它的运行可以优化Timer1的计时操作。启用Timer1振荡器需设置T1CON寄存器中的T1OSCEN位,并确保其就绪后再选择为系统时钟源。 4. **Timer1振荡器就绪 (T1OSCR) 位**: 用户在使用Timer1振荡器前,需检查T1OSCR位,确保其为1,表示振荡器准备就绪。只有在T1OSCR有效时,才能配置SCS位选择Timer1作为系统时钟。 5. **时钟切换注意事项**: 自动时钟切换如双速启动或故障保护时钟监视器可能不会更新OSCCON寄存器的SCS位。用户应监控OSCCON寄存器的OSTS位来确定当前时钟源。对于特定的Microchip产品(如DS41414D_CN),在使用时钟切换功能时,需确保遵循制造商的指南和警告,尤其是与生命安全相关的应用,因为Microchip对此类应用不承担任何责任。 时钟切换是Microchip PIC16F1947单片机设计者在优化性能、降低功耗和确保系统稳定性时的重要工具。理解并正确配置SCS、OSTS和Timer1振荡器的使用有助于构建高效且可靠的嵌入式系统解决方案。