摘要:
设备驱动程序:以内核模块的形式存在也就是*.ko 设备驱动程序和系统调用关系.系统调用:应有程序和操作系统(内核) 之间的接口(应用程序与内核的交互)设备驱动程序:内核和设备硬件之间接口(内核与硬件的交互) 整个过程实现了应用程序间接访问了底层的硬件。 test.c中调用open 》系统调用(sys 阅读全文
摘要:
1 #include 2 #include 3 #include 4 using namespace std; 5 class Card 6 { 7 protected: 8 float remain; 9 public: 10 Card(){} 11 Card(float _remain):remain(_remain){} ... 阅读全文
摘要:
首先看个makefile范例: 生产静态库的makefile: 链接器脚本: 阅读全文
摘要:
晶振:时钟源(操作主要有两个,倍频,分频) A8的时钟源: 时钟域,每个时钟域(不同的最高频率和最低频率)管理着不同的电路模块: 不同的时钟域对应不同电路模块表 时钟电路:懂得看时钟电路(时钟源选择开关配置(MUX_apll),倍频的配置(APLL),分频的配置(DIV_apll)) 更具体可参看a 阅读全文
摘要:
_start: 1、设置栈空间:防止之前的UBOOT代码被覆盖,应为c中需要栈空间 ldr sp, =0x40010000 2、设置CPSR的I,F位,A8打开IRQ,FIQ中断: mov r0, #0x53 msr CPSR_cxsf, r0 b main --main函数: 1、led灯引脚功能 阅读全文
摘要:
概念:正常的程序执行过程中发生暂时的停止称为异常,如果发现异常情况,将会进行异常处理 作用:快速响应用户的行为,提高cpu的响应能力 异常类型: 异常处理的三个步骤: 1、保护现场: 工作模式保存:CPSR-->SPSR(自动完成)自能保存在SPSR中,其他寄存器不行 下一条要执行指令:lr<--p 阅读全文
摘要:
arm常用指令主要包括以下六类: 1、数据处理指令:完成寄存器中数据的算术和逻辑运算操作 2、程序状态寄存器处理指令:MRS MSR 3、跳转指令:B和BL 4、load/store指令:用于寄存器和存储器之间数据传送的指令 5、异常中断指令:SWI和BKPT 6、协处理器指令:MRC MCR 二、 阅读全文
摘要:
arm体系结构主要有五个部分: 1、arm的工作状态,工作模式,寄存器组 2、流水线 3、存储结构 4、指令系统(指令集) 5、异常处理结构 1、arm的工作状态,工作模式,寄存器组 包含:ARM状态:执行32位字对齐的arm指令, Thumb状态:执行16位半字节对齐的指令, 注意:两种状态可以相 阅读全文
摘要:
1、开发板已启动从0x0获取数据(内部64k的硬盘,里面含有三星固化的BL0段代码),将其读到a8软核中,进行运算,主要用于初始化时钟,96k的内部IRAM.并负责 指定启动设备(通常为外部硬盘),从指定的启动设备中拷贝BL1段代码(不超过16k)到I RAM中(96k),并从BL1代码的启示位置开 阅读全文