你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32F407极简串口设置

[复制链接]
STMCU小助手 发布时间:2023-1-17 21:00
只需要把STM32F407串口1对应的PA9和PA10的GPIO_Mode 设置为 GPIO_Mode_AF,然后,把PA9、PA10连接到USART1,最后设置一下USART1就可以了。代码如下:% J) T" U5 b; ?% e3 C
6 y2 P8 p% M! q+ g' w: i4 \% t" j
  1. //USART1 配置: 115200 8-N-1: M1 Q# j; U7 }2 w3 h* K/ r+ @

  2. 6 C, |4 @7 K, j' Q* `6 O4 p: S
  3. void USARTx_Config(void)
    1 K' q! \3 Y$ B3 _( e* V( x9 m) e
  4. {5 J! R# q$ ]& q0 |! L
  5.   GPIO_InitTypeDef GPIO_InitStructure;
    % Q3 ]( R, u% X  |; o, H
  6.   USART_InitTypeDef USART_InitStructure;
    ! y( r: x9 s" \
  7.         
    " `/ J3 s2 S% F: ~, u! B& x
  8.   /* 使能 GPIOA 时钟 */
    . N, R' O( x. h* z
  9.   RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA,ENABLE);, V  B% r) j3 _' `6 a
  10.   /* 使能 USART 时钟 */: W! I, x3 u4 }6 D, i- }( S. u
  11.   USARTx_CLOCKCMD(RCC_APB2Periph_USART1, ENABLE);1 s  e/ [" B4 Q
  12.   - }1 ?+ T& z# j/ r0 m
  13.   /* 配置Tx,Rx引脚为复用功能 */$ G4 H- x/ B& y' l
  14.   GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;) U6 W7 g/ c, _: V! [7 {
  15.   GPIO_InitStructure.GPIO_Pin =  GPIO_Pin_9 | GPIO_Pin_10;% m/ y1 y( U! Q# F/ {9 n
  16.   GPIO_Init(GPIOA, &GPIO_InitStructure);! i6 Z! E1 K1 F/ ]- K. d
  17.   
    1 N; t7 t8 [2 N7 A7 D  l) q0 r
  18.   /* 连接 PA9 到 USART1_Tx*/( ?1 @. V- k# \: D
  19.   GPIO_PinAFConfig(GPIOA,GPIO_PinSource9,GPIO_AF_USART1);
    8 D$ `. ?2 _% e" H7 y5 b: C
  20.   /*  连接 PA10 到 USART1_Rx*/
    6 W# N6 |* `, @( v8 H, j
  21.   GPIO_PinAFConfig(GPIOA,GPIO_PinSource10,GPIO_AF_USART1);& y8 O3 e7 \6 L& n! o
  22.   - ]2 x& V" q5 b9 A
  23.   /* 波特率设置:USART_BAUDRATE */. r0 X/ g( c% c# c8 q/ _; i% K
  24.   USART_InitStructure.USART_BaudRate = 115200;' v% s/ e& S: N/ Z
  25.   /* 字长(数据位+校验位):8 */7 G& ~2 x# b1 G
  26.   USART_InitStructure.USART_WordLength = USART_WordLength_8b;    1 a2 N# s8 S8 w# Q% t4 p/ Q. M
  27.   /* 停止位:1个停止位 *// d3 ~3 f7 u  V5 {6 `) ?
  28.   USART_InitStructure.USART_StopBits = USART_StopBits_1;
    " D  F9 V8 b% a6 x% d
  29.   /* 校验位选择:无校验 */  5 Y$ X# G$ `  I) S* _$ r! M  |
  30.     USART_InitStructure.USART_Parity = USART_Parity_No;
    ' [6 R; [' `9 e. p* ~1 K& l, m
  31.   /* 硬件流控制:不使用硬件流 */( _4 g# L  @  J8 {( P
  32.   USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;
    : g( x4 s% ?1 W$ }$ Y5 s! J
  33.   /* USART模式控制:同时使能接收和发送 */- Y! k/ Q6 L: A6 ~# Z, B8 u1 ]3 Z
  34.   USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;
    * C) `2 Q, h8 O5 v$ d
  35.   /* 完成USART初始化配置 */2 B3 h" h* C6 T6 D" M& f
  36.   USART_Init(USART1, &USART_InitStructure);
    " A  ]" ]9 p8 D0 n/ L0 j: ?( w
  37.     7 G, c. P1 C* x. r9 ]/ C- f
  38.   /* 使能串口 */* x; X0 l- n0 ~
  39.   USART_Cmd(USART1, ENABLE);
    3 I1 l: ?. K5 O, U$ k
  40. }
    % Q6 ^* F- ^% C9 L; }

  41. 9 |9 ]; d; R( e2 c% y) W% z
复制代码

: e9 A' {' b% f" t& X  X————————————————- ]1 d2 Y: N/ K/ C' x9 G
版权声明:eewj9 N% s7 P: Y$ s* q" F! g! J/ A. B
2 D, Y- b2 `' f* \! {
赞 收藏 评论0 发布时间:2023-1-17 21:00

举报

0个回答

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版