网站大量收购独家精品文档,联系QQ:2885784924

第7章 基于Cortex-M3的STM32基本结构.pptVIP

  1. 1、本文档共71页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

******7.4.3由系统时钟分频得到的其他时钟由不同的分频数可得不同的时钟频率*7.4.3由系统时钟分频得到的其他时钟举例:SYSCLK:72MHzHCLK:72MHzPCLK1:36MHzPCLK2:72MHzADCCLK:36MHz由上面可推测几个预分频值为AHBPrescaler=1APB1Prescaler=2APB2Prescaler=1ADCPrescaler=2已知APB1Prescaler=2,故TIM2CLK=PCLK1×2=72MHz,所以被TIM2分频的时钟频率为72MHz。*7.5STM32F103的低功耗模式STM32F10x有3种低功耗模式:睡眠模式、停止模式和待机模式*睡眠模式:Corte-M3内核停止,所有外设包括Cortex-M3核心的外设,如NVIC、SysTick等仍在运行。停止模式:所有的时钟都已停止。待机模式:1.8V电源关闭。在运行模式下,也可以通过以下方式中的一种来降低功耗。(1)降低系统时钟;(2)关闭APB和AHB总线上未被使用的外设时钟。7.5STM32F103的低功耗模式*7.6STM32F103的安全特性STM32F10x内置了两个看门狗:独立看门狗(IWDG)和窗口看门狗(WWDG),可提供更高的安全性、时间的精确性和使用的灵活性。独立看门狗:由专用的低速时钟(LSI)驱动,即使主时钟发生故障,它也仍然有效。窗口看门狗:通常被用来监测由外部干扰或不可预见的逻辑条件造成的应用程序背离正常的运行序列而产生的软件故障。*7.7STM32F103的启动过程微控制器上电后,如何寻找到并执行基于C语言的嵌入式程序main函数呢?微控制器无法从硬件上定位main函数的入口地址,使用C语言作为开发语言时,变量/函数的地址由编译器在编译时自行分配,main函数入口地址在微控制器内部存储空间中不再是绝对不变。在嵌入式系统程序中,真正入口地址是通过启动文件“Bootloader”来引导的。每一种微控制器都需有启动文件来负责执行微控制器从“复位”到“开始执行main函数”称为启动过程。ST公司也已经提供了STM32微控制器直接可用的启动文件,程序开发人员可以在引用启动文件后直接进行C应用程序的开发。*7.7STM32F103的启动过程相对于ARM上一代的主流ARM7/ARM9内核架构,新一代Cortex内核架构的启动方式有了比较大的变化。ARM7/ARM9内核的控制器在复位后,CPU会从存储空间的绝对地址0x000000取出第一条指令以执行复位中断服务程序的方式启动,即固定了复位后的起始地址为0x000000(PC=0x000000),同时中断向量表的位置并不是固定的。而Cortex-M3内核则正好相反,有以下3种情况。*7.7STM32F103的启动过程基于Cortex-M3的ARM启动过程:(1)通过boot引脚设置可将中断向量表定位于SRAM区,即起始地址为0x2000000,复位后PC指针位于0x2000000处。(2)通过boot引脚设置可将中断向量表定位于Flash区,即起始地址为0x8000000,复位后PC指针位于0x8000000处。(3)通过boot引脚设置可将中断向量表定位于内置Bootloader区。Cortex-M3内核规定,起始地址必须存放堆顶指针,而第二个地址则必须存放复位中断入口向量,复位后会自动从起始地址的下一个32位空间取出复位中断入口向量,跳转执行复位中断服务程序。Cortex-M3内核固定了中断向量表的位置而起始地址是可变化的。*习题与思考1.ARM、STM32F10x、Cortex-M3,这三者的关系是什么?2.Cortex-M3内核是如何在储存器中分布的?3.STM32F10x最小系统包括哪些部分,这些部分是如何发挥作用的?4.STM32F103的时钟源有哪些,各时钟源频率是多少,与51单片机的区别是什么?5.简述STM32F10x3种低功耗模式的区别。6.STM32F10x系统运行的安全性如何被保证?************************7.2.2内部结构4、总线矩阵总线矩阵协调各个总线之间的访问,“仲裁”利用轮换算法。5、寄存器组Cortex-M3处理器拥有R0~R15的寄存器组,其中R13作为堆栈指针SP。堆栈指针有两个,但在同一时刻只能有一个可以看到,这也就是所谓的“banked”寄存器。*7.2.2内部结构*7.2.3

文档评论(0)

学海无涯而人有崖 + 关注
实名认证
文档贡献者

教师资格证、人力资源管理师持证人

该用户很懒,什么也没介绍

领域认证该用户于2023年06月11日上传了教师资格证、人力资源管理师

1亿VIP精品文档

相关文档