随笔 - 60, 文章 - 0, 评论 - 197, 引用 - 0
数据加载中……

Embeded Area

嵌入式编程, 着重讨论基于 ARM 的编程技术与心得
insmod module 失败(skyeye + armlinux)
     摘要: 前些日子在 skyeye 上 porting 了 arm-linux,于是迫不及待的写了一个 module 试试,可很不幸,没有成功。小弟最近才搞 linux 的 module 技术,很多地方不是很懂,现将问题贴出,希望大家不吝赐教。  阅读全文

posted @ 2008-04-27 21:20 Normandy 阅读(3549) | 评论 (3)  编辑

构建 arm-linux 仿真运行环境 (skyeye + arm-linux + NFS)
     摘要: 本文旨在将 arm-linux 在 skyeye 上搭建起来,并在 arm-linux 上能成功 mount NFS 为目标, 最终我们能在 arm-linux 里运行我们自己的应用程序. 其实在 skyeye 上移植 arm-linux 并非难事,网上也有不少资料, 只是大都遗漏细节, 以致细微之处卡壳,所以本文力求详实清析, 希望能对大家有点用处。  阅读全文

posted @ 2008-04-17 11:53 Normandy 阅读(12266) | 评论 (32)  编辑

学习 ARM 系列 -- 为 ARM Linux 制作根文件系统
     摘要: 通过 vivi 加载 arm linux 内核时发现开发板自带的根文件系统太大了(27M),如果通过串口传输的话到少要 2 个小时呢,索性自己制作了一个,谨将操作过程录之于下  阅读全文

posted @ 2008-02-19 12:29 Normandy 阅读(8656) | 评论 (3)  编辑

学习 ARM 系列 -- FS2410 开发板上启用 MMU 实现虚拟内存管理
     摘要: FS2410 开发板上的 ARM 核心为 ARM920T, ARM920T 代表着什么呢? 其实 ARM920T = ARM9 core + MMU + Cache,也就是说 ARM920T 为实现虚拟内存管理提供了硬件条件,这个硬件条件就是 MMU -- 内存管理单元。前面的实验我们程序里的地址都是直接对应物理地址,也就是说虚拟地址等同于物理地址,而今借助 MMU 我们可以实现虚拟内存管理,程序里面的地址不再被直接送到地址总线,而是先通过 MMU,由 MMU 来实现虚地址到物理地址的映射。这有什么意义呢?想象有这么两个程序,它们有相同的虚拟地址,但由于运行时其虚地址分别被映射到不同的物理地址,所以它们各行其道、和平共处,而不会产生冲突...有了 MMU 的支持我们可以设计出高级的作业系统...  阅读全文

posted @ 2008-02-01 15:26 Normandy 阅读(5580) | 评论 (14)  编辑

s3c2410 MMU 启用后设置中断跳转指令遇到的问题
     摘要: 事情是这样的, 前些日子在 FS2410 (核心板为三星 s3c2410)开发板上实现了中断,包括响应时钟 Timer0, 响应按键,并实现了串口通信,能把任何数据通过 UART0 发送到 PC 机上的超级终端上进行显示,这样也便于调试。前两天又实现了 MMU 的启用代码,欢呼雀跃啊..., 可就在这个时候问题来了...
  阅读全文

posted @ 2008-01-28 11:11 Normandy 阅读(3750) | 评论 (3)  编辑

ARM GNU 汇编伪指令简介
     摘要: 在 FS2410 板子上写的程序用的是 arm-linux-gcc 这个编译器,总结了一下它常用的汇编伪指令  阅读全文

posted @ 2008-01-22 20:05 Normandy 阅读(7387) | 评论 (4)  编辑

学习 ARM 系列 -- FS2410 开发板上的中断编程
     摘要: 中断服务程序在操作系统中无疑占有非常重要的地位,编写中断程序不仅要会运用底层的汇编语言,还要了解 ARM 的体系架构。那这一节我们就通过中断编程来响应 FS2410开发板上的 16 个按键,实现依次按下16个键时,D9~D12 四个 Led 从 0~15 进行计数,并通过上个实验实现的 uart_printf 向串口发送数据 Kn is pressed!。  阅读全文

posted @ 2008-01-18 19:24 Normandy 阅读(2177) | 评论 (3)  编辑

学习 ARM 系列 -- FS2410 开发板上通过串口实现 printf
     摘要: 到目前为止我们所编写的程序都是直接烧到裸板(FS2410)上运行,没有借助操作系统,如果哪个环节出错了,就只能揣测代码的逻辑,无法借助 GDB 调试,这无形增加了编写代码的难度,如果任意时刻我们能把某个变量的值打印出来多好啊...呵呵, 你也许有同样的困惑,上一个实验我们对 UART 串口编程实现了对超级终端接收和发送数据,也许我们可以编写一个类似 C 语言里的 printf,作用就是向上位机的超级终端发送我们指定的任何数据。怀着这样美好的愿望,随我一起踏上征程吧。  阅读全文

posted @ 2008-01-17 15:53 Normandy 阅读(3572) | 评论 (1)  编辑

学习 ARM 系列 -- FS2410 开发板上的串口通信编程
     摘要: 串口通信我们并不陌生,我们经常用串口来进行数据传输,可并不清楚它是如何工作的。那这一节我们就来揭开 ARM S3c2410 UART(Universal Asynchronous Receiver and Transmitter) 串口通信的神秘面纱。  阅读全文

posted @ 2008-01-08 21:47 Normandy 阅读(7488) | 评论 (28)  编辑

学习 ARM 系列 -- FS2410 开发板上 Nand Flash 到内存的代码搬移
     摘要: 前面做过一个实验,搬移 Nand Flash 里的前 4k 代码到内存指定位置,这其实是把 SRAM 从 0x40000000 开始的 4K 代码复制到SDRAM的指定位置,并没有涉及到对 Nand Flash 的操作。究其原因,开发板上电后,Nand Flash 开始的前 4K 数据会被自动复制到 SRAM 0x40000000 开始的 4K 区域里,这个区域被称为 "Steppingstone"。那我们这次就来操作 Nand Flash,读取它 4K 后的代码到 SDRAM 指定位置,并执行 SDRAM 中的代码。
  阅读全文

posted @ 2008-01-06 21:43 Normandy 阅读(4619) | 评论 (7)  编辑

学习 ARM 系列 -- FS2410 开发板上的内存搬移实验
     摘要: 通过将 Nand Flash 前 4K 代码搬移到 SDRAM 的指定位置,了解如何初始化并使用 ARM 的内存,
为编写 ARM bootloader 和搬移内核到内存作准备。
  阅读全文

posted @ 2008-01-05 20:56 Normandy 阅读(2657) | 评论 (4)  编辑

ARM 嵌入式学习笔记 (一)
     摘要: 读ARM Architecture Reference Manual时做的笔记, 这本书是英文的, 所以笔记也用英文的了。 愿和学习ARM的同道一起分享、交流、切磋  阅读全文

posted @ 2008-01-02 18:16 Normandy 阅读(1802) | 评论 (1)  编辑

学习 ARM 系列 -- FS2401 发光二极管循环点亮
     摘要: 通过实现FS2410板子上的D9、D10、D11、D12四个发光二极管的循环点亮,了解ARM嵌入式开发的基本流程  阅读全文

posted @ 2008-01-01 20:36 Normandy 阅读(2612) | 评论 (10)  编辑

嵌入式程序员应知道的几个基本问题
     摘要: 嵌入式程序员应知道的几个基本问题  阅读全文

posted @ 2007-12-18 13:32 Normandy 阅读(911) | 评论 (1)  编辑