精华内容
下载资源
问答
  • Android通过USB转串口跟串口设备进行通信。稍微更改后可集成在自己的系统里了
  • 当我们写好了串口程序,总是需要测试的;...使用虚拟串口,主要原理是依靠软件虚拟出来一个串口设备,然后使用串口助手等软件充当串口设备,从而实现与串口程序的读写交互。 使用到的串口设备主要包含以下几个(...

    当我们写好了串口程序,总是需要测试的;但是如何测试呢?我们有的时候可能根本就没有外接串口设备啊?
    本blog提供两种测试方式:

    • 虚拟串口:使用VSPD软件虚拟一个串口设备
    • 真实串口:将串口设备连接到VM的Linux系统

    1. 虚拟串口

    使用虚拟串口,主要原理是依靠软件虚拟出来一个串口设备,然后使用串口助手等软件充当串口设备,从而实现与串口程序的读写交互。
    使用到的串口设备主要包含以下几个(仅参考):

    • VSPD(Virtual Serial Port Driver),虚拟化一个串口
    • sscom或其它:充当串口设备(助手)

    mark

    1). VSPD配置

    ①. 打开VSPD,点击“Add Pair"

    mark

    ②. windows下 “设备管理”中将会有一对虚拟串口设备

    mark
    mark

    ③. vm中添加串口设备
    mark
    mark
    mark

    ④. 打开sscom(或其他串口助手)
    mark

    ⑤. 以上设置完成,就可以通过串口程序与sscom串口助手进行通信了

    当然程序读写串口设备必须是 ttyS3(因为我们刚才VM设置的是com3)

    2. 真实串口

    当串口设备插入了windows的com口,我们想要将其设置到VM的linux系统各种,可以按照以下步骤进行:

    ①. 查看windows下的串口设备是否连接

    mark

    ②. 连接VM的串口

    mark

    ③. 当连接完成后,打开虚拟机,你将会发现,/dev/ 下多了一个ttyUSB0的设备

    mark

    ④. 以上设置完成后,就可以串口编程进行 ttyUSB0 读写了

    转载于:https://www.cnblogs.com/Jimmy1988/p/8761776.html

    展开全文
  • 串口设备应用笔记

    2018-11-14 14:55:28
    串口设备应用笔记 摘要 本应用笔记描述了如何使用RT-Thread的串口设备,包括串口配置,设备操作接口的应用。并给出了在正点原子STM32F4探索者开发板上验证的代码示例。 1本文的目的和结构 1.1本文的目的和背景 ...

    串口设备应用笔记

    摘要

    本应用笔记描述了如何使用RT-Thread的串口设备,包括串口配置,设备操作接口的应用。并给出了在正点原子STM32F4探索者开发板上验证的代码示例。

    1本文的目的和结构

    1.1本文的目的和背景

    串口(通用异步收发器,常写作UART,uart)是最为广泛使用的通信接口之一。在裸机平台或者是没有设备管理框架的RTOS平台上,我们通常只需要根据官方手册编写串口硬件初始化代码即可。引入了带设备管理框架的实时操作系统RT-Thread后,串口的使用则与裸机或者其它RTOS有很大的不同之处.RT-Thread中自带I / O设备管理层,将各种各样的硬件设备封装成具有统一接口的逻辑设备,方便管理及使用。本文说明了如何在RT-Thread中使用串口。

    1.2本文的结构

    本文首先给出使用RT-Thread的设备操作接口开发串口收,发数据程序的示例代码,并在正点原子STM32F4探索者开发板上验证。接着分析了示例代码的实现,最后深入地描述了RT- Thread设备管理框架与串口的联系。

    2问题阐述

    RT-Thread提供了一套简单的I / O设备管理框架,它把I / O设备分成了三层进行处理:应用层,I / O设备管理层,硬件驱动层。应用程序通过RT-Thread的设备操作接口获得正确的设备驱动,然后通过这个设备驱动与底层I / O硬件设备进行数据(或控制)交互.RT-Thread提供给上层应用的是一个抽象的设备操作接口,给下层设备提供的是底层驱动框架。

    RT-Thread设备管理框架

    那么用户如何使用设备操作接口开发出跨平台的串口应用代码呢?

    3问题的解决

    本文基于正点原子STM32F4探索者开发板,给出了串口的配置流程和应用代码示例。由于RT-Thread设备操作接口的通用性,因此这些代码与硬件平台无关,读者可以直接将它用于自己使用的硬件平台上。正点原子STM32F4探索者开发板使用的是STM32F407ZGT6,具有多路串口。我们使用串口1作为shell终端,串口2作为实验用串口,测试数据收发。终端软件使用putty。板载串口1带有USB转串口芯片,因此使用USB线连接串口1和PC即可;串口2则需要使用USB转串口模块连接到PC。

    正点原子STM32F4探索者

    3.1准备和配置工程

    1. 下载  RT-Thread源码

    2. 进入  rt-thread\bsp\stm32f4xx-HAL 目录,在env命令行中输入menuconfig,进入配置界面,使用menuconfig工具(学习如何使用)配置工程。

    (1)配置shell使用串口1:RT-Thread Kernel ---> Kernel Device Object --->修改控制台的设备名称为uart1。

    (2)勾选使用UART1,使用UART2,选择芯片型号为STM32F407ZG,时钟源为外部8MHz,如图所示:

    使用menuconfig配置串口

    1. 输入命令scons --target = mdk5 -s生成keil工程,打开工程后先修改MCU型号为STM32F407ZETx,如图所示:

    检查芯片型号

    1. 打开putty,选择正确的串口,软件参数配置为115200-8-1-N,无流控。如图所示:

    putty配置

    1. 编译,下载程序,按下复位后就可以在串口1连接的终端上看到RT-Thread标志日志,输入list_device命令能查看到uart1,uart2字符设备就表示串口配置好了。

    使用list_device命令查看uart设备

    3.2加入串口相关代码

    下载串口示例代码

    添加示例代码到工程

    本应用笔记示例代码app_uart.c,app_uart.h,app_uart.c中是串口相关操作的代码,方便阅读.app_uart.c中提供了4个函数uart_open,uart_putchar,uart_putstring,uart_getchar以方便使用串口.app_uart。 c中的代码与硬件平台无关,读者可以把它直接添加到自己的工程。利用这几个函数在main.c中编写测试代码.main.c源码如下:

     

    #include "app_uart.h"
    #include "board.h"
    void test_thread_entry(void* parameter)
    {
        rt_uint8_t uart_rx_data;
        /* 打开串口 */
        if (uart_open("uart2") != RT_EOK)
        {
            rt_kprintf("uart open error.\n");
             while (1)
             {
                rt_thread_delay(10);
             }
        }
        /* 单个字符写 */
        uart_putchar('2');
        uart_putchar('0');
        uart_putchar('1');
        uart_putchar('8');
        uart_putchar('\n');
        /* 写字符串 */
        uart_putstring("Hello RT-Thread!\r\n");
        while (1)
        {
            /* 读数据 */
            uart_rx_data = uart_getchar();
            /* 错位 */
            uart_rx_data = uart_rx_data + 1;
            /* 输出 */
            uart_putchar(uart_rx_data);
        }
    }
    int main(void)
    {
        rt_thread_t tid;
        /* 创建 test 线程 */
        tid = rt_thread_create("test",
                        test_thread_entry,
                        RT_NULL,
                        1024,
                        2,
                        10);
        /* 创建成功则启动线程 */
        if (tid != RT_NULL)
            rt_thread_startup(tid);
        return 0;
    }
    

    这段程序实现了如下功能:

    1. main函数里面创建并启动了测试线程test_thread_entry。

    2. 测试线程调,用于uart_putchar函数发送字符和uart_putstring函数发送字符串。

    3. 接着在while循环里面调用uart_getchar函数读取接收到的数据并保存到局部变量uart_rx_data中,最后将数据错位后输出。

    3.3运行结果

    编译,将代码下载到板卡,复位,串口2连接的终端软件putty(软件参数配置为115200-8-1-N,无流控)输出了字符2,0,1,8和字符串Hello RT -Thread!。输入字符'A',串口2接收到将其错位后输出。实验现象如图所示:

    实验现象

    图中putty连接开发板的串口2作为测试串口。

    4进阶阅读

    串口通常被配置为接收中断和轮询发送模式。在中断模式下,CPU不需要一直查询等待串口相关标志寄存器,串口接收到数据后触发中断,我们在中断服务程序进行数据处理,效率较高。 RT-Thread官方bsp默认便是这种模式。

    4.1使用哪个串口

    uart_open函数用于打开指定的串口,它完成了串口设备回调函数设置,串口设备的开启和事件的初始化。源码如下:

     

    rt_err_t uart_open(const char *name)
    {
        rt_err_t res;
        /* 查找系统中的串口设备 */
        uart_device = rt_device_find(name);
        /* 查找到设备后将其打开 */
        if (uart_device != RT_NULL)
        {
            res = rt_device_set_rx_indicate(uart_device, uart_intput);
            /* 检查返回值 */
            if (res != RT_EOK)
            {
                rt_kprintf("set %s rx indicate error.%d\n",name,res);
                return -RT_ERROR;
            }
            /* 打开设备,以可读写、中断方式 */
            res = rt_device_open(uart_device, RT_DEVICE_OFLAG_RDWR |
                                 RT_DEVICE_FLAG_INT_RX );
            /* 检查返回值 */
            if (res != RT_EOK)
            {
                rt_kprintf("open %s device error.%d\n",name,res);
                return -RT_ERROR;
            }
        }
        else
        {
            rt_kprintf("can't find %s device.\n",name);
            return -RT_ERROR;
        }
        /* 初始化事件对象 */
        rt_event_init(&event, "event", RT_IPC_FLAG_FIFO);
        return RT_EOK;
    }
    

    简要流程如下:

    uart_open函数流程图

    uart_open函数使用到的设备操作接口有:rt_device_find,rt_device_set_rx_indicate,rt_device_open.uart_open函数首先调用rt_device_find根据串口名字获得串口句柄,保存在静态全局变量uart_device中,后面关于串口的操作都是基于这个串口句柄。这里的名字是在drv_usart.c中调用注册函数rt_hw_serial_register决定的,该函数将串口硬件驱动和RT-Thread设备管理框架联系起来了。

     

        /* register UART2 device */
        rt_hw_serial_register(&serial2,
                              "uart2",
                              RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX,
                              uart);
    

    接着调用rt_device_set_rx_indicate设置串口接收中断的回调函数。最后调用rt_device_open以可读写,中断接收方式打开串口。它的第二个参数为标志,与上面提到的注册函数rt_hw_serial_register保持一致即可。

     

    rt_device_open(uart_device, RT_DEVICE_OFLAG_RDWR | RT_DEVICE_FLAG_INT_RX);
    

    最后调用rt_event_init初始化事件.RT-Thread中默认开启了自动初始化机制,因此用户不需要在应用程序中手动调用串口的初始化函数(drv_usart.c中的INIT_BOARD_EXPORT实现了自动初始化)。用户实现的由宏RT_USING_UARTx选择的串口硬件驱动将自动关联到RT-Thread中来(drv_usart.c中的rt_hw_serial_register实现了串口硬件注册)。

    4.2串口发送

    uart_putchar函数用于发送1字节数据.uart_putchar函数实际上调用的是rt_device_write来发送一个字节,并采取了防出错处理,即检查返回值,失败则重新发送,并限定了超时。源码如下:

     

    void uart_putchar(const rt_uint8_t c)
    {
        rt_size_t len = 0;
        rt_uint32_t timeout = 0;
        do
        {
            len = rt_device_write(uart_device, 0, &c, 1);
            timeout++;
        }
        while (len != 1 && timeout < 500);
    }
    

    调用uart_putchar发生的数据流向示意图如下:

    uart_putchar数据流

    应用程序调用uart_putchar时,实际调用关系为:rt_device_write ==> rt_serial_write ==> drv_putc,最终数据通过串口数据寄存器发送出去。

    4.3串口接收

    uart_getchar函数用于接收数据,uart_getchar函数的实现采用了串口接收中断回调机制和事件用于异步通信,它具有阻塞特性。相关源码如下:

     

    /* 串口接收事件标志 */
    #define UART_RX_EVENT (1 << 0)
    /* 事件控制块 */
    static struct rt_event event;
    /* 设备句柄 */
    static rt_device_t uart_device = RT_NULL;
    
    /* 回调函数 */
    static rt_err_t uart_intput(rt_device_t dev, rt_size_t size)
    {
        /* 发送事件 */
        rt_event_send(&event, UART_RX_EVENT);
        return RT_EOK;
    }
    rt_uint8_t uart_getchar(void)
    {
        rt_uint32_t e;
        rt_uint8_t ch;
        /* 读取 1 字节数据 */
        while (rt_device_read(uart_device, 0, &ch, 1) != 1)
    {
             /* 接收事件 */
            rt_event_recv(&event, UART_RX_EVENT,RT_EVENT_FLAG_AND |
                          RT_EVENT_FLAG_CLEAR,RT_WAITING_FOREVER, &e);
    }
        return ch;
    }
    

    uart_getchar函数内部有一个while()循环,先调用rt_device_read去读取一字节数据,没有读到则调用rt_event_recv等待事件标志,挂起调用线程;串口接收到一字节数据后产生中断,调用回调函数uart_intput,回调函数里面调用了rt_event_send发送事件标志以唤醒等待该事件事件的线程。调用uart_getchar函数发生的数据流向示意图如下:

    uart_getchar数据流

    应用程序调用uart_getchar时,实际调用关系为:rt_device_read ==> rt_serial_read ==> drv_getc,最终从串口数据寄存器读取到数据。

    4.4 I / O设备管理框架和串口的联系

    RT-Thread自动初始化功能依次调用hw_usart_init ==> rt_hw_serial_register ==> rt_device_register完成了串口硬件初始化,从而将设备操作接口和串口驱动联系起来,我们就可以使用设备操作接口来对串口进行操作。

    串口驱动和设备管理框架联系

    更多关于I / O设备管理框架的说明和串口驱动实现细节,请参考“RT-Thread编程手册” 第6章I / O设备管理

    在线查看地址:链接

    5 API参考

    注意:app_uart.h文件不属于RT-Thread。

    5.1 API列表

    API 头文件
    uart_open app_uart.h
    uart_getchar app_uart.h
    uart_putchar app_uart.h
    rt_event_send rt-thread\include\rtthread.h
    rt_event_recv rt-thread\include\rtthread.h
    rt_device_find rt-thread\include\rtthread.h
    rt_device_set_rx_indicate rt-thread\include\rtthread.h
    rt_device_open rt-thread\include\rtthread.h
    rt_device_write rt-thread\include\rtthread.h
    rt_device_read rt-thread\include\rtthread.h

    5.2核心API详解

    5.2.1 rt_device_open()

    函数原型

     

        rt_err_t  rt_device_open (rt_device_t dev, rt_uint16_t oflag)
    

    函数参数

    参数 描述
    开发 设备句柄,用来操作设备
    oflag中 访问模式

    函数返回

    返回值 描述
    RT_EOK 正常
    -RT_EBUSY 如果设备注册时指定的参数中包括RT_DEVICE_FLAG_STANDALONE,此设备将不允许重复打开

    此函数可根据设备句柄来打开设备。

    oflag支持以下参数:

     

    RT_DEVICE_OFLAG_CLOSE   /* 设备已经关闭(内部使用)*/
    RT_DEVICE_OFLAG_RDONLY  /* 以只读方式打开设备 */
    RT_DEVICE_OFLAG_WRONLY  /* 以只写方式打开设备 */
    RT_DEVICE_OFLAG_RDWR    /* 以读写方式打开设备 */
    RT_DEVICE_OFLAG_OPEN    /* 设备已经打开(内部使用)*/
    RT_DEVICE_FLAG_STREAM   /* 设备以流模式打开 */
    RT_DEVICE_FLAG_INT_RX   /* 设备以中断接收模式打开 */
    RT_DEVICE_FLAG_DMA_RX   /* 设备以 DMA 接收模式打开 */
    RT_DEVICE_FLAG_INT_TX   /* 设备以中断发送模式打开 */
    RT_DEVICE_FLAG_DMA_TX   /* 设备以 DMA 发送模式打开 */
    

    注意事项

    如果上层应用程序需要设置设备的接收回调函数,则必须以INT_RX或者DMA_RX的方式打开设备,否则不会回调函数。

    5.2.2 rt_device_find()

    函数原型

     

        rt_device_t rt_device_find(const char *name)
    

    函数参数

    参数 描述
    名称 设备名称

    函数返回

    查找到对应设备将返回相应的设备句柄;否则返回RT_NULL

    此函数根据指定的设备名称查找设备。

    5.2.3 rt_device_set_rx_indicate()

    函数原型

     

    rt_err_t rt_device_set_rx_indicate(rt_device_t dev,
                              rt_err_t (*rx_ind)(rt_device_t dev, rt_size_t size))
    

    函数参数

    参数 描述
    开发 设备句柄
    rx_ind 接收中断回调函数

    函数返回

    返回值 描述
    RT_EOK 成功

    此函数可设置一个回调函数,当硬件设备收到数据时回调以通知应用程序有数据到达。

    当前硬件设备接收到数据时,会回调这个函数并把收到的数据长度放在尺寸参数中传递给上层应用。上层应用线程应在收到指示后,立刻从设备中读取数据。

    5.2.4 rt_device_read()

    函数原型

     

    rt_size_t rt_device_read (rt_device_t dev,
                              rt_off_t    pos,
                              void       *buffer,
                              rt_size_t   size)
    

    函数参数

    参数 描述
    开发 设备句柄
    POS 读取数据偏移量
    缓冲 内存缓冲区指针,读取的数据将会被保存在缓冲区中
    尺寸 读取数据的大小

    函数返回

    返回读到数据的实际大小(如果是字符设备,返回大小以字节为单位;如果是块设备,返回的大小以块为单位);如果返回0,则需要读取当前线程的错误来判断错误状态。

    此函数可从设备中读取数据

    调用这个函数,会从设备dev中获得数据,并存放在缓冲区缓冲区中。这个缓冲区的最大长度是size.pos根据不同的设备类别存在不同的意义。

    5.2.5 rt_device_write()

    函数原型

     

    rt_size_t rt_device_write(rt_device_t dev,
                              rt_off_t    pos,
                              const void *buffer,
                              rt_size_t   size)
    

    函数参数

    参数 描述
    开发 设备句柄
    POS 写入数据偏移量
    缓冲 内存缓冲区指针,放置要写入的数据
    尺寸 写入数据的大小

    函数返回

    返回写入数据的实际大小(如果是字符设备,返回大小以字节为单位;如果是块设备,返回的大小以块为单位);如果返回0,则需要读取当前线程的错误来判断错误状态。注:调用这个函数,会把缓冲区缓冲中的数据写入到设备dev中。写入数据的最大长度是size.pos根据不同的设备类别存在不同的意义。

    此函数可向设备中写入数据。

    展开全文
  • RT-Thread 查找串口设备

    2020-12-17 21:30:13
    应用程序根据串口设备名称获取设备句柄,进而可以操作串口设备,查找设备函数如下: rt_device_t rt_device_find(const char* name); 一般情况下,注册到系统的串口设备名称为 uart0,uart1等,使用示例如下所示: ...

    应用程序根据串口设备名称获取设备句柄,进而可以操作串口设备,查找设备函数如下:

    rt_device_t rt_device_find(const char* name);
    

    在这里插入图片描述
    一般情况下,注册到系统的串口设备名称为 uart0,uart1等,使用示例如下所示:

    #define SAMPLE_UART_NAME       "uart2"    /* 串口设备名称 */
    static rt_device_t serial;                /* 串口设备句柄 */    
    /* 查找串口设备 */
    serial = rt_device_find(SAMPLE_UART_NAME);
    
    展开全文
  • 在目前android设备调试过程中,经常有客户需要用外挂串口设备,但是在后期联调时,由于环境因素,自己调试时不知道如何进行。因此下面就windows环境下android设备使用adb调试外挂串口设备调试的要求和步骤记录如下:...

    在目前android设备调试过程中,经常有客户需要用外挂串口设备,但是在后期联调时,由于环境因素,自己调试时不知道如何进行。因此下面就windows环境下android设备使用adb调试外挂串口设备调试的要求和步骤记录如下:

    windows机器安装adb

    查看系统usb 串口设备是否正常挂载

    在cmd 菜单输入adb shell ,然后输入如下指令查看ttyUSB设备是够挂载。

    ls -al /dev/ttyUSB*

    若能正常显示你需要打开的串口,则证明设备已挂载正常。

    usb串口输出

    打开一个adb窗口,输入如下指令,等待输入

    cat /dev/ttyS0

    usb串口输入

    重新打开一个窗口若系统的busybox带有microcom ,可以按照如下方式打开,进行串口通信:

    busybox microcom -t 15000 -s 115200 /dev/ttyS0

    若系统未集成micocom,按照如下方式进行:

    echo -e "AT\r\n" /dev/ttyS0

    注:以下操作都在进入adb shell 后进行。

    特殊说明:

    输入和输出都在进入adb shell串口界面后进行,且需要打开2个adb shell的窗口。

    可在前期调试将串口的RX,TX脚短路,形成回路,可发现收发数据一致,表示串口工作正常。

    usb转串口需要系统支持,需要打开系统的usb转串口功能,不然不能在dev目录找到对应的设备。

    展开全文
  • Android系统访问串口设备源码

    热门讨论 2014-03-13 11:48:05
    在常见的嵌入式外设中,串口通信是经常使用的一种通信机制,本篇文章给你带来,如何在Android系统中实现对串口设备的访问。 在Android中如何访问底层Linux的设备驱动,必然要用到HAL,即:硬件抽象层。关于代码的...
  • ubuntu上绑定串口设备

    2019-04-28 13:00:32
    使用串口设备的时候系统会随机分配设备名称,为了使用串口通信的时候不改代码,可以对其进行绑定。 查看自己设备的dVendor和idProduct $ lsusb Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub ...
  •  这里的虚拟串口设备并不是开发板上的外设,而是由驱动模拟出来的一个fifo缓冲区,在功能上类似串口外设,可以实现数据的收发,收发对象是用户层和内核层,在一定程度上可以说是弱化的具有内环回作用的串口。...
  • 串口同步和异步的读取与串口设备编程 http://blog.csdn.net/wlk1229/article/details/52566701 串口同步读取的时候ReadLen = (cs.cbInQue > len) ? cs.cbInQue:len;修正后可以正常读取。
  • Android系统访问串口设备

    万次阅读 多人点赞 2014-03-13 11:44:56
    在常见的嵌入式外设中,串口通信是经常使用的一种通信机制,本篇文章给你带来,如何在Android系统中实现对串口设备的访问。在Android中如何访问底层Linux的设备驱动,必然要用到HAL,即:硬件抽象层。关于HAL的概念...
  • 用“串口分身”完成多个应用访问同一台串口设备工具/原料安装软件创建“串口分身”注意事项 实际应用中,会遇到电脑中安装的多个软件要访问同一台串口设备的情景。 这时候可以使用虚拟串口工具软件,将物理串口化身...
  • 用“串口聚合”实现不修改程序访问多台串口设备工具/原料安装软件创建“串口聚合”注意事项 项目应用中,应用程序一般可以对一个串口进行读写操作。当遇到需要访问多台相同的串口设备时,可以使用MX虚拟串口软件,将...
  • linux系统下串口设备和串口号绑定

    千次阅读 2020-09-20 22:47:15
    3.7 linux系统下串口设备和串口号绑定 3.7.1 问题由来 ​在ROS小车的开发过程中,需要使用ROS通信串口模块、激光雷达的串口模块、IMU的串口模块等,为了防止每次开机这些设备的串口号发生变动,所以需要对串口号与...
  • Linux系统 串口设备

    千次阅读 2013-07-18 18:04:24
    在Linux系统中,串口设备是通过串口终端设备文件来访问的,也就是通过访问/dev/ttyS0、/dev/ttyS1、/dev/ttyS2、/dev/ttyS3这些设备文件实现对串口的访问。对串口进行读写要经过下面几个步骤。     一、 打开...
  • 插上串口设备导致鼠标乱飘

    千次阅读 2019-07-11 10:32:33
    最终在网上搜寻答案发现是插上串口设备导致的问题,因为串口一直不停的发送数据,会导致电脑将其误识别成鼠标设备。 会发现插上串口设备后,多出来一个Miscrosoft Serial Mouse设备,就是这个鼠标设备不停向主机...
  • C++串口同步和异步的读取与串口设备编程

    万次阅读 多人点赞 2016-09-19 23:06:45
    本文主要讲述如何对串口进行高效率的读写,当串口中数据到达时立即读取进行处理,以及如何将该方法运用到串口设备编程中。为了使得程序更加清晰文中的代码去除了异常处理的情况。文中加粗的文字相应的比较重要,需要...
  • 查看 android usb串口设备信息 adb shell 进入执行 cat /proc/bus/input/devices看到。
  • 回顾Qt调用串口设备

    千次阅读 2018-02-22 22:41:31
    最近一直在学习如何使用 Qt5.10 编写... 那么废话不多说了,今天要回顾的内容是关于Qt这个软件中调用系统串口设备进行通信的方法。一、串口基本操作1.环境配置 Qt5中有一个QSerialPort类,使用它我们就可以方便的...
  • Ubuntu下映射串口设备到docker

    千次阅读 2018-12-26 19:10:56
    # docker run --rm -it --device /dev/ttyUSB0:/dev/ttyS0 ubuntu:14.04 /bin/sh 注意:/dev/ttyUSB0 //Ubuntu下串口设备 /dev/ttyS0 //Docker下串口设备  
  • linux下串口设备

    千次阅读 2013-10-08 11:00:26
    1,查看linux下串口设备可在/sys/class/tty打印,此目录下的文件都是链接文件; 2,一般linux下串口设备在dev目录下为ttysxxx或是ttyAMAx,具体可查看/sys/class/tty下文件信息; 3,注意/sys目录和/proc目录下的...
  • Android与串口设备通信的方案

    千次阅读 2019-05-23 21:08:16
    上图中用与Android与串口设备通信的方案有四种: 第一种是直接用SDK的BluetoothSocket类来进行蓝牙通信,外部设备再用蓝牙转串口进行控制。这种方式有较高延时,蓝牙模块需要供电,低带宽。 第二种是使用USB转RS232...
  • Android AS下的OTG串口设备读写

    千次阅读 热门讨论 2019-04-23 19:48:57
    Android AS下的OTG串口设备读写新建工程添加工具类添加设备参数列表具体实现WIFI adb 了解嵌入式的读者应该知道在单片机编程中串口(uart)通讯接口最常用的就是TTL和USB接口,将单片机TTL转USB就可以接入电脑查看串口...
  • 在串口通信的程序中,如果PC上同时连接有多个串口,那么从应用程序里打开串口时,就很难知道是哪一个串口,这时候就必须要通过设备管理器去查看串口名称,这份代码就是解决这个问题,调用系统api,读取串口设备的...
  • 串口设备是linux系统中最基本的设备之一,在嵌入式linux开发中几乎是必不可少的。由于串口使用简单、广泛,除了使用一路串口作为调试终端输出外,还会使用串口作为外部设备的连接总线。
  • 串口设备调试工具

    热门讨论 2013-12-20 13:38:17
    2:可模拟设备回复数据,需要在主界面开启模拟设备回复数据。当接收到设置好的指令时,立即回复设置的回复指令。例如指定收到0x16 0x00 0xFF 0x01需要回复0x16 0x00 0xFE 0x01,则只需要在SendData.txt中添加一条...
  • 需要在ROS环境下对几台设备进行标定,设备的是串口连接 设备:Mti-G 700惯性传感器...usb转串口线连接到电脑上,在/dev下面就会产生一个文件夹serial,里面是串口设备信息,同时/dev下面还会生成一个ttyUSB0文件,此即
  • 【C#】Winform监听USB串口设备拔插 零、问题 最近在开发串口相关的软件,需要检测串口拔掉后主动关闭串口,因此需要检测到USB的拔插事件。 一、解决 在主窗口From类下覆盖WndProc方法: //事件代码 private const ...
  • 许多设备都是USB串口设备,比如陀螺仪,有些设备是232转USB的设备。使用USB口可以节省串口模块,方便使用。 倍福接USB是使用虚拟串口,可以在倍福官网里面搜索virtual com,可以得到一个例子程序。但是我把程序下载...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 16,583
精华内容 6,633
关键字:

串口设备