社区
无线
帖子详情
自己编写bootloader
LikeShadows
2015-04-09 03:26:34
现在要自己写一个bootloader,该bootloader的功能是要将存在放在flash中的程序通过spi拷贝到cpu ram(128k)中,同时还要使用UART0输出程序运行时的输出信息,UART1用来接收来自用户的命令,自己不知道如何下手,请前辈们不吝指教,小弟感激不尽
...全文
803
9
打赏
收藏
自己编写bootloader
现在要自己写一个bootloader,该bootloader的功能是要将存在放在flash中的程序通过spi拷贝到cpu ram(128k)中,同时还要使用UART0输出程序运行时的输出信息,UART1用来接收来自用户的命令,自己不知道如何下手,请前辈们不吝指教,小弟感激不尽
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
rejoice818
2015-05-20
打赏
举报
回复
主要看你用什么平台 我用ARM Cortex-M0和ARM9都写过。
jdygrdzh
2015-05-17
打赏
举报
回复
他的boot loader只有两个功能,拷贝和输出串口,你们说的月薪过万那是从头大尾重写uboot。 要是能从头大尾重写uboot,月薪过完那还是低了,起码5万。
沭水河畔
2015-05-16
打赏
举报
回复
引用 6 楼 u012586257 的回复:
我说至少月薪过万 完全自己搞太费劲了,找芯片厂商的demo程序改吧
自己搞确实需要知识面广一些,在芯片原厂这活大概要三四个人做: 搞driver的负责写驱动; 熟悉芯片的负责写bootloader框架,要懂汇编; 对toolchain熟悉的负责写连接脚本或者提供技术支持。
shinerise
2015-05-15
打赏
举报
回复
引用 2 楼 fox4664 的回复:
徒手写出这个过程,月薪不低于8000。
不至于吧。这个活有没太多高深的技术啊。
mangoalx
2015-05-15
打赏
举报
回复
我说至少月薪过万 完全自己搞太费劲了,找芯片厂商的demo程序改吧
hanqingwu
2015-05-15
打赏
举报
回复
楼主用什么平台? 把uboot研究下,你说的功能都有吧。
沭水河畔
2015-05-15
打赏
举报
回复
没写过,楼主是什么平台? 写这个要对芯片很熟悉才行,这几个概念要先搞清: 1. 芯片的Memory Map 2. Controller控制方式:Memory、SPI、UART等 3. 汇编 4. 链接脚本配置 其它都是C语言知识了。
fox4664
2015-04-13
打赏
举报
回复
徒手写出这个过程,月薪不低于8000。
毕业班第1课第1.1节-自己写
bootloader
之
编写
第1阶段.WMV
毕业班第1课第1.1节_自己写
bootloader
之
编写
第1阶段.WMV
毕业班第1课第1.2节-自己写
bootloader
之
编写
第2阶段.WMV
毕业班第1课第1.2节_自己写
bootloader
之
编写
第2阶段.WMV
韦东山嵌入式Linux第一期视频
掌握写汇编代码的能力,可以分析任意裸板包括U-boot、内核里的相关汇编代码;掌握常用的硬件部件的操作,比如GPIO,UART,I2C,LCD,触摸屏;深入理解ARM体系统架构,可以写出具备中断功能的裸板程序,对程序现场的保存、恢复有所了解,这些原理适用于任何架构CPU,适用于内核及应用程序;熟悉裸板程序的结构,给你一个
Bootloader
就能分析它的初始化部分、内存使用情况、链接地址、重定位、程序的相对跳转/绝对跳转等;掌握
Bootloader
启动内核的原理,能完全自己写出一个
Bootloader
。
自己动手写
Bootloader
系列SI:6-copymyself
这个是北京亚嵌的老师带领我们学校的同学做的嵌入式项目实训课程(ARM9)-自己动手写
Bootloader
。本人感觉很好,所以分享给大家一起学习交流。再次要感谢北京亚嵌的刑文鹏老带给我们这么精彩的实训。 项目的整体流程: (1)GPIO驱动 (2)clock驱动 (3)SDRAM驱动 (4)UART驱动 (5)NAND FLASH驱动 (6)Bootlader自加载模式启动 (7)
BootLoader
下载模式:shell
[原创]自己动手
编写
嵌入式
Bootloader
之(1)
CPU上电后会从IO空间的某地址取第一条指令。但此时:PLL没有启动,CPU工作频率为外部输入晶振频率,非常低;CPU工作模式、中断设置等不确定;存储空间的各个BANK(包括内存)都没有驱动,内存不能使用。在这种情况下必须在第一条指令处做一些初始化工作,这段初始化程序与操作系统独立分开,称之为
bootloader
。 实际上,很少有必要自己写一个
Bootloader
,因为U-Boot已经强大到能够满足各种需要。但是强大必然复杂,一个初学者想要分析U-Boot的源代码,还是有些难度的。出于学习的目的,我写了这个史上最简单的启动加载器,它只包含最基本的功能,却囊括了一个嵌入式
Bootloader
应该有的核心和精华。我把这个启动加载器命名为S-Boot, 是Simple
Bootloader
的缩写,亦可进一步简称为SB。
无线
3,846
社区成员
5,006
社区内容
发帖
与我相关
我的任务
无线
硬件/嵌入开发 无线
复制链接
扫一扫
分享
社区描述
硬件/嵌入开发 无线
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章