挑战自学tiny4412 day02

本文详细介绍了在Tiny4412开发板上烧录UBOOT和Linux系统的步骤,包括UBOOT的配置、编译、烧写以及如何通过UBOOT的指令操作。同时,文章还涵盖了Linux系统的烧录流程,从SD卡准备到系统启动,为读者提供了一份完整的实践指南。
摘要由CSDN通过智能技术生成

day02

4412作为高性能处理器,不可能像单片机一样,一直运行裸机程序,这既是对资源的浪费,又是开发成本的浪费。
今日工作:了解UBOOT和LIUNX。烧录系统,正常启动。

回顾总结

1、A9开发板的启动流程
    分为三个阶段  分别是  BL0  BL1   BL2
    BL0:代码固化在cpu内部的IROM里
     主要的作用就是加载并运行BL1
    BL1:代码是由三星公司提供的
     主要作用就是加载并运行 BL2
    BL2:代码三星公司并没有提供
     三星给的建议是加载并运行  操作系统
2、裸机点亮LED
    要想点亮LED灯   需要分析如下几个方面
    引脚的接法   通过查看核心板的原理图可知    GPM4_0 - GPM4_3
    有效电平     低电平有效
    寄存器     GPM4_con  0x110002E0   32位  控制8个引脚
     GPM_DAT   0x110002E4   8位   控制8个引脚
    代码运行在什么位置
    查看BL1-BL2文档可知  BL2 0x02023400
    存放的位置
    查看BL1-BL2文档   可以知道
    SD  第0扇区  保留扇区   存放的SD卡的信息
    BL1 第1-16扇区
    BL2 第17-48扇区
3、交叉编译工具
    将交叉编译工具压缩包拷贝到虚拟机里
    解压压缩包
    配置/etc/profile
    安装兼容库
    生效配置文件
    source  /etc/profile
    arm-linux-gcc -v   查看版本号
4、编译和烧录
    编译
    只编译不链接
    arm-linux-gcc -c led.c -o led.o
    指定代码的启动位置
    arm-linux-ld -Ttext 0x02023400 -o led.elf led.o
    生成二进制文件
    arm-linux-objcopy -O binary led.elf led.bin
    利用三星公司提供的源代码生成 mkbl2
    用mkbl2给led.bin加上一个偶校验
    ./mkbl2 ./led.bin  bl2.bin 14336
    烧录
    sudo dd iflag=dsync oflag=dsync if=./bl2.bin of=/dev/sdb seek=17

UBOOT

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值