将SmartFusion板连接到Mac或Linux

时间:2016-04-12 05:56:45

标签: c++ linux serial-port usb uart

我目前正在尝试将我的smartfusion连接到我的Mac电脑。我已将FTDI芯片连接到SmartFusion并通过USB连接到我的计算机。我的印象是我可以在/dev目录中打开文件描述符并对其进行读写以发送消息。这不是这种情况吗?我尝试进入/dev目录,但似乎无法在其中包含字符串cat的任一设备上执行usb。当我在其中一个上执行cat而在另一个上没有得到任何东西时,我会变得垃圾。

我尝试使用以下命令的屏幕

screen <name_with_usb in /dev> 9600

但也输出了垃圾

我还尝试编写以下C ++程序,该程序使用FTDI驱动程序尝试打开与FTDI芯片的连接。我使用下面的命令安装了这些驱动程序

brew install libftdi

这是程序

#include <iostream>
#include <ftdi.h>
using namespace std;

int main() {

    struct ftdi_context ftdi;
    ftdi_init(&ftdi);
    if (ftdi_usb_open(&ftdi, 0x0403, 0x6001) < 0) {
        cerr << "Can't open FTDI device\n";
        return -1;
    }


    cout << "Hello World" << endl;

    return 0;
}

使用以下命令编译

g++ -std=c++14 -I /usr/local/Cellar/libftdi/1.2/include/libftdi1/ -L /usr/local/Cellar/libftdi/1.2/lib/ -l ftdi1 reader_test.cpp -o reader

注意我经常通过UART将字符串发送到连接到笔记本电脑的FTDI芯片。

如果有人有任何可能有用的建议,我将非常感激!我尽快要求这个!

1 个答案:

答案 0 :(得分:0)

for Linux

运行命令 - &GT; lsusb - &gt;查找新连接芯片的产品和供应商ID

- &GT; modprobe ftdi_sio - &gt;这将加载驱动程序

将在ftdi_sio文件夹下生成一个名为new_id的新文件,我相信你可以找到它

只需在该文件中添加产品和供应商ID,中间有空格即可 例如1234 5678其中1234是产品ID,5678是供应商ID