[国嵌笔记][015][裸机开发快速体验]
裸机开发流程
1.编写裸机程序
2.调试裸机程序
3.生成2进制映像(编译、链接、格式转换)
4.烧写/运行2进制映像
安装交叉编译器
1.复制arm-tools到Linux中
2.解压工具链
tar zxvf ARM-tools.tar.gz
3.安装arm-linux-gcc
tar zxvf arm-liunx-gcc... -C /
"-C"表示解压到指定目录"/"中,arm-linux-gcc...,自动解压到了/usr/loacl/arm中
4.添加arm-linux-gcc到系统环境变量中
vim /root/.bashrc
export PATH=$PATH:/usr/local/arm/4.3.2/bin 添加环境变量路径
source /root/.bashrc 让新添加的环境变量生效
编译裸机程序
1.复制裸机程序到Linux中
2.编译裸机程序
arm-linux-gcc -g -c led.S
"-g"表示生成可调试信息;"-c"表示编译,但不链接,会看到生成led.o
3.链接裸机程序
arm-linux-ld -Tled.lds led.o -o led.elf
"-T"表示要链接的脚本文件,表示把led.o和led.lds链接起来生成led.elf,该文件是elf格式不能直接下载运行,需要转换成二进制格式
4.转换裸机程序成二进制文件
arm-linux-objcopy -O binary led.elf led.bin
"-O binary"表示转换led.elf到二进制格式
5.通过Makefile文件来一次完成上面3步的编译工作
make clean 清除生成的文件
make 直接生成二进制文件
烧写程序到开发板
相关介绍
1.裸机程序烧写的位置是nand flash
2.烧写过程是用nor flash或sd卡中的安装辅助程序与pc建立通信,利用usb把程序下载到nand flash中
硬件连接
1.USB下载线连接
2.串口连接
3.电源连接
4.开关拨到nor flash启动
下载步骤
1.打开串口终端
2.格式化nand flash
format nand flash for linux
3.下载程序到bootloader
download vivi
4.连接USB下载线到Linux中
5.安装USB驱动
insmod dnw_usb.ko
6.下载裸机程序到内存中
./dnw led.bin 30008000 裸机程序下载地址为内存中的0x30008000
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术