Uart / Usart:仅使用Rx-pin

2019-07-14 17:36发布

我正在设计一个带有STM32f722 MCU(64引脚版本)的电路板,我不能浪费/不使用任何GPIO。我的问题是:是否可以选择仅使用uart / usart的Rx引脚,以便Tx引脚可以用于其他东西(在我的情况下是SPI_SCK)?如果我在STM32CubeMx中启用uart / usart并转到“配置”选项卡,我可以将“数据方向”更改为“仅接收”。但这并不能禁用Tx引脚。另一种方法可能是使用半双工模式,但无论如何都会使用Tx引脚,我无法将其用于SPI。我仍在计划自己的主板,没有任何硬件可供测试。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
kpj3026
1楼-- · 2019-07-14 21:45
从参考手册:“当发射机被禁止时,所述输出销返回到它的I / O端口配置。”。我不是100%肯定所以我不是把它作为答案发布,但我认为这意味着你可以为这个引脚提供任何类型的配置。因此,设置为SPI_SCK和UART的备用功能不会控制该引脚。一定要联系ST本身。
zzpf
2楼-- · 2019-07-15 03:31
如果没有针对您的特定部分研究规格表,如果它确实允许您具有灵活性,那将是不寻常的。虽然根据Bence的评论,这个可能。

但是,这并不意味着您无法共享不同功能的引脚。

这里的关键是专用一些引脚或多个引脚,以允许外部电路,多路复用器,门等,以了解器件当前如何使用引脚。这听起来意味着要占用更多的引脚,但如果你有足够的引脚可以共享,那么引脚的总数就可以减少。

在串行线路的情况下,您当然需要对其进行时间复用。也就是说,您无法在将引脚用于其他功能的同时进行串行通信。
成长的小师弟
3楼-- · 2019-07-15 04:56
 精彩回答 2  元偷偷看……
yvochen
4楼-- · 2019-07-15 10:23
您必须检查数据表以查看是否仅使用接收引脚支持半双工模式 - 例如,您可能不幸并且发现提供了一个但使用发送引脚。

但是,有一个肯定会有效的解决方案

为您要使用的非USART功能配置发送引脚,因为STM32允许任何引脚的唯一分配,而不管其他引脚。

配置USART接收备用功能的RX引脚

当您想要发送时,将RX引脚重新配置为GPIO并对信号进行位操作。位冲击发送可能比必须进行位采样接收更清晰,因为只要您及时重新配置引脚,就可以继续使用USART的接收中断。

你需要弄清楚的一件事是,当你有点传输时,USART会发生什么 - 不确定你是否会收到你自己的传输,甚至进入错误状态,但你可以清除标志时你切换回接收模式。
小佳99
5楼-- · 2019-07-15 12:04
我只需要接收数据,不想发送任何东西。因此不需要步骤3。您确定使用USART的RX引脚不会影响TX引脚上SPI时钟的功能吗?

一周热门 更多>