在类似于Unix的操作系统中,我们可以通过诸如/dev/ttyUSB0之类的文件访问串口。根据这个,可以使用文件名(如COM1: )来访问串口。对于这样的文件名,java的替代方案是什么?我不想使用Serial Communication自由主义者。
编辑
我想让我的代码看起来像这样。
String INPUT_PORT_FILE_NAME = linux?"/dev/ttyUSB0":"<File name of comport>"
File in = new File(INPUT_PORT_FILE_NAME)
我想要的是替代设备文件的寡妇。
过去,我曾在Linux和Windows环境中使用c++和python与串口通信。在Linux中,我还使用picocom、minicom和cutecom等程序进行串行通信,但现在我想使用简单的Linux命令读写串口,这不需要安装外部程序。我会在raspberry pi中使用这种方法与我的Arduino板进行通信。在下面的示例中,我使用stty设置串口选项,并使用echo和cat命令从串口发送和读取数据,但在最后,我没有看到任何输出,我在这个站点上阅读了与此相关的其他文章,但似乎没有什么对我有用。我可以使用cutecom与Arduino进行通信,但是使用下面的命令,我看不到任何响应。
Linux
我正在尝试将usb转串口驱动程序添加到我的arch linux arm设备中,并且我注意到内核源代码树中已经包含了FTDI驱动程序的源文件,位于:
驱动程序/usb/串口,存在ftdi_sio.c和ftdi_sio.h文件。
当我导航到内核/驱动程序时,到处都找不到ftdi_sio.ko模块。
如何构建ftdi内核模块并将其包含到引导中,以便在我的arch linux arm上具有usb转串口功能?
如何使用Posix/C函数检查Linux中是否已经打开了串口?我想检查串口的状态,以检查串口是否打开。
我想知道哪些方法适用于:
检查文件描述符以查看串口是否打开
检查串口文件名以查看串口是否打开,在下面的示例中是“/dev/ttyUSB0 0”
--
// This code is for example purposes only
int open_port()
{
int fd;
fd = open("/dev/ttyUSB0", O_RDWR | O_NOCTTY | O_NDELAY);
if (fd < 0)
{
p
为了创建一对串行端口,我跟踪了。效果很好。
现在,我正在开发一个Qt应用程序(使用)通过串口发送数据,我真正想要的是这样一个虚拟串口链接。但是QSerialPortInfo::availablePorts()似乎找不到/dev/ it /.港口。
为了在linux上建立这样的串口链接,我应该尝试哪种方法?
我有一个现有的Rails应用程序。我希望使用此应用程序从Windows计算机中的COM 1端口获取串口数据,但由于Heroku是一个运行在Linux服务器上的基于云的平台,因此无法从运行Heroku应用程序的本地机器上获取串口数据。如果我在Windows机器上运行独立的Ruby代码,那么它就可以正常工作,并且能够获得我想要的数据。
我收到以下错误
Unable to open COM1
我该如何解决这个问题?
Rails应用程序中访问串口数据的部分代码是:
port_str = 'COM1' #may be different for you
baud_rate = 240