在RV1126开发板上移植minicom
在做测试机项目的时候,使用cat /dev/ttyS4
命令查看串口接收的数据只能看到字符形式的数据,导致我不能看到上位机发送十六进制的全貌,能不能在嵌入式板子上看到HQ上位机发送的十六进制数据具体是什么?于是萌生了在开发板上安装minicom这个串口工具。下面记录了我移植minicom时的过程和踩的坑。
移植ncurses
minicom 需要用到 ncurses,因此需要先移植 ncurses,首先在ubuntu中 创建一个目录来存放我们要移植的文件 , 我这里是在/home/目录下创建了一个名为“linuxTool”的目录来存放所有的移植文件。然后下载 ncurses 源码,(源码正点原子的IMX6ULL开发板的资料里有提供,路径在:例程源码-》7、第三方库源码-》ncurses-6.0.tar.gz),将 ncurses-6.0.tar.gz 拷贝到 Ubuntu 中创建的linuxTool目录下,然后进行解压,解压命令如下:
tar -vxzf ncurses-6.0.tar.gz
- 1
解压完成以后就会生成一个名为“ncurses-6.0”的文件夹,此文件夹就是 ncurese 的源码文件夹。在 linuxTool 目录下新建名为“ncurses”目录,用于保存 ncurses 编译结果,一切准备就绪以后就可以编译 ncureses 库了。进入到 ncureses 源码目录下,也就是刚刚解压出来的 ncurses-6.0 目录中,首先是配置 ncureses,输入如下命令:
./configure
--prefix=/home/linuxTool/ncurses
--host=arm-linux-gnueabihf
--target=arm-linux-gnueabihf
--with-shared --without-profile --disable-stripping
--without-progs --with-manpages --without-tests
- 1
- 2
- 3
- 4
- 5
- 6
上述是一条完整的命令,为了好看我加上了回车,configure 就是配置脚本。
- --prefix 用于指定编译结果的保存目录,这里肯定将编译结果保存到我们前面创建的“ncurses”目录中。
- --host 用于指定编译器前缀,这里设置为 “arm-linux-gnueabihf”,
- --target 用于指定目标,这里也设置为“arm-linux-gnueabihf”。
这里的交叉编译器arm-linux-gnueabihf路径要在环境变量里设置,设置方法是在~/.bashrc
下添加交叉编译器路径
然后输入source ~/.bashrc
使环境变量生效。这里如果没有设置好,后面配置minicom的时候会报错。
配置命令写好以后点击回车键,等待配置完成,配置成功以后如下图所示
随后输入make编译,然后输入make install命令安装,安装的意思就是将编译出来的结果拷贝到--prefix所指定的目录里。安装成功以后,查看ncurses目录下会多出这么一些东西。
我们需要将上图中include、lib和share这三个目录中存放的文件分别拷贝到开发板根文件系统中的/usr/include、/usr/lib 和/usr/share 这三个目录中,如果哪个目录不存在的话需要自行创建!!使用如下adb命令将文件push到rv1126的开发板对应目录中
adb push .\lib\. /usr/lib/
adb push .\share\. /usr/share/
adb push .\include\. /usr/include/
- 1
- 2
- 3
adb想要把整个文件夹下所有的文件都push到开发板中需要在文件夹后面加.
而不是像在linux中加*
,还有一点就是使用adb push命令push链接文件的时候会报找不到这个文件的错误,在使用上述命令会报这个错误,由于上述文件中的链接文件的源文件也在同一个目录下,这个错误可以忽略。
然后在开发板根目录的/etc/profile(没有的话自己创建一个)文件中添加如下所示内容:
#!/bin/sh
LD_LIBRARY_PATH=/lib:/usr/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH
export TERM=vt100
export TERMINFO=/usr/share/terminfo
- 1
- 2
- 3
- 4
- 5
- 6
移植minicom
同样的,同样在该路径下创建一个叫做minicom的文件夹,将正点原子提供资料的这个路径下的:例程源码-》7、第三方库源码-》minicom-2.7.1.tar.gz 拷贝到 ubuntu 中的linuxTool目录下,然后使用如下命令进行解压:
tar -vxzf minicom-2.7.1.tar.gz
- 1
解压完成以后会生成一个叫做 minicom-2.7.1 的文件夹,这个就是 minicom 的源码,进入到此目录中,然后配置 minicom,配置命令如下
cd minicom-2.7.1 //进入 minicom 源码目录
./configure CC=arm-linux-gnueabihf-gcc --prefix=/home/linuxTool/minicom
--host=arm-linux-gnueabihf
CPPFLAGS=-I/home/zuozhongkai/linuxTool/ncurses/include
LDFLAGS=-L/home/zuozhongkai/linux/IMX6ULL/tool/ncurses/lib
-enable-cfg-dir=/etc/minicom //配置
- 1
- 2
- 3
- 4
- 5
- 6
CC 表示要使用的 gcc 交叉编译器,
- --prefix 指定编译出来的文件存放目录,肯定要存放到我们前面创建的 minicom 目录中。
- --host 指定交叉编译器前缀
- CPPFLAGS 指定 ncurses 的头文件路径
- LDFLAGS 指定 ncurses 的库路径
配置成功以后输入make
编译。输入make install
安装。这时看到minicom文件夹下会有以下文件
将minicom目录中bin子目录下的所有文件拷贝到开发板根目录中的usr/bin目录下,使用的adb命令如下
adb push .\bin\. /usr/bin
- 1
完成以后在开发板中输入minicom -v
会报没有执行权限的错误,这是因为从adb push上来的文件都没可执行权限,到/usr/bin下输入命令chmod +x minicom
赋予其可执行权限。重新输入命令minicom -v
,会看到如下结果。
输入minicom -s
1. 如果报以下错误
遇到这种情况在/etc里面添加passwd文件
vi /etc/passwd
#内容如下
root:x:0:0:root:/root:/bin/sh
- 1
- 2
- 3
2. 如果报以下错误
这里输入命令echo $TERMINFO
检查一下有没有TERMINFO这个变量,
实际上前面我们在开发板更改/etc/profile文件的时候已经命名了,只是我们忘记source了,这里source /etc/profile
一下,重新运行命令minicom -s
,出现如下配置界面
选到Serial port setup,配置串口
输入A,将文字为/dev/ttyS4,回车确认。
到screen and keyboard选项,
输入S,让Hex Display选项变为yes,这样就可以让数据以16进制的形式显示。在windows端的HQ串口助手向串口发送命令,
RV1126的minicom得到如下显示:
可以看到是以16进制显示的,而且数据一致。
退出minicom输入ctrl+A,然后输入Z,然后输入X,跳出退出提示,选中yes,回车即可。
- 分享
- 举报

