当前位置: 首页 > news >正文

企业网站开发实训目的网站建设一二级目录

企业网站开发实训目的,网站建设一二级目录,网站建设方案与报价,广州知名设计公司排名STM32——时钟系统 宗旨#xff1a;技术的学习是有限的#xff0c;分享的精神是无限的。 一、时钟树 普通的MCU#xff0c;一般只要配置好GPIO 的寄存器#xff0c;就可以使用了。STM32为了实现低功耗#xff0c;设计了非常复杂的时钟系统#xff0c;必须开启外设时钟才…STM32——时钟系统 宗旨技术的学习是有限的分享的精神是无限的。 一、时钟树 普通的MCU一般只要配置好GPIO 的寄存器就可以使用了。STM32为了实现低功耗设计了非常复杂的时钟系统必须开启外设时钟才能使用外设资源。 左边开始从时钟源一步步分配 到外设时钟。 从时钟频率来说又分为高速时钟和低速时钟高速时钟是提供给芯片主体的主时钟而低速时钟只是提供给芯片中的 RTC实时时钟及独立看门狗使用。 从芯片角度来说时钟源分为内部时钟与外部时钟源内部时钟是在芯片内部 RC 振荡器产生的起振较快所以时钟在芯片刚上电的时候默认使用 内部高速时钟。而外部时钟信号是由外部的晶振输入的在精度和稳定性上都有很大优势所以上电之后我们再通过软件配置转而采用外部时钟信号。 二、4个时钟源 高速外部时钟HSE以外部晶振作时钟源晶振频率可取范围为4~16MHz我们一般采用 8MHz 的晶振。 高速内部时钟HSI 由内部 RC 振荡器产生频率为 8MHz但不稳定。 低速外部时钟LSE以外部晶振作时钟源主要提供给实时时钟模 块所以一般采用 32.768KHz。 低速内部时钟LSI由内部 RC 振荡器产生也主要提供给实时时钟模 块频率大约为 40KHz。 三、高速外部时钟HSE分析8M 1、 从左端的 OSC_OUT 和 OSC_IN 开始这两个引脚分别接到外部晶振的两端。 2、 8MHz 的时钟遇到了第一个分频器PLLXTPRE HSEdivider for PLLentry在这个分频器中可以通过寄存器配置选择它的输出。它的 输出时钟可以是对输入时钟的二分频或不分频。我们选择不分频所以经过PLLXTPRE后还是 8MHz 的时钟。 3、 8MHz 的时钟遇到开关PLLSRCPLL entryclock source我们可以选择其输出输出为外部高速时钟 HSE或是内部高速时钟 HSI。这里选择输出为 HSE接着遇到锁相环PLL 具有倍频作 用在这里我们可以输入倍频因子PLLMULPLLmultiplicationfactor。经过PLL 的时钟称为 PLLCLK。倍频因子我们设定为 9 倍频也就是说经过PLL之后我们的时钟从原来 8MHz 的 HSE 变为 72MHz。 4、 紧接着又遇到了一个开关SW经过这个开关之后就是 STM32 的系统时钟SYSCLK了。通过这个开关可以切换SYSCLK 的时钟源可以选择为 HSI、 PLLCLK、 HSE。我们选择为 PLLCLK 时钟所以 SYSCLK 就 为 72MHz 了。 5、 PLLCLK 在输入到 SW 前还流向了 USB 预分频器这个分频器输出为USB 外设的时钟 USBCLK。 6、 回到 SYSCLK SYSCLK 经过 AHB预分频器分频后再输入到其它外设。如输出到称为HCLK、 FCLK 的时钟还直接输出到 SDIO 外设的SDIOCLK 时钟、存储器控制器 FSMC 的 FSMCCLK 时钟和作为 APB1、APB2 的预分频器的输入端。设置 AHB 预分频器不分频即输出的频率为 72MHz。 7、 GPIO 外设是挂载在 APB2 总线上的 APB2 的时钟是APB2预分频器 的输出而 APB2 预分频器的时钟来源是AHB预分频器。因此把APB2 预分频器设置为不分频那么我们就可以得到GPIO外设的时钟也等于HCLK。 四、HCLK、 FCLK、 PCLK1、 PCLK2 SYSCLK系统时钟 STM32大部分器件的时钟来源。主要由AHB 预分频器分配到各个部件。 HCLK:由 AHB 预分频器直接输出得到它是高速总线 AHB 的时钟信号提供给存储器DMA 及cortex 内核是cortex 内核运行的时钟cpu主频就是这个信号它的大小与STM32 运算速度数据存取速度密切相关。 FCLK同样由 AHB 预分频器输出得到是内核的“自由运行时钟”。“自由”表现在它不来自时钟HCLK因此在HCLK时钟停止时FCLK也继续运行。它的存在可以保证在处理器休眠时也能够采样和到中断和跟踪休眠事件。 PCLK1外设时钟由 APB1预分频器输出得到最大频率为36MHz 提供给挂载在 APB1 总线上的外设。 PCLK2外设时钟由 APB2预分频器输出得到最大频率可为72MHz提供给挂载在 APB2 总线上的外设。 五、寄存器 // typedef struct {__IO uint32_t CR; // 时钟控制寄存器__IO uint32_t CFGR; // 时钟配置寄存器__IO uint32_t CIR; // 时钟中断寄存器__IO uint32_t APB2RSTR; // APB2外设复位寄存器__IO uint32_t APB1RSTR; // APB1外设复位寄存器__IO uint32_t AHBENR; // AHB外设时钟使能寄存器__IO uint32_t APB2ENR; // APB2外设时钟使能寄存器__IO uint32_t APB1ENR; // APB1外设时钟使能寄存器__IO uint32_t BDCR; // 备份域控制寄存器__IO uint32_t CSR; // 控制/状态寄存器#ifdefSTM32F10X_CL__IO uint32_t AHBRSTR;__IO uint32_t CFGR2; #endif/* STM32F10X_CL */#if defined (STM32F10X_LD_VL) || defined (STM32F10X_MD_VL) || defined(STM32F10X_HD_VL)uint32_t RESERVED0;__IO uint32_t CFGR2; #endif/* STM32F10X_LD_VL || STM32F10X_MD_VL || STM32F10X_HD_VL */ } RCC_TypeDef; #define CRC_BASE (AHBPERIPH_BASE 0x3000) #define RCC ((RCC_TypeDef *)RCC_BASE)voidRCC_APB2PeriphClockCmd(uint32_t RCC_APB2Periph, FunctionalState NewState) {/* Check the parameters */assert_param(IS_RCC_APB2_PERIPH(RCC_APB2Periph));assert_param(IS_FUNCTIONAL_STATE(NewState));if (NewState ! DISABLE){RCC-APB2ENR | RCC_APB2Periph;}else{RCC-APB2ENR ~RCC_APB2Periph;} }
http://wiki.neutronadmin.com/news/68302/

