“多核协同工作(Cortex-A7与CortexM4通信)”的版本间的差异
(→Gpio) |
(→Gpio) |
||
第3行: | 第3行: | ||
<li>启动STM32CubeIDE</li> | <li>启动STM32CubeIDE</li> | ||
− | [[Image:56-1-1.png]]<br> | + | <center>[[Image:56-1-1.png|1040px]]</center><br> |
<li>导入已有工程</li> | <li>导入已有工程</li> | ||
第9行: | 第9行: | ||
点击File->Import…,选择Existing Projects into Workspace,点击NEXT | 点击File->Import…,选择Existing Projects into Workspace,点击NEXT | ||
− | [[Image:56-1-2.png]]<br> | + | <center>[[Image:56-1-2.png]]</center><br> |
浏览目录选择工程OpenAMP_ TTY _echo,光盘路径为 | 浏览目录选择工程OpenAMP_ TTY _echo,光盘路径为 | ||
【华清远见-FS-MP1A开发资料\02-程序源码\ARM体系结构与接口技术\Cortex-M4\STM32Cube_FW_MP1_V1.2.0\Projects\STM32MP157A-FSMP1\Applications\OpenAMP\OpenAMP_TTY_echo\STM32CubeIDE】 | 【华清远见-FS-MP1A开发资料\02-程序源码\ARM体系结构与接口技术\Cortex-M4\STM32Cube_FW_MP1_V1.2.0\Projects\STM32MP157A-FSMP1\Applications\OpenAMP\OpenAMP_TTY_echo\STM32CubeIDE】 | ||
− | [[Image:56-1-3.png]]<br> | + | <center>[[Image:56-1-3.png]]</center><br> |
<li>编译工程</li> | <li>编译工程</li> | ||
第20行: | 第20行: | ||
选择项目OpenAMP_ TTY _echo_CM4并单击Build按钮 | 选择项目OpenAMP_ TTY _echo_CM4并单击Build按钮 | ||
− | [[Image:56-1-4.png]]<br> | + | <center>[[Image:56-1-4.png]]</center><br> |
<li>开发板连接</li> | <li>开发板连接</li> | ||
第27行: | 第27行: | ||
开发板上电,并如下图连接开发板USB和ST-Link至PC。 | 开发板上电,并如下图连接开发板USB和ST-Link至PC。 | ||
− | [[Image:56-1-5.png]]<br> | + | <center>[[Image:56-1-5.png]]</center><br> |
可通过点击STM32 butterfly按钮来打开串口控制台 | 可通过点击STM32 butterfly按钮来打开串口控制台 | ||
− | [[Image:56-1-6.png]]<br> | + | <center>[[Image:56-1-6.png]]</center>br> |
如果控制台窗口显示linux日志或提示信息,则连接成功 | 如果控制台窗口显示linux日志或提示信息,则连接成功 | ||
− | [[Image:56-1-7.png]]<br> | + | <center>[[Image:56-1-7.png]]</center><br> |
<li>USB虚拟网线网络配置</li> | <li>USB虚拟网线网络配置</li> | ||
第41行: | 第41行: | ||
打开控制面板的网络连接界面,在使用USBmini线连接开发板和PC后可以在网络连接界面可看到多了一个Remote NDIS网卡,如下图 | 打开控制面板的网络连接界面,在使用USBmini线连接开发板和PC后可以在网络连接界面可看到多了一个Remote NDIS网卡,如下图 | ||
− | [[Image:56-1-8.png]]<br> | + | <center>[[Image:56-1-8.png]]</center><br> |
选中Remot NDIS网卡,右键选择属性,配置IPv4,选中后点击属性,配置IP地址为192.168.7.100,如下图 | 选中Remot NDIS网卡,右键选择属性,配置IPv4,选中后点击属性,配置IP地址为192.168.7.100,如下图 | ||
− | [[Image:56-1-9.png]]<br> | + | <center>[[Image:56-1-9.png]]</center><br> |
<li>下载固件</li> | <li>下载固件</li> | ||
第53行: | 第53行: | ||
选择Debug按键 | 选择Debug按键 | ||
− | [[Image:56-1-10.png]]<br> | + | <center>[[Image:56-1-10.png]]</center><br> |
选择STM32 Cortex-M C/C++ Application<br> | 选择STM32 Cortex-M C/C++ Application<br> | ||
第61行: | 第61行: | ||
:检查IP地址,可通过串口控制台输入ifconfig指令查看usb0网卡IP地址 | :检查IP地址,可通过串口控制台输入ifconfig指令查看usb0网卡IP地址 | ||
− | [[Image:56-1-11.png]]<br> | + | <center>[[Image:56-1-11.png]]</center><br> |
如下图,配置完成后点击Debug | 如下图,配置完成后点击Debug | ||
− | [[Image:56-1-12.png]]<br> | + | <center>[[Image:56-1-12.png]]</center><br> |
提示关闭控制台,点击Yes | 提示关闭控制台,点击Yes | ||
− | [[Image:56-1-13.png]]<br> | + | <center>[[Image:56-1-13.png]]</center><br> |
弹出如下窗口,默认无密码,直接点击OK | 弹出如下窗口,默认无密码,直接点击OK | ||
− | [[Image:56-1-14.png]]<br> | + | <center>[[Image:56-1-14.png]]</center><br> |
点击Switch | 点击Switch | ||
− | [[Image:56-1-15.png]]<br> | + | <center>[[Image:56-1-15.png]]</center><br> |
<li>测试固件</li> | <li>测试固件</li> | ||
第90行: | 第90行: | ||
加载完固件后,重新打开STM32CubeIDE的串行控制台 | 加载完固件后,重新打开STM32CubeIDE的串行控制台 | ||
− | [[Image:56-1-16.png]]<br> | + | <center>[[Image:56-1-16.png]]</center><br> |
输入以下命令 | 输入以下命令 | ||
第103行: | 第103行: | ||
echo "LED ON" > /dev/ttyRPMSG0 | echo "LED ON" > /dev/ttyRPMSG0 | ||
− | [[Image:56-1-17.png]]<br> | + | <center>[[Image:56-1-17.png]]</center><br> |
</ol> | </ol> |
2021年3月24日 (三) 16:25的最新版本
Gpio
- 启动STM32CubeIDE
- 导入已有工程
- 编译工程
- 开发板连接
- USB虚拟网线网络配置
- 下载固件
- 检查IP地址,可通过串口控制台输入ifconfig指令查看usb0网卡IP地址
- 测试固件
- CPU2(CM4)初始化OpenAMP MW,后者通过HAL初始化/配置IPCC外设并设置openamp-rpmsg框架基础结构
- CPU2(CM4)为2个虚拟UART实例(UART0和UART1)创建2个 rpmsg通道
- CPU2(CM4)在这两个通道上等待来自CPU1(CA7)的消息
- 当CPU2(CM4)在1个虚拟UART实例/ rpmsg通道上收到消息时,它将消息发送回同一虚拟UART实例上的CPU1(CA7)

