首页 > 编程语言 >uboot 启动自编写程序的方式

uboot 启动自编写程序的方式

时间:2024-10-04 22:03:37浏览次数:7  
标签:uboot 编写程序 启动 hpa go tftp tftpd TFTP

uboot 启动自编写程序的方式

[怎么想写好这么难呢...]

uboot 存在 boot 命令。

自己最初在尝试撰写串口程序时,选择了使用汇编来完成。

在这段时间,自己使用 go 命令来尝试载入程序

先是在 Ubuntu 上搭建 tftp 目录

# /etc/default/tftpd-hpa

TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/home/emasi/Documents/WORKSPACE/asm_test/build"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="--secure"
~                                                                                                                              
~                                                                                                                                                                                                                                                               
"/etc/default/tftpd-hpa" [readonly] 6L, 168B  

安装使用了 tftpd-hpa 程序来管理该 tftp 路径

随后在 Uboot 的终端界面手动键入命令配置 tftp 服务器 ip 地址,下载生成的 .bin 文件

image

随后直接使用 go 就立即执行了

这在汇编下是一个比较顺利的事情,但是当开始编写 baremetal C 时就遇到问题了,这时如果仍然是直接 go 下载文件的起始地址,那么uboot会返回异常,程序没有被正确执行。

这问题来源与 C 下的执行入口问题。

c_work 状态

如果从反汇编的视角查看示例程序

在我起初编写 链接脚本的时候,

标签:uboot,编写程序,启动,hpa,go,tftp,tftpd,TFTP
From: https://www.cnblogs.com/emasi/p/18447347/uboot-to-start-the-method-of-self-edited-writing-

相关文章

  • vs2015安装包丢失或损坏解决工具 或者不能启动
    打开“本地组策略编辑器”(gpedit.msc)。展开“计算机配置”>“管理模板”>“系统”>“Internet通信管理”,然后选择“Internet通信设置”。选择“关闭自动根证书更新”>,“禁用”,然后选择“确定”或“应用”。下载最新的组件版本(备份的)https://learn.microsoft.c......
  • uboot 启动自编写程序的方式
    uboot启动自编写程序的方式[怎么想写好这么难呢...]uboot存在boot命令。自己最初在尝试撰写串口程序时,选择了使用汇编来完成。在这段时间,自己使用go命令来尝试载入程序先是在Ubuntu上搭建tftp目录#/etc/default/tftpd-hpaTFTP_USERNAME="tftp"TFTP_DIRECTORY=......
  • windows 需要 U启动 皮多多 买便宜一个
    买PE启动U盘原版新包链接格盘才行 https://share.weiyun.com/i0xkj0JN分享地址在这用   《《U启动》》  品牌的启动盘安装u启动提供的还原版系统 出现最后一个失败按钮 需要点击《重试》那个按钮才行,然后再等安装完就可以启动了合理按启动项F11F12那个 ......
  • 关于AT32A403A烧录程序时不启动的问题
    具体描述:第1块板是一边写代码一边烧录测试,一直没什么异常,整片擦除,再烧录,功能一切正常。之后就又焊了两块板,把程序烧录进去之后芯片没反应。进入仿真模式会卡在startup_at32f403a_407.s的151行LDRR0,=SystemInit后面发现一个奇怪的解决办法,就把程序大部分代码注释掉......
  • BitLocker加密C盘时:启动时需要附加身份验证
    BitLocker加密C盘时:启动时需要附加身份验证BitLocker加密C盘时显示如下错误信息:此设备无法使用受信任的平台模块。管理员必须在操作系统卷的“启动时需要附加身份验证”策略中设置“没有兼容的TPM时允许BitLocker”选项。BitLocker加密C盘时:启动时需要附加身份验证解决办法:Wind......
  • Idea启动SpringBoot程序报错:Veb server failed to start. Port 8082 was already in u
    目录Idea启动SpringBoot程序报错:Vebserverfailedtostart.Port8082wasalreadyinuse一、解决办法1、查找占用端口的进程2、结束进程①在任务管理器中终结指定pid的进程②在命令提示符中结束进程 3、重新启动项目4、对于macOS和Linux系统二、博主亲历三、为......
  • 解决 Dubbo 应用启动时 “No application config found” 错误
    个人名片......
  • Excel启动报错ntdll.dll?Excel ntdll.dll错误解决方案汇总
    当您在启动MicrosoftExcel时遇到“找不到ntdll.dll”或“ntdll.dll缺失/损坏”的错误提示,这意味着您的计算机上缺少或损坏了一个重要的系统文件。ntdll.dll文件是Windows操作系统中的核心文件之一,用于支持许多底层的系统功能和服务。缺失或损坏该文件会导致包括Excel在内的多......
  • 安防监控/智慧安防EasyCVR视频汇聚监控平台无法启动并报错“no space left on service
    视频汇聚/安防监控/智慧安防EasyCVR视频监控平台,作为一款智能视频监控综合管理平台,凭借其强大的视频融合汇聚能力和灵活的视频能力,在各行各业的应用中发挥着越来越重要的作用。平台可以引入AI智能分析能力,能够实现对视频中的特定对象进行检测、识别、跟踪,为后续的数据分析和处理提......
  • java:详解java编译命令和启动命令
    编译命令在Java开发过程中,编译Java源文件(通常以.java为扩展名)是不可或缺的一步。这一步骤是通过javac命令完成的,该命令是Java编译器(JavaCompiler)的命令行工具。编译后的代码会生成字节码文件,这些文件以.class为扩展名,并可在Java虚拟机(JVM)上运行。基本语法......