We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
注意: 环境为Ubuntu 12.04 只能是这个环境。我甚至在Ubuntu16.04上面安装了VMware,然后,在装了一个Ubuntu 12.04 x86版本。
OMAPL138属于多核异构平台(DSP+ARM),多核通信是多核异构平台的精髓部分,目前市面上流行的还有ZYNQ平台(FPGA+ARM),同样通信机理复杂。德州仪器OMAPL138和Davinci使用一样的多核通信机理。
这个机制相当复杂,又要懂Linux,又要会调试DSP,又要熟练掌握ARM的嵌入式Linux,又要抓住多核通信机制,实在让人抓狂。DSP端使用CCS,用JTAG口进行仿真,ARM端使用终端GDB命令进行动态调试配合调试输出完成多核通信的开发。
好吧,步入正题了,准备好以下的素材(不要被吓到)
**一定要对于文件、编译器有个很好的管理,杜绝东一块西一块,左一个文件,又一个文件,否则到时候自己蒙了。**本人习惯在自己用户的文件夹创建opt文件夹(用于安装非root权限运行的软件),script文件夹(用于处理一些脚本文件)、work(待交叉编译的源代码文件)、setup(安装、压缩包文件)、workspace(编程工程文件路径)、lib(第三方库文件夹)
以上这些文件,全部存在~/setup文件下
参考我的博客:(基于OMAPL:Linux3.3内核的编译)[https://www.cnblogs.com/sigma0/p/9149041.html]
Qt版本使用的是Qt4,Qt5还没有实验,等着实验完Qt5会过来更新。
参考我的博客:(Linux编译Qt4的环境_OMAPL138 )[https://www.cnblogs.com/sigma0/p/8168313.html]
最后我之前设定的Qt make install的路径室/opt/qt-arm-4.8.3 (后面会用到)
qwt 全称是"Qt Widgets for Technical Applications",是一个基于 LGPL 版权协议的开源 项目,可生成各种统计图。QWT的编译需要基于上一章节编译QT,编译出的qmake编译器
准备qwt-6.1.0.tar.bz2文件,解压到~/work路径下: tar -xvf qwt-6.1.0.tar.bz2 -C ~/work
~/work
tar -xvf qwt-6.1.0.tar.bz2 -C ~/work
需要修改两个地方:
在 qwt 目录下执行以下命令产生 Makefile 编译文件: /opt/qt-arm-4.8.3/bin/qmake
/opt/qt-arm-4.8.3/bin/qmake
ls 如果有Makefile文件则表示配置成功。
ls
在 qwt 根目录下执行以下命令编译 qwt 组件源码: make -j4 启动4个线程编译
make -j4
编译完成后:
在 qwt 根目录下执行以下命令安装 qwt 组件: sudo make install
sudo make install
该组件会解压到QWT_INSTALL_PREFIX指定的路径中:/opt/qwt-6.1.0
将"/opt/qwt-6.1.0/lib"下的所有文件拷贝到开发板文件系统"/usr/lib"目录下,用SD卡也可以,用scp命令也可以。
安装过程请参考我发在贴吧上的教程:我这里用的是CCS5.5版本,大同小异 (在LINUX(ubuntu)系统下装CCSv6方法)[https://tieba.baidu.com/p/3698761357]
注意路径安装到 /opt/ti下
执行:sudo ./OMAPL138_StarterWare_1_10_04_01-Linux-x86-Install 安装路径为: /opt/ti下
sudo ./OMAPL138_StarterWare_1_10_04_01-Linux-x86-Install
MCSDK是多核通信组件。
准备好mcsdk_1_01_00_02_setuplinux.bin,注意路径安装到/opt/ti下,完全安装就好。
sudo ./mcsdk_1_01_00_02_setuplinux.bin
进入"mcsdk_1_01_00_02"目录下,启动 MCSDK 设置脚本,根据不同主机设置,进行tftp、nfs、U-Boot 等配置。在设置之前,务必保证虚拟机网络畅通。
cd /opt/ti/mcsdk_1_01_00_02/ sudo ./setup.sh
cd /opt/ti/mcsdk_1_01_00_02/
sudo ./setup.sh
cd /opt/ti/syslink_2_21_01_05 进入该路径下,打开配置文件: sudo vim products.mak 要改的内容在下面
cd /opt/ti/syslink_2_21_01_05
sudo vim products.mak
DEVICE = OMAPL1XX SDK = NONE EXEC_DIR = /media/delvis/rootfs // host root文件系统路径 可以在SD卡上(需要挂载),也可以暂时存储到你电脑临时文件夹上,到时候拷贝到SD卡上 DEPOT = /opt/ti // MCSDK 安装路径
接下来配置的如图所示:
配置完成后保存退出。
编译 syslink 之前,先将以下两个宏定义添加到 syslink 中的 Omapl1xxIpcInt.c、omapl1xx_phy_shmem.c、omapl1xxpwr.c 文件开头,否则编译会出错。 (1) /opt/ti/syslink_2_21_01_05/packages/ti/syslink/ipc/hlos/knl/notifyDrivers/arch/omapl1xx/Omapl1xxIpcInt.c (2) /opt/ti/syslink_2_21_01_05/packages/ti/syslink/family/hlos/knl/omapl1xx/omapl1xxdsp/Linux/omapl1xx_phy_shmem.c (3) /opt/ti/syslink_2_21_01_05/packages/ti/syslink/family/hlos/knl/omapl1xx/omapl1xxdsp/omapl1xxpwr.c
#undef __ASM_ARCH_HARDWARE_H #include <mach/hardware.h>
cd /opt/ti/syslink_2_21_01_05 make syslink
make syslink
make samples
sudo make install 返回到在setup.sh配置syslink的时候指定的rootfs目录,ls lib/modules/3.3.0/kernel/drivers/dsp/
ls lib/modules/3.3.0/kernel/drivers/dsp/
可以看到在文件系统"lib/modules/3.3.0/kernel/drivers/dsp/"目录下有 syslink 驱动程序syslink.ko 文件和文件系统根目录下有"ex**_##"的示例程序。 就配合环境成功了。
[1]创龙公司,基于 OMAPL138 的多核软件开发组件 MCSDK 开发入门 [2]创龙公司,OMAPL138基于SYSLINK的双核例程
The text was updated successfully, but these errors were encountered:
No branches or pull requests
DSP+ARM多核异构开发环境搭建OMAPL138
注意: 环境为Ubuntu 12.04 只能是这个环境。我甚至在Ubuntu16.04上面安装了VMware,然后,在装了一个Ubuntu 12.04 x86版本。
导语与感想
OMAPL138属于多核异构平台(DSP+ARM),多核通信是多核异构平台的精髓部分,目前市面上流行的还有ZYNQ平台(FPGA+ARM),同样通信机理复杂。德州仪器OMAPL138和Davinci使用一样的多核通信机理。
这个机制相当复杂,又要懂Linux,又要会调试DSP,又要熟练掌握ARM的嵌入式Linux,又要抓住多核通信机制,实在让人抓狂。DSP端使用CCS,用JTAG口进行仿真,ARM端使用终端GDB命令进行动态调试配合调试输出完成多核通信的开发。
好吧,步入正题了,准备好以下的素材(不要被吓到)
**一定要对于文件、编译器有个很好的管理,杜绝东一块西一块,左一个文件,又一个文件,否则到时候自己蒙了。**本人习惯在自己用户的文件夹创建opt文件夹(用于安装非root权限运行的软件),script文件夹(用于处理一些脚本文件)、work(待交叉编译的源代码文件)、setup(安装、压缩包文件)、workspace(编程工程文件路径)、lib(第三方库文件夹)
搭建前准备素材
以上这些文件,全部存在~/setup文件下
环境前提
编译Linux3.3内核
参考我的博客:(基于OMAPL:Linux3.3内核的编译)[https://www.cnblogs.com/sigma0/p/9149041.html]
编译正确Qt
Qt版本使用的是Qt4,Qt5还没有实验,等着实验完Qt5会过来更新。
参考我的博客:(Linux编译Qt4的环境_OMAPL138
)[https://www.cnblogs.com/sigma0/p/8168313.html]
最后我之前设定的Qt make install的路径室/opt/qt-arm-4.8.3 (后面会用到)
编译QWT组件
qwt 全称是"Qt Widgets for Technical Applications",是一个基于 LGPL 版权协议的开源
项目,可生成各种统计图。QWT的编译需要基于上一章节编译QT,编译出的qmake编译器
解压qwt
准备qwt-6.1.0.tar.bz2文件,解压到
~/work
路径下:tar -xvf qwt-6.1.0.tar.bz2 -C ~/work
配置QWT编译环境(使用创龙公司)
需要修改两个地方:
在 qwt 目录下执行以下命令产生 Makefile 编译文件:
/opt/qt-arm-4.8.3/bin/qmake
ls
如果有Makefile文件则表示配置成功。编译QWT和安装
在 qwt 根目录下执行以下命令编译 qwt 组件源码:
make -j4
启动4个线程编译编译完成后:
在 qwt 根目录下执行以下命令安装 qwt 组件:
sudo make install
该组件会解压到QWT_INSTALL_PREFIX指定的路径中:/opt/qwt-6.1.0
将库发送到开发板(HOST)端
将"/opt/qwt-6.1.0/lib"下的所有文件拷贝到开发板文件系统"/usr/lib"目录下,用SD卡也可以,用scp命令也可以。
安装CCS
安装过程请参考我发在贴吧上的教程:我这里用的是CCS5.5版本,大同小异 (在LINUX(ubuntu)系统下装CCSv6方法)[https://tieba.baidu.com/p/3698761357]
注意路径安装到 /opt/ti下
安装StarterWare库
执行:
sudo ./OMAPL138_StarterWare_1_10_04_01-Linux-x86-Install
安装路径为: /opt/ti下
安装配置MCSDK
MCSDK是多核通信组件。
安装MCSDK
准备好mcsdk_1_01_00_02_setuplinux.bin,注意路径安装到/opt/ti下,完全安装就好。
sudo ./mcsdk_1_01_00_02_setuplinux.bin
配置MCSDK
进入"mcsdk_1_01_00_02"目录下,启动 MCSDK 设置脚本,根据不同主机设置,进行tftp、nfs、U-Boot 等配置。在设置之前,务必保证虚拟机网络畅通。
cd /opt/ti/mcsdk_1_01_00_02/
sudo ./setup.sh
SYSLINK的配置和安装
cd /opt/ti/syslink_2_21_01_05
进入该路径下,打开配置文件:
sudo vim products.mak
要改的内容在下面
接下来配置的如图所示:
配置完成后保存退出。
编译syslink源代码
编译 syslink 之前,先将以下两个宏定义添加到 syslink 中的 Omapl1xxIpcInt.c、omapl1xx_phy_shmem.c、omapl1xxpwr.c 文件开头,否则编译会出错。
(1) /opt/ti/syslink_2_21_01_05/packages/ti/syslink/ipc/hlos/knl/notifyDrivers/arch/omapl1xx/Omapl1xxIpcInt.c
(2) /opt/ti/syslink_2_21_01_05/packages/ti/syslink/family/hlos/knl/omapl1xx/omapl1xxdsp/Linux/omapl1xx_phy_shmem.c
(3) /opt/ti/syslink_2_21_01_05/packages/ti/syslink/family/hlos/knl/omapl1xx/omapl1xxdsp/omapl1xxpwr.c
编译syslink
cd /opt/ti/syslink_2_21_01_05
make syslink
编译syslink示例
make samples
安装syslink驱动程序
sudo make install
返回到在setup.sh配置syslink的时候指定的rootfs目录,
ls lib/modules/3.3.0/kernel/drivers/dsp/
可以看到在文件系统"lib/modules/3.3.0/kernel/drivers/dsp/"目录下有 syslink 驱动程序syslink.ko 文件和文件系统根目录下有"ex**_##"的示例程序。
就配合环境成功了。
参考文献
[1]创龙公司,基于 OMAPL138 的多核软件开发组件 MCSDK 开发入门
[2]创龙公司,OMAPL138基于SYSLINK的双核例程
The text was updated successfully, but these errors were encountered: