OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 7352|回复: 8

Openmv和stm32进行串口通信

[复制链接]

11

主题

131

帖子

0

精华

高级会员

Rank: 4

积分
757
金钱
757
注册时间
2020-5-11
在线时间
71 小时
发表于 2021-5-29 15:13:35 | 显示全部楼层 |阅读模式
10金钱
本人想用openmv和stm32串口通信,主要就是openmv发送一个字节,然后用stm32的usart3接收,再使用USART_SendData发送到串口1,串口1接着TTL,在串口调试助手上显示。
  1. import time
  2. from pyb import UART

  3. # UART 3, and baudrate.
  4. uart = UART(3, 19200)

  5. while(True):
  6.     uart.write("aaaa")
  7.     if (uart.any()):
  8.         print(uart.read())
  9.     time.sleep_ms(1000)
复制代码

但是现在问题是,openmv的usart3单独接到TTL上,可以在串口调试助手上看到发送的数据,也就是uart.write("aaaa")用这个函数发送数据,而stm32那边我使用ReceiveData()函数接收

  1.     if(USART_GetITStatus(USART3,USART_IT_RXNE))   //若接收到数据
  2.                                 {
  3.                                         u8 Receive_Data = 0;
  4.                                         Receive_Data = USART_ReceiveData(USART3);

  5.                                         printf("Receive Succsed: %2x                                        \r\n", Receive_Data);
  6.                                         USART_SendData(USART1,Receive_Data);
  7.                                         if(Receive_Data == 0x61)
  8.                 LED0 = !LED0;
  9.                                 }       
复制代码
无论是串口调试助手还是led都没有反应

最佳答案

查看完整内容[请看2#楼]

虽然我不知道为什么USART3无法成功,也不是中断的优先级问题。 但是到USART1就可以。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

11

主题

131

帖子

0

精华

高级会员

Rank: 4

积分
757
金钱
757
注册时间
2020-5-11
在线时间
71 小时
 楼主| 发表于 2021-5-29 15:13:36 | 显示全部楼层
虽然我不知道为什么USART3无法成功,也不是中断的优先级问题。
但是到USART1就可以。
回复

使用道具 举报

11

主题

131

帖子

0

精华

高级会员

Rank: 4

积分
757
金钱
757
注册时间
2020-5-11
在线时间
71 小时
 楼主| 发表于 2021-5-29 16:57:35 | 显示全部楼层
顶顶顶顶
回复

使用道具 举报

7

主题

480

帖子

0

精华

高级会员

Rank: 4

积分
780
金钱
780
注册时间
2021-4-15
在线时间
305 小时
发表于 2021-5-29 17:47:36 | 显示全部楼层
写个串口3 接收中断  再重定义一下串口3的u3_printf 接收和发送就直接简单易上手的使用了呀!正点的模块例程很多也是用串口3 的可以去移植一下 串口3驱动
日常敲键--头秃一片
回复

使用道具 举报

11

主题

131

帖子

0

精华

高级会员

Rank: 4

积分
757
金钱
757
注册时间
2020-5-11
在线时间
71 小时
 楼主| 发表于 2021-5-29 18:22:04 | 显示全部楼层
日渐秃兀 发表于 2021-5-29 17:47
写个串口3 接收中断  再重定义一下串口3的u3_printf 接收和发送就直接简单易上手的使用了呀!正点的模块例 ...

我写了串口3的接收,因为我只需要一个字符,所以我才那么写。
问题是openmv发送给串口3的数据发送不到串口1啊
回复

使用道具 举报

2

主题

44

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
234
金钱
234
注册时间
2021-5-21
在线时间
28 小时
发表于 2021-5-29 21:47:40 | 显示全部楼层
谢谢大佬的分享
回复

使用道具 举报

11

主题

131

帖子

0

精华

高级会员

Rank: 4

积分
757
金钱
757
注册时间
2020-5-11
在线时间
71 小时
 楼主| 发表于 2021-5-29 23:36:32 | 显示全部楼层
别沉了。。。
回复

使用道具 举报

11

主题

131

帖子

0

精华

高级会员

Rank: 4

积分
757
金钱
757
注册时间
2020-5-11
在线时间
71 小时
 楼主| 发表于 2021-5-30 09:27:39 | 显示全部楼层
捞捞我自己
回复

使用道具 举报

11

主题

131

帖子

0

精华

高级会员

Rank: 4

积分
757
金钱
757
注册时间
2020-5-11
在线时间
71 小时
 楼主| 发表于 2021-6-7 17:44:02 | 显示全部楼层

这不是个分享贴。。。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-22 19:42

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表