点击File->Import…,选择Existing Projects into Workspace,点击NEXT

浏览目录选择工程OpenAMP_ TTY _echo,光盘路径为 【华清远见-FS-MP1A开发资料\02-程序源码\ARM体系结构与接口技术\Cortex-M4\STM32Cube_FW_MP1_V1.2.0\Projects\STM32MP157A-FSMP1\Applications\OpenAMP\OpenAMP_TTY_echo\STM32CubeIDE】

选择项目OpenAMP_ TTY _echo_CM4并单击Build按钮

确认开发板已烧写系统,可运行linux,启动拨码拨至010。 开发板上电,并如下图连接开发板USB和ST-Link至PC。

可通过点击STM32 butterfly按钮来打开串口控制台

如果控制台窗口显示linux日志或提示信息,则连接成功

打开控制面板的网络连接界面,在使用USBmini线连接开发板和PC后可以在网络连接界面可看到多了一个Remote NDIS网卡,如下图

选中Remot NDIS网卡,右键选择属性,配置IPv4,选中后点击属性,配置IP地址为192.168.7.100,如下图

选择项目OpenAMP_ TTY _echo_CM4
选择Debug按键

选择STM32 Cortex-M C/C++ Application
调试器 下选择thru Linux core(Production mode)
选择Serial Port,可打开设备管理器查看

如下图,配置完成后点击Debug

提示关闭控制台,点击Yes

弹出如下窗口,默认无密码,直接点击OK

点击Switch

OpenAMP_ TTY _echo_CM4固件主要功能:
加载完固件后,重新打开STM32CubeIDE的串行控制台

输入以下命令
初始化ttyRPMSG0配置
stty -onlcr -echo -F /dev/ttyRPMSG0
不断读取ttyRPMSG0通道
cat /dev/ttyRPMSG0 &
在一个ttyRPMSG0通道上发送消息”LED ON”或”LED OFF”可控制开发板上LED灯点灭状态,并在同一ttyRPMSG0通道上同时接收回显
echo "LED ON" > /dev/ttyRPMSG0