-
浏览量:4898次2022-06-11 13:46:26
-
浏览量:2197次2023-04-07 17:30:05
-
浏览量:1538次2023-07-21 17:25:16
-
浏览量:3003次2023-04-14 09:29:35
-
浏览量:8093次2022-07-29 18:09:52
-
浏览量:847次2023-11-30 19:11:02
-
浏览量:1466次2023-08-31 16:23:55
-
浏览量:2726次2023-11-29 08:59:50
-
浏览量:5128次2022-11-07 14:06:56
-
浏览量:2986次2023-08-16 14:52:32
-
浏览量:3490次2022-11-07 15:13:05
-
2022-11-07 14:56:46
-
浏览量:1327次2024-02-29 16:04:02
-
2022-11-08 12:06:09
-
浏览量:4202次2021-06-18 16:05:42
-
浏览量:4105次2023-04-12 16:05:14
-
浏览量:978次2024-02-23 16:58:46
-
2023-11-30 10:06:37
-
浏览量:1679次2024-01-09 17:43:28
-
7篇
- RK3568 开发板-安卓系统之USB调试(十二)
- 搭载瑞芯微RV1126/RV1109方案,长视科技IPC产品全线成功量产
- 【今天推荐的是!】RK3288平板-PIPO P4
- 你这么优秀你家里人知道么?- RK3188四核快播小方获德国iF产品设计大奖
- 瑞芯微将在美国CES发布重磅消息!What's NEW @2015CES? 美好的时代 来了~
- 【获奖名单 4G手机+蓝马甲】瑞芯微为小米华为站队!
- 基于RV1126移植Sony imx585
- RK3288游戏评测视频!ARM Mali T764最高规格GPU~给你点颜色看看^_^
- RV1126/RV1109开发之路
- rv1126 扩展rootfs分区以及增加分区
-
广告/SPAM
-
恶意灌水
-
违规内容
-
文不对题
-
重复发帖

JQ






举报类型
- 内容涉黄/赌/毒
- 内容侵权/抄袭
- 政治相关
- 涉嫌广告
- 侮辱谩骂
- 其他
详细说明