STM32F4库函数初始化系列:串口发送
1 void Configuration(void)
2 {
3 USART_InitTypeDef USART_InitStructure;
4 GPIO_InitTypeDef GPIO_InitStructure;
5 RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART3, ENABLE);
6 //TX
7 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10;
8 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
9 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
10 GPIO_InitStructure.GPIO_OType = GPIO_OType_OD;
11 GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;
12 GPIO_Init(GPIOB, &GPIO_InitStructure);
13 //RX
14 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11;
15 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
16 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
17 GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
18 GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
19 GPIO_Init(GPIOB, &GPIO_InitStructure);
20
21 GPIO_PinAFConfig(GPIOB, GPIO_PinSource10, GPIO_AF_USART3);
22 GPIO_PinAFConfig(GPIOB, GPIO_PinSource11, GPIO_AF_USART3);
23
24
25 USART_OverSampling8Cmd(USART3, ENABLE);
26 USART_InitStructure.USART_BaudRate = 9600;
27 USART_InitStructure.USART_WordLength = USART_WordLength_8b;
28 USART_InitStructure.USART_StopBits = USART_StopBits_1;
29 USART_InitStructure.USART_Parity = USART_Parity_No;
30 USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;
31 USART_InitStructure.USART_Mode = USART_Mode_Rx|USART_Mode_Tx;
32 USART_Init(USART3, &USART_InitStructure);
33 USART_Cmd(USART3, ENABLE);
34 }
35 void UART_PutChar(char Data)
36 {
37 USART_SendData(USART3,Data);
38 while(USART_GetFlagStatus(USART3,USART_FLAG_TC) == RESET){}
39 }
40 void UART_PutStr(char *str)
41 {
42 while (0 != *str)
43 {
44 USART3->SR;
45 UART_PutChar(*str);
46 str++;
47 }
48 }
49 int main(void)
50 {
51 Configuration();
52 UART_PutStr("play,0001,$");
53 }
STM32F4库函数初始化系列:串口发送的更多相关文章
- 89c52串口发送接收小示例
//串口发送 void sendChar(char *p)//调用前关中断,调用完成后关中断 { while(*p != '\0') { SBUF = *P while(!TI); TI = 0; p ...
- 【小梅哥FPGA进阶教程】串口发送图片数据到SRAM在TFT屏上显示
十五.串口发送图片数据到SRAM在TFT屏上显示 之前分享过rom存储图片数据在TFT屏上显示,该方法只能显示小点的图片,如果想显示TFT屏幕大小的图片上述方法rom内存大小不够.小梅哥给了个方案,利 ...
- AVR单片机教程——串口发送
本文隶属于AVR单片机教程系列. 到目前为止,我们的开发板只能处理很小量的数据:读取几个引脚电平,输出几个LED,顶多用数码管显示一个两位数字.至于输入一个指令.输出一条调试信息,甚至用scanf ...
- C#串口通信—向串口发送数据,同步接收返回数据
最近写C#串口通信程序,系统是B/S架构.SerialPort类有一个DataReceived事件,用来接收串口返回的数据,但这种方式在C/S架构下很好用,但B/S就不好处理了.所以写了一个同步模式接 ...
- 纠错:基于FPGA串口发送彩色图片数据至VGA显示
今天这篇文章是要修改之前的一个错误,前面我写过一篇基于FPGA的串口发送图片数据至VGA显示的文章,最后是显示成功了,但是显示的效果图,看起来确实灰度图,当时我默认我使用的MATLAB代码将图片数据转 ...
- 【Debug】串口发送数据时部分字节被拉长,出现帧错误,原因MCU进入低功耗模式导致串口时钟停了!
串口发送数据时部分字节被拉长,出现帧错误,原因MCU进入低功耗模式导致串口时钟停了!
- 基于Verilog的带FIFO写入缓冲的串口发送接口封装
一.模块框图及基本思路 tx_module:串口发送的核心模块,详细介绍请参照前面的“基于Verilog的串口发送实验” fifo2tx_module:当fifo不为空时,读取fifo中的数据并使能发 ...
- 基于Verilog的串口发送程序
一.模块框图及基本思路 tx_bps_module:波特率时钟产生模块 tx_control_module:串口发送的核心控制模块 tx_module:前两个模块的组合 control_module: ...
- 串口发送端verilog代码分析
串口发送端verilog代码分析 `timescale 1ns / 1ps ////////////////////////////////////////////////////////////// ...
- C#把汉字转换成16进制(HEX)并向串口发送数据
报警器实例:(有发送,无返回获取) using System; using System.Collections.Generic; using System.Linq; using System.Te ...
随机推荐
- hashcat 命令
hashcat --force --stdout -a 6 tmp.txt ?d?d?d?d?d?d?d > result.txt tips:将tmp.txt字典中的内容与7位随机掩码字符组合, ...
- VS2019 iis无法在Web服务器上启动调试。打开的URL的IIS辅助进程当前没有运行
可以检查W3SVC服务与WAS这两个服务是否正在运行. 重启这两个服务就可以正常了
- C++编程笔记(GPU并行编程)
目录 一.配置并使用 二.代码 三.内存管理 数组的分配 一.配置并使用 环境:Windows10 + CLion + VS2019 cuda的安装,并行的话只需要安装cuda,cuDNN就不必了 编 ...
- 5V升压12.6V芯片电路图,三节锂电池充电
三节3.7V的锂电池串联,11.1V和最大12.6V锂电池充电电路的解决方案.在应用中,一般使用低压5V,如USB口直接输入的给三串锂电池充电,还有是15V或者18V,20V输入降压给锂电池充电的两种 ...
- C#深拷贝方法
概述 为什么要用到深拷贝呢?比如我们建了某个类Person,并且实例化出一个对象,然后,突然需要把这个对象复制一遍,并且复制出来的对象要跟之前的一模一样,来看下我们一般会怎么做. 方法一(利用反射实现 ...
- typora软件下载跟安装
typora软件介绍 typora是一款文本编辑器 是目前非常火爆的文本编辑器 [下载地址](Typora 官方中文站 (typoraio.cn)) 安装操作 pj链接 注意:不要更新!!! 安装 路 ...
- 使用命令行运行用例时提示python.exe: Error while finding module specification for 'testcase_1.Test'.....
文件路径 输入命令 D:\demo>python -m unittest unittest_1/testcase_1.Test结果提示 ModuleNotFoundError: No modul ...
- 速记·python 123章
第一.二.三章 初识python 1.1 Python的概述 开发环境:Python 开发工具:IDLE(Python自带) 1.python的特点:代码简单.开发速度快.容易学习:有丰富的库:&qu ...
- yolov5数据集制作 数据集分割+voc格式转txt格式代码
先上数据集分割代码 网上没找到合适的 自己写了一个 分割比例为0.6 :0.2 :0.2 import os import random oriImgDir = "./change14img ...
- 《深度探索C++对象模型》第四章 Function语意学
member function相对于nonmember function之间不存在效率之间的差别,因为编译器内部已经将"member 函数实体"转化为对等的"nonmem ...