STM32MP157AAA3裸机点灯(汇编)

MP157的A7核裸机点灯
使用的开发板为华清远见的MP157开发板,默认板内emmc已经烧写好了uboot
这篇就只记录一下汇编点灯过程,uboot等内容暂不涉及。
(MP157AAA3好大一颗)
裸机情况下与单片机操作并没有什么区别

配置交叉编译环境

这里使用的是ubuntu18虚拟机
我们如果用Linux自带的gcc编译器编译出来的程序只能在编译机器CPU架构下运行,
如果想在不同架构开发板上运行电脑编译出来的程序就需要使用交叉编译器,
STM32MP157系列为CrotexA7核心,属于ARMV7架构,所以要用对应的编译器。
这里使用交叉编译器为gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf
下载交叉编译器

wget https://releases.linaro.org/components/toolchain/binaries/7.5-2019.12/arm-linux-gnueabihf/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf.tar.xz

解压

tar -vxJf gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf.tar.xz

在/usr/local目录下新建arm-linux-gcc目录

sudo mkdir /usr/local/arm-linux-gcc

进入解压后的目录复制文件到新建的目录

cd gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihfsudo cp -rd * /usr/local/arm-linux-gcc/

添加环境变量

sudo vim /etc/profile

打开文件后在最后一行添加

PATH=$PATH:/usr/local/arm-linux-gcc/bin

重新加载环境变量

source /etc/profile

测试配置是否生效
在终端输入arm-linux-gnueabihf- 然后按两下tab键,若出现以下图显示说明配置正常

到这交叉编译环境就配置完成了

写代码

查原理图确定LED引脚

这个可以根据自己开发板的原理图确定LED接在了芯片的哪个GPIO上。
在此用的这个开发板其中一个LED接在PE10上面,在此就点这个灯。

查手册

裸机想要点灯肯定要配寄存器了,配寄存器就需要查寄存器手册。
查内存映射图

根据内存映射图可以看到GPIO控制器是挂在在AHB4总线上面的。

使能GPIOE外设时钟

找到对应寄存器,然后看翻译

STM32MP157AAA3裸机点灯(汇编)相关推荐

  1. Orange pi GPIO输出控制,裸机点灯大法(二)!

    文章目录 Orange pi GPIO输出控制方式 前言 1.OPi.GPIO安装及使用 2.引脚编号 3.WiringOP-Zero-Python安装及使用 4.WiringOP-Zero 安装及使 ...

  2. Orange pi GPIO输出控制,裸机点灯大法(一)!

    裸机点灯大法 玩树莓派或者香橙派,如果不玩裸机点灯,那岂不是不完整.所谓裸机点灯,即一块裸板,通过gpio输出控制,实现控制板载绿色的电源指示灯以及红色的状态指示灯 裸机点灯(GPIO输出控制)的两种 ...

  3. orangepi3 lts裸机点灯

    armv8-a裸机 板子信息 用的orangepi3 lts开发板,资料是真不多.只能自己撸手册,能用的工具也是有限.主芯片SOC用的Allwinner H6, A53的内核,armv8-a64位指令 ...

  4. 用QEMU模拟调试裸机ARM64汇编,支持gdb单步调试

    完全是方便自己查询,做个记录. 树莓派4的SOC是ARM64, cortex A72,支持最新的ARMv8指令集,且有众多的开源资料,适合用来学习ARM64汇编,其他芯片大同小异,遇到需要,再进一步研 ...

  5. 【点灯鼠教程】K210裸机点灯之旅(1)点亮SSD1306【C开发I2C】

    万物基于点灯 --沃兹基硕德 点灯,I2C点灯 就像正常点灯一样,打开勘智IDE,大地球,礼物,find i2c,None... 果断下载GPIO,打开百度! 还是None? 自己动手! API,I2 ...

  6. K210裸机点灯之旅(1)点亮SSD1306【c开发i2c】

    万物基于点灯 --沃兹基硕德 点灯,I2C点灯 就像正常点灯一样,打开勘智IDE,大地球,礼物,find i2c,None... 果断下载GPIO,打开百度! 还是None? 自己动手! API,I2 ...

  7. 一灯大师--关于如何进行裸机开发的学习心得

    今天!是万里长征第一步.在原子哥的资料自学下终于完成了在I.MX6ULL下的第一个裸机点灯.写这个是总结一下点灯的步骤(当然以后所有的裸机开发基本步骤都差不多). 在I.MX6ULL上点灯其实和STM ...

  8. 主线剧情01-ARM-IMX6ULL基础学习记录

    ARM & i.MX6ULL 基础学习记录 编辑整理 by Staok 本文大部分内容摘自"100ask imx6ull"开发板的配套资料(如<IMX6ULL裸机开发 ...

  9. 《17.内核的移植1-从三星官方内核开始移植》

    转自 https://edu.csdn.net/lecturer/505 朱老师物联网大讲堂 <17.内核的移植1-从三星官方内核开始移植> 第一部分.章节目录 2.17.1.内核移植初体 ...

  10. 【Nucleo】STM32H743ZI - 入手篇

    [Nucleo]STM32H743ZI - 入手篇 [Nucleo]STM32H743ZI - RT-Thread 最小系统 背景 今天[Nucleo]STM32H743ZI 的开发板到手了,开始让它 ...

最新文章

  1. 2022-2028年成都餐饮业投资分析及前景预测报告
  2. Linux io模型及函数调用,Linux 网络编程的5种IO模型:信号驱动IO模型
  3. thinkphp概述2
  4. 如何循序渐进的学习javaScript呢,请听我慢慢道来!
  5. 8-python自动化-day08-进程、线程、协程篇
  6. $arr['id'],$arr[id]的区别
  7. java获取字典所有的key_JAVA脱水学习-java集合介绍,常用集合类
  8. 百元价位的水下相机?!1000个去海边的人有900个选择了它!
  9. git clone 解决Permission Denied (publickey)问题
  10. 设置 路由模式 桥接模式
  11. LayaAir2.0 内置函数
  12. 计算机功能性英语作文,2017考研英语作文:10个功能性“仿写”句型
  13. IO第二天 低级流 缓冲流BOS 对象流OOS
  14. 计算机重装系统后无法重启,u盘安装系统之后重启电脑没反应怎么办
  15. DP-900认证考试攻略
  16. 小心,Android木马工具SpyNote免费啦!远程监听就是这么简单
  17. Python制作微信小助手
  18. oracle 数据占百分比,占总数比例怎么算_占总金额百分比公式
  19. 【论文写作】——设置中英文字体
  20. 数据包络分析——二阶段网络带feedback

热门文章

  1. [AHK]AutoHotKey 快速下单脚本,支持东方财富,大智慧,通达信,同花顺
  2. 高等数学第七版下册 同济大学数学系 编 课后答案 习题解析
  3. c语言——约瑟夫环(数组)
  4. 稀疏分解中的MP与OMP算法
  5. 用C语言编写贪吃蛇小游戏
  6. VSCode解决设置默认浏览器方法(open with live server)
  7. 铁路售票系统_城轨交通地高铁车站自动售检票(AFC)实训系统解决方案
  8. 笔记《深入浅出数据分析》上
  9. 视频教程-CCNA之TCP/IP协议栈精讲-思科认证
  10. yarn install命令运行报错:无法将“yarn”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。