11、用户空间访问硬件:嵌入式开发实战

用户空间访问硬件:嵌入式开发实战

在嵌入式和实时应用开发领域,从用户空间访问硬件是一项关键技能。下面将详细介绍相关的硬件架构、项目创建、程序运行以及数据采集等方面的内容。

1. ARM I/O 架构

ARM 处理器架构与 x86 架构在处理外设访问上有显著不同。ARM 将外设设备置于与内存相同的地址空间,这意味着可以使用与访问内存相同的指令来访问外设,程序无需关心访问的是内存还是硬件设备。而 x86 架构中,外设设备存在于单独的地址空间,需要通过单独的 I/O 指令进行访问,且这些 I/O 指令只能在特权级 0(内核空间)执行,因此需要内核空间设备驱动来访问外设。

以 S3C2440 处理器为例,其 32 位地址空间的分配如下表所示:
| 地址范围 | 设备 |
| ---- | ---- |
| 0 - 0x3FFFFFFF | SDRAM、NOR flash、以太网控制器 |
| 0x48000000 - 0x5B0000FF | 内部外设 |

部分内存映射依赖于启动选择开关的设置:
- NOR 启动:NOR flash 从地址 0 开始,内部 SRAM 映射到 0x40000000。
- NAND 启动:NOR flash 不可见,内部 SRAM 映射到 0,NAND flash 的前 4 KB 被复制到内部 SRAM 并执行,第一阶段加载器将 U - boot 从 NAND 复制到 SDRAM 并执行。

2. LED 和按钮映射

四个 LED 和六个按钮被映射到通用 I/O(GPIO)端口:
- LED 使用 GPIO 端口 B(GPB),

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值