编辑: lonven 2015-08-25

设置AFIO_MAPR的TIM5_CH4_IREMAP位为'

1'

,在内部把LSI连接到TIM5的通道4;

通过TIM5的捕获/比较4事件或者中断来测量LSI时钟频率;

根据测量结果和期望的RTC时间基数和独立看门狗的超时时间,设置20位预分频器. 7.2.6 系统时钟(SYSCLK)选择 系统复位后,HSI振荡器被选为系统时钟.当时钟源被直接或通过PLL间接作为系统时钟时,它将不能被停止. 只有当目标时钟源准备就绪了(经过启动稳定阶段的延迟或PLL稳定),从一个时钟源到另一个时钟源的切换才会发生.在被选择时钟源没有就绪时,系统时钟的切换不会发生.直至目标时钟源就绪,才发生切换.在时钟控制寄存器(RCC_CR)里的状态位指示哪个时钟已经准备好了,哪个时钟目前被用作系统时钟. 7.2.7 时钟安全系统(CSS) 时钟安全系统可以通过软件被激活.一旦其被激活,时钟监测器将在HSE振荡器启动延迟后被使能,并在HSE时钟关闭后关闭. 如果HSE时钟发生故障,HSE振荡器被自动关闭,时钟失效事件将被送到高级定时器TIM1的刹车输入端,并产生时钟安全中断CSSI,允许软件完成营救操作.此CSSI中断连接到Cortex?-M3 的NMI中断. 注意: 一旦CSS被激活,并且HSE时钟出现故障,CSS中断就产生,并且NMI也自动产生.NMI将被不断执行,直到CSS中断挂起位被清除.因此,在NMI的处理程序中必须通过设置时钟中断寄存器(RCC_CIR)里的CSSC位来清除CSS中断. 如果HSE振荡器被直间或间接地作为系统时钟,(间接的意思是:它被作为PLL输入时钟,并且PLL时钟被作为系统时钟),时钟故障将导致系统时钟自动切换到HSI振荡器,同时外部HSE振荡器被关闭.在时钟失效时,如果HSE振荡器时钟(被分频或未被分频)是用作系统时钟的PLL的输入时钟,PLL也将被关闭. 7.2.8 RTC时钟 通过设置备份域控制寄存器(RCC_BDCR)里的RTCSEL[1:0]位,RTCCLK时钟源可以由HSE/

128、LSE或LSI时钟提供.除非备份域复位,此选择不能被改变. LSE时钟在备份域里,但HSE和LSI时钟不是.因此: 如果LSE被选为RTC时钟:只要VBAT维持供电,尽管VDD供电被切断,RTC仍继续工作. 如果LSI被选为自动唤醒单元(AWU)时钟:详见7.2.5节LSI时钟. 如果VDD供电被切断, AWU状态不能被保证 . 如果HSE时钟128分频后作为RTC时钟:如果VDD供电被切断或内部电压调压器被关闭(1.8V域的供电被切断),则RTC状态不确定. 7.2.9 看门狗时钟 如果独立看门狗已经由硬件选项或软件启动,LSI振荡器将被强制在打开状态,并且不能被关闭.在LSI振荡器稳定后,时钟供应给IWDG. 7.2.10 时钟输出 微控制器允许输出时钟信号到外部MCO管脚. 相应的GPIO端口寄存器必须被配置为相应功能.以下四个时钟信号可被选作MCO时钟: SYSCLK HSI HSE 除2的PLL时钟 7.3 外设时钟 STM32系列的芯片,所有外设的时钟都可以独立的打开和关闭,这样可以只把使用的那部分外设时钟打开,这样的好处是,可以降低系统的能耗,满足低功耗的要求. 用户可通过多个预分频器配置AHB、高速APB(APB2)和低速APB(APB1)域的频率.AHB和APB2域的最大频率是72MHZ.APB1域的最大允许频率是36MHZ.下面是各个具体外设的时钟情况: 1》 USB时钟: USB时钟来源于PLLCLK,通过USB分频器为USB外设提供48MHz时钟.由于USB时钟分频器只能1分频(即不分频)和1.5分频,所以PLL出来的时钟频率只能是48MHz和72MHz.当需要使用USB时,PLLCLK时钟只能设定为48MHz和72MHz. 2》独立看门狗时钟:独立看门狗时钟来源于内部的低速RC时钟,可以提供30KHz―60KHz之间,标准时40KHz的时钟.当独立看门狗打开时,这个时钟被强制打开,并且不会被关闭. 3》I2S时钟:I2S时钟直接来源于系统时钟,通过使能控制位来控制该外设时钟. 4》AHB时钟:AHB时钟为其他外设时钟提供时钟源.AHB时钟通过系统时钟1,2……512分频而来,最高为72MHz. 5》DMA时钟:DMA时钟来源于AHB,最高可以到72MHz. 6》APB2高速时钟:APB2时钟来源于AHB时钟1,2,4,8,16分频,最高可以到72MHz.连接在APB2时钟上的是系统的高速外设,有TIME

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题