【原创】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 因为服务器请求处理线程的总数是有限的,如果类似的请求多了,所有的处理线程处于阻 ...
随机推荐
- Python3.7版本unittest框架添加用例的方法
1.实例demo是用谷歌浏览器在百度首页搜python的动作脚本: BaiDu_test是指脚本中自己定义的类名,test_get是指你的类中定义的testcase方法. 在if name函数 ...
- post文件下载
this.$http({ method: 'post', url: '/file/download', responseType: 'blob', data: JSON.stringify(this. ...
- ExtJS中listener方法和handler方法的区别
listener方法和handler方法的区别在文档中的说明的太玄乎了,看不懂 listeners监听能够对一个click Event事件添加任意多个的事件响应处理函数 而handler处理只能够通过 ...
- windows系统中配置多版本anaconda
1.最好从国内的镜像站下载anaconda,国外那个站实在是太慢了,清华开源软件镜像站(https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/) 2.如 ...
- 26.HashCode
在前面三篇博文中讲解了(HashMap.HashSet.HashTable),在其中不断地讲解他们的put和get方法,在这两个方法中计算key的hashCode应该是最重要也是最精华的部分,所以 ...
- SQL语言基础学习
9.26.对之前学习的知识进行一下梳理,同时结合所查资料对知识进行一次整合
- HttpServletRequest.getContextPath()取得的路径
如果项目名称为test,你在浏览器中输入请求路径:http://localhost:8080/test/pc/list.jsp 执行下面向行代码后打印出如下结果: 1. System.out.prin ...
- Codeforces Round #418 (Div. 2)
A: 不细心WA了好多次 题意:给你一个a序列,再给你个b序列,你需要用b序列中的数字去替换a序列中的0,如果能够替换,则需要判断a是否能构成一个非递增的序列,a,b中所有的数字不会重复 思路:就是一 ...
- BeanPostProcessor —— 连接Spring IOC和AOP的桥梁
之前都是从大Boss的视角,来介绍Spring,比如IOC.AOP. 今天换个视角,从一个小喽啰出发,来加深对Spring的理解. 这个小喽啰就是, BeanPostProcessor (下面简称 B ...
- git常用命令速查:创建,修改提交,撤销,切换分支,合并分支,变基解决冲突
创建 $ git init #在当前目录下创建一个空的本地仓库 $ rm -rf .git #删除本地仓库 $ git add . #把当前目录下的所有文件添加到暂存区 $ git commi ...