汇编操作流程(LED)MX6U-MINI

2 篇文章 0 订阅
1 篇文章 0 订阅

本文是MX6U-MINI的LED汇编开发流程总结

1. 新建一个名为“1_leds”的文件夹,然后在“1_leds”这个目录下新建一个名为“led.s”的汇编文件和一个名为“.vscode”的目录。
2.中.vscode 文件夹里面存放 VSCode 的工程文件,led.s 就是我们新建的汇编文件,我们稍后会在 led.s 这个文件中编写汇编程序。
3.使用 VSCode 打开 1_leds 这个文件夹,编写 led.s。
4. 使用arm-linux-gnueabihf-gcc 编译文件,将 led.s 编译为对应的.o 文件。( led.o 文件并不是我们可以下载到开发板中运行的文件,我们需要将这.o 文件链接起来组合成可执行
文件)
5.arm-linux-gnueabihf-ld 用来将众多的.o 文件链接到一个指定的链接位置。(比如arm-linux-gnueabihf-ld -Ttext 0X87800000 led.o -o led.elf,这是指定文件链接到 0X87800000,-o”选项指定链接生成的 elf 文件名)上述命令执行完以后就会在工程目录下多一个 led.elf 文件
6. arm-linux-gnueabihf-objcopy 格式转换:将led.Elf文件转化为led.bin 文件(led.elf 文件也不是我们最终烧写到 SD 卡中的可执行文件,我们要烧写的.bin 文件)

以上就是生成可执行文件的过程。

7.创建 Makefile 文件,创建好 Makefile 以后我们就只需要执行一次“make”命令即可完成编译
8.代码烧写步骤:
8.1要将 imxdownload 拷贝到linux系统的工程根目录下,也就是和 led.bin 处于同一个文件夹下
8.2给予 imxdownload 可执行权限,使用chmod指令,如chmod 777 imxdownload。(当给予 imxdownload 可执行权限以后其名字变成了绿色的,如果没有可执行权限的话其名字颜色是白色的)
8.3插入SD卡,使用 imxdownload 向 SD 卡烧写 led.bin 文件,实际上这个过程会产生一个新的led.imx文件,最终烧录进去。代码./imxdownload <.bin file> 。如./imxdownload led.bin /dev/sdd。于是就烧写完成,烧写完成以后会在当前工程目录下生成一个 load.imx 的文件。
9.SD 卡插到开发板的 SD 卡槽中,然后设置拨码开关为 SD 卡启动。即可完成!!

题外话:arm-linux-gnueabihf-objdump 反汇编
大多数情况下我们都是用 C 语言写试验例程的,有时候需要查看其汇编代码来调试代码,
因此就需要进行反汇编,一般可以将 elf 文件反汇编。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值