stm32中的串口通信你了解多少

发布时间:2022-12-19  

  在基础实验成功的基础上,对串口的调试方法进行实践。硬件代码顺利完成之后,对日后调试需要用到的printf重定义进行调试,固定在自己的库函数中。

  b) 初始化函数定义:

  void USART_Configuration(void); //定义串口初始化函数

  c) 初始化函数调用:

  void UART_Configuration(void); //串口初始化函数调用

  初始化代码:

  void USART_Configuration(void) //串口初始化函数

  {

  //串口参数初始化

  USART_InitTypeDef USART_InitStructure; //串口设置恢复默认参数

  //初始化参数设置

  USART_InitStructure.USART_BaudRate = 9600; //波特率9600

  USART_InitStructure.USART_WordLength = USART_WordLength_8b; //字长8位

  USART_InitStructure.USART_StopBits = USART_StopBits_1; //1位停止字节

  USART_InitStructure.USART_Parity = USART_Parity_No; //无奇偶校验

  USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;//无流控制

  USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;//打开Rx接收和Tx发送功能

  USART_Init(USART1, &USART_InitStructure); //初始化

  USART_Cmd(USART1, ENABLE); //启动串口

  }

  RCC中打开相应串口

  RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1 , ENABLE);

  GPIO里面设定相应串口管脚模式

  //串口1的管脚初始化

  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9; //管脚9

  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; //复用推挽输出

  GPIO_Init(GPIOA, &GPIO_InitStructure); //TX初始化

  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10; //管脚10

  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING; //浮空输入

  GPIO_Init(GPIOA, &GPIO_InitStructure); //RX初始化

  d) 简单应用:

  发送一位字符

  USART_SendData(USART1, 数据); //发送一位数据

  while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET){} //等待发送完毕

  接收一位字符

  while(USART_GetFlagStatus(USART1, USART_FLAG_RXNE) == RESET){} //等待接收完毕

  变量= (USART_ReceiveData(USART1)); //接受一个字节

  发送一个字符串

  先定义字符串:char rx_data[250];

  然后在需要发送的地方添加如下代码

  int i; //定义循环变量

  while(rx_data!='

文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

相关文章

    据输出锁存器。 2个三态的数据输入缓冲器BUF1和BUF2。 2个场效应管(FET)。 多路开关、反相器、与门各1个。 P0口工作原理——用作复用的地址/数据总线 输出:“控制”信号为1,硬件......
    RS232串口扩展、带自动硬件速率控制的PCIE 高速串口串口组网、RS485通讯、IrDA通讯、并口/打印口扩展等。 下图为其一般应用框图; 特点; 概述 同一芯片可配置为PCIE 总线的四通道串口......
    态的数据输入缓冲器BUF1和BUF2。 2个场效应管(FET)。 多路开关、反相器、与门各1个。 P0口工作原理——用作复用的地址/数据总线 输出:“控制”信号为1,硬件自动使转接开关MUX打向上面,接通......
    态的数据输入缓冲器BUF1和BUF2。 2个场效应管(FET)。 多路开关、反相器、与门各1个。 P0口工作原理——用作复用的地址/数据总线 输出:“控制”信号为1,硬件自动使转接开关MUX打向上面,接通......
    。 2个场效应管(FET)。多路开关、反相器、与门各1个。 P0口工作原理——用作复用的地址/数据总线输出:“控制”信号为1,硬件自动使转接开关MUX打向上面,接通反相器的输出,同时使“与门”开启......
    电机A,B,C,D四组线圈的通电时序,四拍的驱动正转通电顺序为A-B-C-D-A-B-C-D-……循环往复,-A-B-C-D-四拍为一个循环周期。 五线:步进电机引出的接线数量为五根。 步进电机工作原理......
    ++6.0编程实现的Windows程序,整个样机功能得以实现。 功能结果 根据上面所述工作原理及实施方案,在实践中很好地实现了整个样机的功能,各项指标达到了预先的设计要求。电路工作稳定,每次......
    所示。运行VC++6.0编程实现的Windows程序,整个样机功能得以实现。 功能结果 根据上面所述工作原理及实施方案,在实践中很好地实现了整个样机的功能,各项指标达到了预先的设计要求。电路工作......
    STM32G47x系列MCU中双Bank的工作原理及在线升级实现;1、前言 STM32G47x 的 Flash 可以工作在双 bank 模式下,在该模式下对 FLASH 的操作支持RWW(Read......
    /O端口、串口、中断等的配置。本系统采用USART复用I/O口PA9作为串口发送引脚,配置为推挽输出,速度为50MHz;USART复用I/O口PA10作为串口接收引脚,配置为浮空输入。串口工作......

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>