嵌入式系统内容基础

本文介绍了嵌入式系统的硬件组成,包括MCU、RAM、FLASH和外设,详细讲解了NAND Flash的分区原则。此外,探讨了Linux内核设备树的概念,包括其结构、节点语法和属性语法,阐述了设备树在解决硬件适配问题中的作用。
摘要由CSDN通过智能技术生成

1 固件基本组成

1.1 硬件系统结构

嵌入式硬件基本组成包括:主控芯片(MCU),FLASH,RAM,外设等,我们提供的开发板MCU型号是RK3308,64MB的RAM,外挂一颗128M的SPI-Nand-FLASH。

RAM:也称内存,掉电数据不保存。

FLASH:非易失性存储器,掉电数据不会丢失,从总线访问的方式进行区分,FLASH可以分为SPI(串行)和CFI(也叫JEDEC或者Parallel,并行);从存储类型可以分为Nor(价格较高,存储空间一般比较小,但它可以不用初始化,可以在其内部运行程序,一般在其存储一些初始化内存的固件代码)和Nand(价格便宜,容量较大,改写速度快,适合用于大量的数据存储)。

外设:比如USB口,WiFI主控芯片,RGB灯,按键等都属于外设的范畴。

1.2 分区

和我们电脑的硬盘一样,Flash也可以看成是一个硬盘,可以进行分区;NandFlash的分区需要注意,需要按照单位是sector进行分区,1个sector为512Bytes;同时为了达到最好的性能,每个分区需要和64个sectors进行对齐也就是32KB的整数倍。

比如1MB的分区的大小是: 1024*1024B / 512 = 2048 = 0x800 Sectors

4MB分区大小:0x800 * 4 = 0x2000 Sectors。

1.3 软件结构

一个完整的嵌入式产品的软件一般包括如下组成:

 

U-Boot(Bootloader),

芯片原厂要求的引导程序

Kernel(比如Linux),

<
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值