【原创】USART异步模式配置





- RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1 | RCC_APB2Periph_GPIOA,ENABLE);
//初始化USART 1的TX和RX引脚GPIO_InitTypeDef GPIO_Struct;GPIO_Struct.GPIO_Speed = GPIO_Speed_50MHz;//USART TX引脚使用复用推挽输出GPIO_Struct.GPIO_Mode = GPIO_Mode_AF_PP;GPIO_Struct.GPIO_Pin = GPIO_Pin_9;GPIO_Init(GPIOA,&GPIO_Struct);//USART RX引脚使用浮空输入GPIO_Struct.GPIO_Mode = GPIO_Mode_IN_FLOATING;GPIO_Struct.GPIO_Pin = GPIO_Pin_10;GPIO_Init(GPIOA,&GPIO_Struct);
//GPIO、usart配置void USART_GPIO_conf(void){GPIO_InitTypeDef GPIO_Struct;USART_InitTypeDef USART_Struct;//设置之前一定要开启相应的外设时钟RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_USART1,ENABLE);//初始化USART 1的TX和RX引脚GPIO_Struct.GPIO_Speed = GPIO_Speed_50MHz;//USART TX引脚使用复用推挽输出GPIO_Struct.GPIO_Mode = GPIO_Mode_AF_PP;GPIO_Struct.GPIO_Pin = GPIO_Pin_9;GPIO_Init(GPIOA,&GPIO_Struct);//USART RX引脚使用浮空输入GPIO_Struct.GPIO_Mode = GPIO_Mode_IN_FLOATING;GPIO_Struct.GPIO_Pin = GPIO_Pin_10;GPIO_Init(GPIOA,&GPIO_Struct);//设置USART的波特率为9600,接收发送使能,无奇偶校验,1位停止位,8位数据位,无硬件流控USART_Struct.USART_BaudRate =9600;USART_Struct.USART_HardwareFlowControl = USART_HardwareFlowControl_None;USART_Struct.USART_Mode = USART_Mode_Tx | USART_Mode_Rx;USART_Struct.USART_Parity = USART_Parity_No;USART_Struct.USART_StopBits = USART_StopBits_1;USART_Struct.USART_WordLength = USART_WordLength_8b;USART_Init(USART1,&USART_Struct);USART_Cmd(USART1, ENABLE);}


while(USART_GetFlagStatus(USART1, USART_FLAG_RXNE)== RESET);printf("已接受到\n");USART_ClearFlag(USART1,USART_FLAG_RXNE);
/*发送一个字节数据到USART1 */USART_SendData(USART1,(uint8_t) ch);/*等待发送完毕*/while(USART_GetFlagStatus(USART1, USART_FLAG_TC)== RESET);
附件列表
【原创】USART异步模式配置的更多相关文章
- [原创]STM32 BOOT模式配置以及作用
一.三种BOOT模式介绍 所谓启动,一般来说就是指我们下好程序后,重启芯片时,SYSCLK的第4个上升沿,BOOT引脚的值将被锁存.用户可以通过设置BOOT1和BOOT0引脚的状态,来选择在复位后的启 ...
- STM32学习笔记(五) USART异步串行口输入输出(轮询模式)
学习是一个简单的过程,只要有善于发掘的眼睛,总能学到新知识,然而如何坚持不懈的学习却很困难,对我亦如此,生活中有太多的诱惑,最后只想说一句勿忘初心.闲话不多扯,本篇讲诉的是异步串行口的输入输出,串口在 ...
- 高性能的关键:Spring MVC的异步模式
我承认有些标题党了,不过话说这样其实也没错,关于“异步”处理的文章已经不少,代码例子也能找到很多,但我还是打算发表这篇我写了好长一段时间,却一直没发表的文章,以一个更简单的视角,把异步模式讲清楚. 什 ...
- CDC不同模式在ODI体现系列之二 异步模式
CDC不同模式在ODI体现系列之二 异步模式 2 异步模式需要在数据库中做一些准备工作: 改数据为归档并启用logminer: SQL> shutdown immediate 数据库已经关闭. ...
- Spring MVC的异步模式
高性能的关键:Spring MVC的异步模式 我承认有些标题党了,不过话说这样其实也没错,关于“异步”处理的文章已经不少,代码例子也能找到很多,但我还是打算发表这篇我写了好长一段时间,却一直没发表 ...
- JQuery日记6.5 Javascript异步模式(一)
理解力JQuery前实现异步队列,有必要理解javascript异步模式. Javascript异步其实并不严重格异步感,js使某些片段异步方式在将来运行,流不必等待继续向下进行. 在多线程的语言中最 ...
- Javascript教程:js异步模式编程的4种解决方法
随着人们对网站视觉效果及用户体验的要求越来越高,所以在未来网站的建设中,设计师们开始越来越多的使用了js文件来达到预期的效果,随着js文件的越来越多,令设计师们最头痛的事情也就来了,那就是Javasc ...
- Ansible系列(七):执行过程分析、异步模式和速度优化
本文目录:1.1 ansible执行过程分析1.2 ansible并发和异步1.3 ansible的-t选项妙用1.4 优化ansible速度 1.4.1 设置ansible开启ssh长连接 1.4. ...
- Controller异步模式
转载: https://blog.csdn.net/yingxiake/article/details/51193319 因为服务器请求处理线程的总数是有限的,如果类似的请求多了,所有的处理线程处于阻 ...
随机推荐
- 每日一练ACM
2019.04.15 第1000题:A+B Problem Problem DescriptionCalculate A + B. InputEach line will contain two in ...
- php数组排序sort
php的数组分为数字索引型的数组,和关键字索引的数组.如果是数字索引的,可以这样使用:$names = ['Tom', 'Rocco','amiona'];sort($names);sort()函数只 ...
- Day06 (黑客成长日记) 初识函数和返回值的作用
定义函数: 1.初识函数: 我们在学习字符串时,有这样的操作: li = 'tsy be ba bvake ' print(len(li)) 这样可以打印出li的长度,我们利用了python中的len ...
- Python之xml学习笔记
XML处理模块 xml是实现不同语言或程序之间进行数据交换的协议,跟json差不多,但json使用起来更简单,至今很多传统公司如金融行业的很多系统的接口还主要是xml. xml的格式如下,就是通过&l ...
- github使用步骤
首先需要注册一个github账号 1.认识github首页界面 2.如何新建一个自己的仓库 3.创建README文件 4.创建自己的文件 5.解析文件 6.生成地址 7.如何修改编辑文件
- .NET简单学习
.NET是一个平台,对用户来说,只要下载了.NET Framework就可以运行.NET程序,获得需要的服务:对开发人员来说,平台对开发有着强有力的支持,方便创作各种应用软件. .NET Framew ...
- 多级路由请求js文件路径不对的解决方法
1.问题描述 最近因为项目的原因开始学习vue,看了几天教程然后开始撸项目.撸的过程也挺顺利,撸了一个多月项目要上线的时候却出现了问题——用history模式打开网站的时候,从导航点到具体的内容页是正 ...
- spring 排除指定的类或者包扫描
<!-- 排除Controller注解的扫描 --> <context:component-scan base-package="exampleBean"> ...
- 传统asp.net小心 async/await坑
最近在改老项目时,干了一件自以为很有成就感的事,心想 “项目都是同步方法,为啥不用异步方法呢?”,于是有了异步方法,类型下面的代码(当然是举例子说明啊) //更新某人名下公司名称 public Tas ...
- C#基础笔记
第一章: 1.C#创建程序的基本结构 class 类名 { static void Main(string[]args) { } } 注意:1)namespace2)using3)类名命名规则:字母. ...