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

番茄网络营销策划方案番禺网站建设优化

番茄网络营销策划方案,番禺网站建设优化,最专业的网站建设,中国最新新闻大事件一、概述 本文主要介绍如何配置USART#xff0c;并通过USART打印验证结果。以stm32f10为例#xff0c;将PA9、PA10复用为USART功能#xff0c;使用HSE PLL输出72MHZ时钟 APB2 clk不分频提供配置9600波特率。波特率计算公式如下#xff1a; fck即为APB2 clk参考计算#xf… 一、概述 本文主要介绍如何配置USART并通过USART打印验证结果。以stm32f10为例将PA9、PA10复用为USART功能使用HSE PLL输出72MHZ时钟 APB2 clk不分频提供配置9600波特率。波特率计算公式如下 fck即为APB2 clk参考计算 硬件图 二、配置流程 1配置系统时钟输出72MHZ 参考上文STM32 寄存器配置笔记——系统时钟配置 HSE as PLL 2计算USARTDIV USARTDIV fck / 波特率 * 16 temp (float)(pclk2 * 1000000) / (bound * 16); // cal USARTDIV 3获取整数部分和小数部分 获取整数和小数部分以及要写进BRR波特率寄存器的值。 mantissa temp; // get mantissafraction (temp - mantissa) * 16; // get fractionuart_brr (mantissa 4) | fraction; 4 使能时钟 使能端口A时钟和USART1时钟。 RCC-APB2ENR | 1 2; // enable portA clkRCC-APB2ENR | 1 14; // enable USART1 clk 5配置GPIO复用功能 参考手册配置TX、RX的复用功能。 GPIOA-CRH 0xFFFFF00F; // reset portA pin9¡¢10 cfg GPIOA-CRH | 0x4B0; // pin9 - UART1_TX pp af output pin10 - UART1_RX float input 6复位USART状态 此处在开启USART前复位一下USART状态保证USART能够彻底初始化。复位完后需要停止复位避免USART不停复位 RCC-APB2RSTR | 1 14; // reset USART1RCC-APB2RSTR ~(1 14); // stop reset USART1 7配置波特率使能USART1 USART1-BRR uart_brr; // set bound param USART1-CR1 | 0x200C; // enable usart 8bit data no parity enable tx rx 三、源码 整个代码调用情况如下 void uart_init(u32 pclk2,u32 bound) { float temp;u16 mantissa;u16 fraction;u16 uart_brr;temp (float)(pclk2 * 1000000) / (bound * 16); // cal USARTDIVmantissa temp; // get mantissafraction (temp - mantissa) * 16; // get fractionuart_brr (mantissa 4) | fraction;RCC-APB2ENR | 1 2; // enable portA clkRCC-APB2ENR | 1 14; // enable USART1 clkGPIOA-CRH 0xFFFFF00F; // reset portA pin9¡¢10 cfgGPIOA-CRH | 0x4B0; // pin9 - UART1_TX pp af output pin10 - UART1_RX float inputRCC-APB2RSTR | 1 14; // reset USART1RCC-APB2RSTR ~(1 14); // stop reset USART1USART1-BRR uart_brr; // set bound param USART1-CR1 | 0x200C; // enable usart 8bit data no parity enable tx rx } 在USART1配置完成后将PA9、PA10接TTL转USB串口设备在主循环一直打印内容验证是否配置成功。 在使用printf前需要做映射 //加入以下代码支持printf函数而不需要选择use MicroLIB #if 1 #pragma import(__use_no_semihosting) //标准库需要支持的函数 struct __FILE { int handle; /* Whatever you require here. If the only file you are using is */ /* standard output using printf() for debugging, no file handling */ /* is required. */ }; /* FILE is typedef¡¯ d in stdio.h. */ FILE __stdout; //定义 _sys_exit以避免使用半主机模式 void _sys_exit(int x) { x x; } //重定向fputc函数 //printf的输出指向fputc, 由fputc输出到串口 //这里使用USART1输出printf信息 int fputc(int ch, FILE *f) { while((USART1-SR0X40)0);//等待上一次串口数据发送完成USART1-DR (u8) ch; //写DR串口1将发送数据return ch; } #endif
http://www.w-s-a.com/news/957956/

相关文章:

  • 自有网站建设的团队遂宁市建设局网站
  • 网站建设哪个好一些网站内容导出
  • 什么网站的页面做的比较好看网上做平面设计的网站
  • 网站建设单选网站建设学校培训学校
  • 可以做app的网站logo设计在线生成免费标小智
  • 网站变更备案做酒类网站
  • 网站必须要备案吗东莞市非凡网站建设
  • 太原建网站公司网站设计的流程是怎样的
  • 网站开发交易平台北京网站建设的价格低
  • 捷克注册公司网站搜索引擎广告推广
  • 网站的实用性青岛九二网络科技有限公司
  • 广东备案网站网站反链如何做
  • 做网站的实施过程企业建设H5响应式网站的5大好处6
  • ps制作个人网站首页景安搭建wordpress
  • 常德建设网站制作网站建设推广是什么工作
  • 长春服务好的网站建设百度推广话术全流程
  • 做的网站浏览的越多越挣钱基于jsp的网站开发开题报告
  • 好的做问卷调查的网站好网站调用时间
  • 广州微网站建设平台阿里云国外服务器
  • 如何把做好的网站代码变成网页wordpress shortcode土豆 视频
  • 网站改版竞品分析怎么做中山网站建设文化价格
  • 玉林市网站开发公司电话做网站空间 阿里云
  • 南充做网站略奥网络免费的正能量视频素材网站
  • 电子商务网站开发的基本原则汕头网站制作流程
  • 网站访问量突然增加合肥宣传片制作公司六维时空
  • 建设购物网站流程图怎么找网站
  • 阿里云部署多个网站制作小程序网站源码
  • 博罗东莞网站建设网站免费源代码
  • 网站规划与设计范文桂平网站建设
  • 网站备案号密码wordpress邮箱发送信息错误