
一.准备工具/软件 stm32mp157a-dk1开发板 OLED IIC接口,4线(3V3,GND,SCL,SDA) STM32CubeMP1源码,github下载地址 二.硬件连接 stm32mp157a-dk1开发板预留了CN2 2x20 排针,信号定义如下图,这里取PIN1,PIN3,PIN5,PIN39 与OLED模块连接。 ![]() 三. STM32CubeMP1源码下载后,目录如下。这里使用GPIO源码工程为基础进行修改支持OLED, 主要是考虑方便,省去重新创建工程的时间。 ![]() 四.工程代码 工程代码有移植了keil版本的和cube IDE版本两者。由于两者编译器类型不同。keil版本的代码通过仿真器直接下载代码到M4 核,利用了工程模式。工程模式设置B2:B1:B0状态为100; 而在cubeIDE中是编译linux系统中的可执行文件。A7核运行linux后,启动M4执行该文件。属于正常启动模式。 ![]() 4.1 keil工程编译,由于使用Keil编译的二进制文件是axf格式的,设置STM32MP157A-DK1 为工程模式,下载仿真。 MDK-ARM调试stm32mp157具体请参考st官方文档, 这里提供了下载地址 ![]() 4.2 使用STM32CubeIDE 1.3.0编译工程。STM32CubeIDE基于GCC编译器,可以直接生成elf格式的文件。在linux运行后,通过A7调用M4核运行elf文件。 ![]() 五. 实验结果 linux下启动M4核,命令如下 ![]() OLED点亮。 ![]() ———————————————— 版权声明:jacob杰克爸 |
为什么学了几天STM32一脸茫然?
STM32 不同时钟频率有什么不同的影响
STM32入门指南:从零开始,如何为你的首个项目选择最合适的MCU?
STM32MP157D-DK1-编译并运行第一个程序hello world
STM32MP157D-DK1-SDK包安装
STM32MP157D-DK1-ssh连接方式
STM32MP157D-DK1-stlink串口进入终端
STM32MP157D-DK1-先烧录demo镜像
STM32MP157D-DK1-开始学linux了求各位大佬指点
更新STM32MP135-Openwrt镜像