ARM9自学笔记
文章平均质量分 77
记录我的ARM成长记
sky_caicai
一步一重天
展开
-
2440串口
串口发送数据的原理 CPU-----(数据写入)-----FIFO----(UART自动复制)------发送移位器----(一位一位发送到)------TxDn 串口接受数据的原理 RxDn-----(一位一位接收到)-----接受移位器-----(复制到)-----FIFO-----(读取数据)------CPU 初始化: 1.波特率、传输格式(多少个数据,是否使用校验位,是原创 2015-05-30 16:39:02 · 620 阅读 · 0 评论 -
S3C2440_系统时钟
时钟控制逻辑给时钟提供了三种时钟: FCLK用于CPU 核 HCLK用于AHB总线设备,比如CPU核、存储控制器、中断控制器、LCD控制器、DMA PCLK用于APB总线设备,比如WATCHDOG、IIS控制器、PWM定时器、MMC接口、ADC 需要通过时钟控制逻辑的PLL提高系统时钟。 PLL有两个,MPLL和UPLL。UPLL专用于USB设备,MPLL用于FCLK、HCLK、原创 2015-05-24 13:02:06 · 695 阅读 · 0 评论 -
ARM9__中断
ARM体系的CPU有7种工作模式 用户模式 usr ARM处理器正常的程序执行状态 快速中断模式 fiq 用于高速数据传输或通道处理 中断模式 irq 用于通用中断处理 管理模式 svc 操作系统使用的保护模式 数据访问终止模式 abt 虚拟存储及存储保护 系统模式 sys 运行具有特权的操作系统任务 未定义指令终止模式 und 支持硬件协处理器的软件原创 2015-05-18 16:55:14 · 684 阅读 · 0 评论 -
内存管理单元MMU
MMU 存储器管理单元 CPU通过MMU将虚拟地址转到物理地址,当虚拟地址启动时,CPU看到的只是虚拟地址,CPU只关心发出地址,读取数据,没有虚拟地址物理地址的概念。 虚拟地址最终需要转为物理地址才可以存放有效数据 ARM使用虚拟地址,可能多块虚拟地址映射到同一个物理地址 1 建立表格 表格 将内存分成表格 1个表格是1M的大小,4096个表格是4G的大小空间 2 建立映射原创 2015-04-26 22:10:44 · 587 阅读 · 0 评论 -
基于SDRAM的存储管理器使用
存储管理器:管理CPU跳到哪个地址 CPU运行程序会从0地址开始,通过存储管理器可以让让CPU跳到外设 RAM 内存 因为存储管理器内部有8个Bank,所以最多可以接8个外设,每个Bank最大可以接128M,因为有27跟线(27*1024*1024) 比如读存储管理器的地址0X30000000,CPU通过对0X30000000进行访问 MOV R1 #0X30000000 l原创 2015-04-24 17:11:21 · 544 阅读 · 0 评论 -
2440的Nand启动
2440的Nand启动的简略图是这样的 4K的SRAM的启动地址是0x0000000 启动时硬件强制执行 1.强制将Nand Flash前4K的内容拷贝到SRAM中(0地址) 2.CPU从0地址开始执行 所以说 制定代码块从0开始启动 Nand启动软件初始化 1.设置栈 sp指向某块内存,通常情况下指向SRAM(所以通常不用初始化),如果指向SDRAM需要初始化原创 2015-04-22 23:56:36 · 528 阅读 · 0 评论 -
ARM9自学笔记_GPIO设置
#define GPFCON (*(volatile unsigned long *)0x56000050) #define GPFDAT (*(volatile unsigned long *)0x56000054) #define GPGCON (*(volatile unsigned long *)0x56000060) #define GPGDA原创 2015-03-25 00:11:27 · 1128 阅读 · 0 评论