Usart采用循环队列的中断程序.pdfVIP

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

STM32 (14)Usart STM32 (14)Usart SSTTMM3322学习日志((1144))UUssaarrtt采用循环队列的中断程序 [嵌入式]发布时间:2010-07-11 16:33:35 STM32学习日志(14)Usart 使用环形队列的串口驱动程序 说明: 1. 参考了IAR 的应用笔记 AppNote430-03.pdf 2.与PC 联机通讯,收发测试均OK! *******************************************************************************/ #include stm32f10x.h #include stm32_m.h #include sci.h //****************************************************************************** static void delayms(INT16U cnt) { INT16U i; while(cnt--) for (i=0; i7333; i++); } //****************************************************************************** // 时钟设置初始化 //****************************************************************************** static void RCC_Configuration(void) { ErrorStatus HSEStartUpStatus; /* RCC_AdjustHSICalibrationValue 调整内部高速晶振(HSI)校准值 RCC_ITConfig 使能或者失能指定的RCC 中断 RCC_ClearFlag 清除RCC 的复位标志位 RCC_GetITStatus 检查指定的RCC 中断发生与否 RCC_ClearITPendingBit 清除RCC 的中断待处理位 */ /* RCC system reset(for debug purpose) */ // 时钟系统复位 RCC_DeInit(); // 使能外部的8M晶振 // 设置外部高速晶振(HSE) /* Enable HSE */ RCC_HSEConfig(RCC_HSE_ON); // 使能或者失能内部高速晶振(HSI) RCC_HSICmd(DISABLE); // 等待HSE 起振 // 该函数将等待直到HSE 就绪,或者在超时的情况下退出 /* Wait till HSE is ready */ HSEStartUpStatus = RCC_WaitForHSEStartUp(); if(HSEStartUpStatus == SUCCESS) { /* HCLK = SYSCLK */ // 设置AHB 时钟(HCLK) RCC_HCLKConfig(RCC_SYSCLK_Div1); // 72 MHz /* PCLK1 = HCLK/2 */ // 设置低速AHB 时钟(PCLK1) RCC_PCLK1Config(RCC_HCLK_Div2); // 36 MHz /* PCLK2 = HCLK */ // 设置高速AHB 时钟(PCLK2) RCC_PCLK2Config(RCC_HCLK_Div1); // 72 MHz /* ADCCLK = PCLK2/8 */ // 设置ADC 时钟(ADCCLK) RCC_ADCCLKConfig(RCC_PCLK2_Div8); // 设置USB 时钟(USBCLK) // USB 时钟 = PLL时钟除以1.5 RCC_USBCLKConfig(RCC_USBCLKSource_PLLCLK_1Div5); // 设置外部低速晶振(LSE) RCC_LSEConfig(RCC_LSE_OFF); // 使能或者失能内部低速晶振(LSI) // LSE晶振OFF RCC_LSICmd(DISABLE); // 设置RTC 时钟(RTCCLK) // 选择HSE 时钟频率除以128作为RTC 时钟 RCC_RTCCLKCon

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档