什么是嵌入式设备?/ 嵌入式设备的定义

本文详细介绍了嵌入式设备的概念,与通用计算机的区别,以及嵌入式开发的组成部分,包括底层驱动和上层应用开发。重点讲解了嵌入式Linux系统开发,涉及驱动开发接口、常见芯片、外设及总线的驱动开发,以及Linux驱动总线模型。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

什么是嵌入式设备?/ 嵌入式设备的定义

区别于通用计算机的其他设备都可以称之为嵌入式设备 (个人电脑,服务器)

一段时期内,必备的硬件配置。

嵌入式开发包括哪些部分:

底层驱动开发:

关键字:BSP/嵌入式Linux/wince/vxworks…

上层应用开发:

关键字:Posix

底层驱动开发工程师工作内容:

jd

以嵌入式linux系统开发为例:
  • 熟悉linux驱动开发的接口,模式,限制。(操作系统的两种状态:内核态,用户态),驱动开发在内核态,其开发模式和接口有着和上层开发类似,却完全不同的开发接口api。
  • 熟悉某(几)款常见芯片的开发:
    • 著名半导体芯片厂商:TI,QUALCOMM,MTK,Intel,三星,Marvell,Navida,NXP,Freescale,Broadcom,Realtek,Ambarella。
    • 国内知名的芯片厂商:海思,allwinner,rockchip。
    • 人工智能芯片厂商:搞人工智能的都搞芯片了。
  • 熟悉常见外设,总线的linux驱动开发:
    • 包括,字符设备:gpio i2c spi usb rj45 i2s csi2(mipi)uart。块设备:scisi,sata,pci…
    • 熟悉各个总线,外设接口的内核驱动模块(每一种外设总线,都有各自的硬件特性,不同厂商不同芯片采用不同的控制器,所以各个外设的驱动在不同的芯片上都有不同的实现)
    • 熟悉linux的驱动总线模型(linux为了管理多种多样的外设抽象的架构模型),每一种总线都对应一个内核管理模块。(usb是一个十分复制的协议,其内核管理模块也十分复杂庞大)

操作系统多样性:
实时,非实时
宏内核,微内核
存储小,内存小,运算能力低,视频类编解码能力强。

单片机,m3,m4,arm,mips,x86

芯片多样性:多种多样

接口,总线:gpio i2c spi usb rj45 i2s csi2(mipi)uart scisi,pci

dma

字符设备,每种总线对应一种内核驱动模块,设备模型设备树。

块设备:sd卡,u盘,硬盘,文件系统

文件系统多样性:jffs2,ubi,yaffs2,

存储:nor flash nand flash -> emmc ufs

系统启动:bring up 冒烟

稳定,差异性,外设管理(驱动),寄存器,map

datasheet

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值