问题标签 [usart]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
18045 浏览

c - STM32上的ADC单次转换

我正在研究 STM32 F103x 上的 ADC 编程,并从最简单的情况开始——单次转换。内部温度传感器(连接到 ADC1)值被测量并使用 USART 将其发送到 COM 端口。目标似乎很清楚,但是当我尝试将源代码下载到闪存时,它不会向 COM 端口发送任何数据。USART 功能运行良好,我猜问题出在 ADC 配置部分,因为我被挂在等待完成转换的循环中:

到目前为止,这是我的源代码。

任何想法表示赞赏!

0 投票
1 回答
409 浏览

atmel - 在全双工功能中使用 usart

我想使用我的 Atxmega-µC 的 USART 功能。因此,我查看了 usart-example 的第一步。它旨在获取一个字符,然后将其发回。

我想知道这是否是一个并行过程(显然不是),如果我想真正并行地发送和接收数据,我应该如何重构这段代码,而不是像上面的示例代码中按顺序显示的那样。
理论上(直到现在还没有测试)将它分成几个线程不会改善这种情况,因为 µC 只是“单核”。是否有另一种通过 USART 并行发送和接收数据的方法?

0 投票
2 回答
1315 浏览

interrupt - avr USART 中断不工作

我正在使用以下代码来测试在 ATtiny2131 微控制器中工作的 usart 中断:

代码应该每秒闪烁 PD5 上的 LED,但它没有做任何事情,我不明白为什么。

请帮忙。

0 投票
0 回答
734 浏览

arm - 如何将多个usart连接到stm32板

我想知道如何将多个 USART(每个 usart 连接到终端)设备连接到单个 STM32L152RB,以便一个 USART 可以与另一个通信。这是要求 b - USART 板。这是关键(如果你这样做)。连接 b1->b2。b2->b3, b3->b4 通过 uart。

这代表 board3 上的“进行远程呼叫”。然后 b1 通过 uart 与 b2 通信,b2 与板 3 通信。板 3 将打开其 LED 开关以指示其正在拨打电话。

将停止此远程调用。

0 投票
2 回答
4687 浏览

python - 如何使用pyserial一次读取一行

我在尝试从 COM 端口读取数据时遇到问题我不知道是什么问题.. 这是我用来通过 com 端口发送和接收数据的代码。 com 端口连接到将要显示的数据发送到 com 端口的 STM32 板。我在要显示的字符串的末尾附加了 '\n'。所以这是代码

这是预期的输出

但我得到了这个 http://s15.postimg.org/sg9pvr20r/Untitled.jpg 抱歉,我无法粘贴总输出,所以我已经包含了我的输出截图..

0 投票
2 回答
2244 浏览

stm32 - USART RXNE 未在 STM32F0 中设置

我有 STM32F0DISCOVERY 板和 STM32F051R8T6 微控制器。我正在尝试使用 USART 与 PC 通信。

将数据从电路板发送到 PC 可以正常使用我的putChar()功能。

getChar()使用我的功能接收从 PC 发送到电路板的数据无法正常工作。问题是没有设置RXNE标志(读取数据寄存器非空)。但是,我在 Keil uVision4 中使用调试器时看到数据确实在 RDR(接收数据寄存器)中。

我已经尝试在不调试的情况下运行它,以防调试器在我的程序可以读取 RXNE 标志之前读取 RDR 寄存器并且它仍然无法正常工作。

这是我的代码:

这是putChar()正常工作的功能。

这是getChar()不起作用并不断返回的功能0xFF

0 投票
0 回答
305 浏览

serial-port - STM32L152RB中的多个UART连接

我想将 2 个 USART(USART1 和 USART2)连接到我的电路板。USART1 应该同时进行接收和发送,USART2 从板上获取输出并显示它。我通过它们的特定引脚配置了 USART1 和 USART2。谁能告诉我如何配置两个 USART,以便一个可以同时接收和发送,而另一个只能接收。

0 投票
1 回答
1536 浏览

bluetooth - STM32F3 DISCOVERY USART 不工作

我正在尝试将 HC-05 与我的 STM32F3 DISCOVERY 一起使用,但我无法让 USART 工作。

无论我是手动从 HC-05 读取数据还是使用中断,它都不起作用。

我试图在 arduino 上运行这个蓝牙模块,它在第一次尝试时工作,所以 HC-05 正在工作。

这是我的代码,如果你们能看一下并尝试找出任何错误,我将非常感激。

0 投票
1 回答
889 浏览

timer - STM32F429 定时器触发 USART DMA 传输问题

这是我在这个论坛的第一篇文章。我正在开发一个基于 STM32F429DISCOVERY 板的 MIDI 音序器设备,该板以 180MHz 的频率运行。为了发送 midi 消息,USART1 被配置为 31250 波特,并且适当的 DMA 被配置为将存储在 ram 中的 3 字节数组传输到 USART。我正在通过配置 Timer 4 更新中断来测试发送 midi 消息的时间,在该服务例程中我启用了 memory-to-peripheralUSART1 DMA 操作。这使我可以通过 USART1 外设定期发送 3 字节消息。

一切都很好,并且频率和数据都正确,但是我有一个小问题,我已经研究了几天并且无法纠正。为了让事情更清楚,在定时器中断例程中,我将发现 (RG13) 上的 LED 设置为暂时闪烁并将示波器的 1 个通道连接到 LED 引脚。示波器的第二个通道连接到 USART TX 引脚。现在,当代码执行时,我可以看到示波器 CH1 上的 LED 脉冲,然后是 CH2 上的 USART 串​​行数据。但由于某种原因,LED 脉冲和串行数据传输开始之间的时间会随着每次发送数据而波动。它随着每次发送而增加,从大约 1uS 到大约 30uS,然后跳回到 1。我注意到如果我稍微改变 USART 波特率,脉冲和数据发送之间的时间波动以模式变化,变快或变慢,距离更长或更短。我尝试从 USART 和 DMA 重置所有适当的标志,尝试禁用/启用定时器,使用中断优先级,但没有任何方法可以消除时间波动。正如您所想象的那样,它的稳定性对于 MIDI 音序器硬件应用程序至关重要,因为它基于音乐事件的时序,而音乐事件的时序必须坚如磐石。我也尝试过在没有 DMA 的情况下单独使用 USART,手动发送每个字节,结果基本相同。中断驱动的 USART TX 表现出同样的结果。唯一似乎可以消除 USART TX 响应时间波动的方法是,在每次发送操作之前取消初始化 USART 和 DMA 模块并再次重新初始化它们。这似乎提供了稳定的操作,但在定时器中断和通过 USART 实际发送数据之间插入了很长的延迟,这是不可接受的。

如果有人对此有任何想法或做过类似的事情,我需要一个关于在哪里看的建议。

提前非常感谢!

最好的问候,康斯坦丁

0 投票
1 回答
1351 浏览

linux - STM32F0-发现:没有 tty

我目前正在尝试通过 USART 将数据发送到我的 STM32F0308 板。数据应该由 Python 脚本使用 PySerial 发送。

但是,当我插上板子时,却找不到对应的/dev/ttyXXXX。

板子是分支的,我可以在上面刷代码(通过 USB 的 STLink),但是没有可见的端口。

dmesg说明电脑知道板子:

这是输出lsusb

这是输出ls /dev/tty*

这是我初始化串口的函数:

我使用的是 Ubuntu 15.04,但它也无法在另一台使用 Debian 的计算机上运行。据 ST 介绍,STM32F0x0 系列支持 USB。

编辑:根据要求,输出lsusb -v