相关文章:

  • 网站后台ftp在哪北京网络科技公司有哪些
  • 青岛网站制作机构旅游网站只做
  • 做网站的中标公司企业移动网站建设
  • 网站上传附件目录格式wordpress 主题 修改
  • 山东省品牌专业群建设网站公司网站空间要多大
  • 有一个网站怎么做cpc网站专题素材
  • 网站源码怎么获取深圳 网站建设公
  • 做ppt哪些网站的图片质量高如何在自己的网站上做直播
  • 深圳网站设计权威乐云践新建设商城网站多少钱
  • 网站编程零基础入门上海模板建站公司
  • 别人的域名解析到了我的网站上建筑工程公司取名
  • wordpress pods插件个人seo怎么赚钱
  • 普通网站备案网站建设需要学编程吗
  • 工程建设管理网站网站建设报价
  • seo建站做网站建设销售工资高吗
  • iis网站服务器安全隐患分析大连百度推广排名优化
  • 番禺网站排名推广优化排名百度网站电话是多少
  • 红花岗区建设局网站网站内部建设和程序
  • 需要服务器的网站seo网站关键词排名快速
  • 黄埔网站建设 信科网络做网站团队的人员安排
  • 聚美优品的电子商务网站建设论文页面设计美观的作用
  • 寮步网站仿做重庆旅游
  • 奢侈品网站怎么做tuig优化专业行业网站建设
  • 杭州专业网站石家庄手机网站
  • 外贸网站推广几个月后都没有效果刚察县公司网站建设
  • 南通网站排名服务北京百度快速排名
  • 广州市增城区建设局网站关于医疗保障局门户网站建设
  • 风车网站做花盆磨具网络规划设计师适合干什么
  • 徐家汇做网站wap网站建设课程要写代码吗
  • 开发网站找什么公司吗广州天河区景点