问题标签 [uart]

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 投票
1 回答
432 浏览

bluetooth - RN-41 蓝牙和 dsPIC

有几个问题我希望是相当直截了当的。

我一直在通过 RS232 以 115200 的波特率将数据从我的 PIC 传输到 PC。我最近有一个 RN-41 蓝牙模块,希望开关就像为模块供电和连接 PIC TX 一样简单(通过 max3232)到 RN-41 的 RX,正如在线社区让我相信的那样。

我可以连接它并将其与计算机配对,我还可以使用 PUTTY/Realterm 更改参数,例如名称和波特率。最后,通过将链接连接到蓝牙模块上的 RX 和 TX 并为其供电,我可以通过使用 PUTTY 发送和回显文本来 ping 文本,因此我相当确定模块没有损坏。

但是,当我尝试将我的数据从 PIC 传输到蓝牙模块并使用 realterm(有线连接工作正常)查看它时,我收到了数据,但这不是预期的。我期待一个 25 字节的数据包,标头值为 2,我得到大约 12-15 个字节和 -65 的标头。

第一个值 -65 始终相同,其他数据可以更改,这确实表明波特率有问题,但我尝试了各种波特率(在我的 UART 代码、蓝牙参数和实时中更改) ,并且数据根本没有变化;总是错的。

我错过了什么?我需要更改蓝牙配置吗?我还检查了奇偶校验位、停止位等,彼此都一样。

0 投票
2 回答
4979 浏览

linux - Silabs Usb CP210x 驱动程序错误

当我尝试为我的 Silabs USB 到 UART 桥接器安装驱动程序时遇到问题。

我从这里下载了驱动程序:http ://www.silabs.com/products/mcu/Pages/USBtoUARTBridgeVCPDrivers.aspx

我正在尝试将它安装在具有内核 3.6.11 的树莓中

在说明中,我可以看到以下内容:

但是,当我尝试调用 MAKE 时出现此错误:

cc1:一些警告被视为错误

这里有什么问题?

0 投票
0 回答
2967 浏览

serial-port - 通过 UART 将单个字符从 pic16f887 传输到 PC 终端(腻子、超级终端等)

我正在尝试从 pic16f887 传输一个字符“a”并在终端上查看结果,但我得到的只是一个问号(使用 USART 终端),或者什么都没有(腻子,超级终端)。我对 C 不是很好,因为我只是一个初学者,但我真的需要让它为我的学校项目工作。我尝试了很多我在互联网上找到的代码,我确实设法收到了来自终端的字符,比如说,打开一个 LED,但我无法让它发送任何东西。我有一种强烈的感觉,它在代码的某个地方。我使用 MPLAB 和 Hi-Tech C 编译器来构建项目。这里是:

请如果有人在此代码中看到问题(或更多问题),请帮我解决这个问题;)哦,当按下连接到 TX 引脚(RC6)的按钮时,我正在传输..

0 投票
0 回答
370 浏览

c - 检查 THRE 通过串口发送字符

我正在尝试使用以下方式将字符串发送到串行端口:

例如,在尝试编写 ABCDEF 时,有时它会跳过字母或多次打印它们。我的猜测是我没有正确验证 THRE 的状态,因为它不仅是错误的结果,while() 是否存在似乎没有做任何事情。有任何想法吗?

0 投票
4 回答
4324 浏览

c++ - 是否可以在没有标准库的情况下写入控制台?c/c++

我正在手臂微处理器上编程,并试图通过 UART 使用打印语句进行调试。我不想添加stdlibs只是为了调试。stdio.h有没有办法在没有/的情况下打印到控制台iostream.h?我可以自己写printf()吗?

或者,我可以使用 DMA 控制器并直接写入 UART 来执行此操作。但是我想避免这种情况是可能的。使用内置的测试功能“echo”或“remote loop-back”我知道我已经正确配置了UART。

0 投票
0 回答
492 浏览

c - UART - 不显示响应

我在我的树莓派上使用下面的代码。我在 TX 和 RX 线之间建立了物理连接。

但是当我吃午饭时,它会看到:

写入开始... 写入停止... 12345 sen = 8 读取开始... 收到 SIGIO 信号。读取停止... 响应 = , 多少字节 6

问题是我没有看到任何响应字符串。我收到了 6 个字节,就像我发送的一样。我看到新行就像在 comm[10]="12345\n";

我能做些什么?

我还用 minicom 进行了测试:当我吃午饭时: minicom -b 115200 -o -D /dev/ttyAMA0

在另一个终端窗口上我写: printf '12345' > /dev/ttyAMA0

当 TX 和 RX 连接时,我在 minicom 屏幕上看到了它。可以吗?

0 投票
2 回答
3159 浏览

memory - UART转SD卡

我正在尝试实现一种将数据从 dsPIC33F 写入 SD 卡的方法。我目前可以通过 UART 将数据传输到蓝牙和 USB,但我在网上找不到任何关于通过 UART 写入 SD 卡的信息;这一切似乎都是SPI。

使用 SPI,但我已经在使用 I2C,而且似乎很难在同一个 PIC 上同时使用 SPI 和 I2C,因为它们共享引脚。

那么,任何人都可以建议任何有关通过 UART 将数据写入 SD 卡的信息,或者同时使用 SPI 和 I2C 的方法吗?

我想要的只是某种形式的存储方法,所以如果有人可以建议另一种方法,也许是 EEPROM 或 USB 闪存驱动器,那么我会全力以赴。我需要至少 2GB 的存储空间,越多越好。

0 投票
2 回答
1815 浏览

c - 使用 16550D UART FIFO

我正在尝试使用 FIFO 寄存器创建一个 UART_read 函数,但我无法理解它是如何工作的。我知道它允许我每次读取获得更多字符,因此这意味着读取将中断处理器的次数更少,但是在启用它之后我该如何使用它呢?我在任何地方都找不到例子。我目前的功能是:

0 投票
2 回答
2010 浏览

c - 处理用户空间和内核之间的buf

我正在制作一个能够使用 UART 接收和发送字符的简单设备驱动程序。

我的读写函数如下:

我用来测试的部分程序是:

有了我所拥有的,我写“HELLO,MY NAME IS”字符串没有问题,但是当我从UART读取“hey”时,读取函数中的buf显示为“heyLO,MY NAME IS”,而且我不明白为什么会发生这种覆盖。我现在最好的猜测是,首先我写入内核访问的用户空间,然后我读到同一个用户空间,最后覆盖了已经存在的内容。

0 投票
1 回答
639 浏览

terminal - 终端提示失真且不可读

我是 linux 编程的新手。我按照网络上的示例读取/写入控制台,例如“/dev/ttyS0”。每次我运行代码时,它都会退出而不提示用户编写输入。它还会扭曲终端提示符(换行符),我无法看到我正在输入的内容......这是我正在使用的代码: