STM32 CubeMx 学习笔记-串口通信

1.CubeMx 设置

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
按上面设置好,生成代码。注意串口引脚要和电路板一致!

2.测试串口和printf重写

生成代码后,用HAL_UART_Transmit()测试串口能否正常使用。

HAL_UART_Transmit(&huart1,(uint8_t*)"hello",5,100);
HAL_Delay(1000);

测试正常后,下面重写printf函数

注意先在keil里设置Ues MicroLIB,不然重写没用1
在这里插入图片描述
下面介绍2种方法:

第一种

在main.c中加#include “stdio.h”,然后在main()之前加入以下代码:

int fputc(int ch, FILE *f)
{
	/* ·¢ËÍÒ»¸ö×Ö½ÚÊý¾Ýµ½´®¿ÚDEBUG_USART */
	HAL_UART_Transmit(&UartHandle, (uint8_t *)&ch, 1, 1000);	
	
	return (ch);
}

第二种

在uart.c中加#include “stdio.h”,然后在uart.c最后加入以下代码:

#ifdef __GNUC__
  /* With GCC/RAISONANCE, small printf (option LD Linker->Libraries->Small printf
     set to 'Yes') calls __io_putchar() */
  #define PUTCHAR_PROTOTYPE int __io_putchar(int ch)
#else
  #define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)
#endif /* __GNUC__ */
PUTCHAR_PROTOTYPE
{
  /* Place your implementation of fputc here */
  /* ?????????????? */
  HAL_UART_Transmit(&huart1, (uint8_t *)&ch, 1, 0xFFFF);
  return ch;
}

这样就可以了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
淘晶驰串口屏与STM32F407通信的教程可以参考以下步骤: 1. 首先,配置串口通信。在CUBEMX中,选择串口2作为与串口屏通信的串口。配置串口的波特率、数据位、停止位等参数。 2. 在用户代码段中,编写发送数据的函数。可以参考引用\[2\]中的代码示例。其中,HMISend函数用于发送单个字节,HMISends函数用于发送字符串。 3. 在主函数中,调用HMISends函数发送需要显示在串口屏上的数据。可以使用prints指令将数字通过串口通信发给单片机。例如,使用prints指令将数字保存在t0的文本控件中,然后使用HMISends函数发送t0的文本内容。 4. 在串口发送数据时,需要注意数据的格式。根据引用\[1\]中的描述,数据需要以0X0D和0X0A结尾。可以使用printh指令发送0D 0A来实现。 总结起来,淘晶驰串口屏与STM32F407通信的教程包括配置串口通信、编写发送数据的函数、调用发送函数发送数据,并注意数据格式的要求。希望这些步骤对你有帮助。 #### 引用[.reference_title] - *1* [stm32f407与串口屏通信问题](https://blog.csdn.net/qq_38215697/article/details/89394197)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [STM32CUBEMX学习笔记——陶晶驰串口屏中断接收数据](https://blog.csdn.net/weixin_56659352/article/details/124812921)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值