摘要: 寄存器 ATPCS 指定用于特殊用途的寄存器 - 使用寄存器 r0-r3 将参数值传送到函数,并将结果值传出。可以用 a1-a4 来引用 r0-r3,以使此用法透明。请参阅第 3-9 页的参数传递。在子程序调用之间,可以将 r0-r3 用于任何用途。被调用函数在返回之前不必恢复 r0-r3。 如果调用函数需要再次使用 r0-r3 的内容,则它必须保留这些内容。 - 使用寄存器 r4-r11 存放函... 阅读全文
posted @ 2009-09-30 17:11 gmh 阅读(1492) 评论(0) 推荐(0) 编辑
摘要: 一、 SDRAM内存模组与基本结构 我们平时看到的SDRAM都是以模组形式出现,为什么要做成这种形式呢?这首先要接触到两个概念:物理Bank与芯片位宽。 1、 物理Bank 传统内存系统为了保证CPU的正常工作,必须一次传输完CPU在一个传输周期内所需要的数据。而CPU在一个传输周期能接受的数据容量就是CPU数据总线的位宽,单位是bit(位)。当时控制内存与CPU之间数据交换的北桥芯片也因此将... 阅读全文
posted @ 2009-09-30 17:07 gmh 阅读(4835) 评论(1) 推荐(0) 编辑
只有注册用户登录后才能阅读该文。 阅读全文
posted @ 2009-09-30 17:03 gmh 阅读(490) 评论(0) 推荐(0) 编辑
摘要: 一、一、OS_CPU_A.ASM文件的编写1、 1、SoftwareInterrupt的编写 当发生软件中断时,程序通过异常向量表跳转到软中断的汇编与C接口程序SoftwareInterrupt处,下图为SoftwareInterrupt的流程图。 程序:SoftwareInterrupt LDR SP, StackSvc ; 重新设置堆栈指针,堆栈指向的是SVC模式下的堆栈 STMFD SP!... 阅读全文
posted @ 2009-09-30 16:59 gmh 阅读(3045) 评论(0) 推荐(1) 编辑
摘要: uC/OS-II 初级程序员指南 (一) uC/OS-II 简介uC/OS-II是一种基于优先级的可抢先的硬实时内核。自从92年发布以来,在世界各地都获得了广泛的应用,它是一种专门为嵌入式设备设计的内核,目前已经被移植到40多种不同结构的CPU上,运行在从8位到64位的各种系统之上。尤其值得一提的是,该系统自从2.51版本之后,就通过了美国FAA认证,可以运行在诸如航天器等对安全要求极为苛刻的系... 阅读全文
posted @ 2009-09-30 16:49 gmh 阅读(1241) 评论(1) 推荐(1) 编辑
摘要: Q: 新旧任务级的切换是不是必须在管理模式下切换 切换后新任务的运行是不是必须在管 理模式下A: 在配套《ARM 微控制器基础与实战》里的任务切换是通过 SWI 实现的.SWI 会使 CPU 进入 管理模式.同时 CPU 自动将任务的 CPSR 保存到管理模式的 SPSR 中. SWI 程序还保存了一些寄存器到管理模式的堆栈中.然后任务切换程序会在管理模式 和系统模式间来回切换,目的是把保存在管理... 阅读全文
posted @ 2009-09-30 16:47 gmh 阅读(1440) 评论(0) 推荐(1) 编辑
摘要: 1.在uC/OS-II的帮助手册内,作者特地强调绝对不能在OSInit()或者OSStart()内调用Timer初始化程序,那会破坏系统的可移植性同时带来性能上的损失。 所以,一个折中的办法就是: 在优先级最高某绦蚰诘饔?这样可以保证当OSStart()调用系统内部函数 OSStartHighRdy()开始多任务后,首先执行的就是Timer初始化程序。或者 专门开一个优先级最高的任务,只做一件事... 阅读全文
posted @ 2009-09-30 16:46 gmh 阅读(4878) 评论(0) 推荐(1) 编辑
摘要: 1 引言由于 C/OS在设计之初就充分考虑了本身在不同处理器上的移植问题,因此在任何处理器上的移植 C/OS都只需要关心三个文件:头文件OS_CPU.H 、C文件0S_CPU_C.C和汇编文件OS_CPU_A.ASM.下面我们分别由这三个文件入手来介绍移植需要解决的几点问题。一. C/OS-II本身涉及到的问题C/OS中的任务总是处于五种状态之一:睡眠态、就绪态、运行态、等待状态和中断服务态。任何... 阅读全文
posted @ 2009-09-30 16:45 gmh 阅读(3095) 评论(0) 推荐(1) 编辑
该文被密码保护。 阅读全文
posted @ 2009-09-30 16:36 gmh 阅读(420) 评论(0) 推荐(0) 编辑
摘要: /******************************************************************************* 文件名:LCDDRIVE.C* 功能:图形液晶240*128驱动(型号为SMG240128A)。32K显示存,0000H-7FFFH地址。显示是横向字节,高位在前。* 说明:图形液晶采用T6963C为LCD控制芯片,内带负压产生器,单5伏... 阅读全文
posted @ 2009-09-30 16:06 gmh 阅读(2524) 评论(0) 推荐(0) 编辑
摘要: * 说明:操作失败原因是指定地址超出缓冲区范围。****************************************************************************/void LCD_UpdatePoint(uint32 x, uint32 y){ uint32 addr; /* 找出目标地址 */ addr = y*(GUI_LCM_XMAX>>... 阅读全文
posted @ 2009-09-30 16:04 gmh 阅读(944) 评论(0) 推荐(0) 编辑
摘要: 上海杰得微电子自主开发的Z228多媒体应用处理器是中国第一款 0.13微米的多媒体应用处理器,内含ARM926EJ处理器内核和支持MPEG-4格式的硬件全双工编解码器,支持VBR(可变码率)、CBR(固定码率)、VFR(可变帧率)、CFR(固定帧率)、RVLC(逆向可变长编码)等多种功能,可以在VGA@30fps的情况下流畅完成全双工实时编解码。 除此之外,Z228还拥有丰富的外围接口,标准的L... 阅读全文
posted @ 2009-09-30 16:03 gmh 阅读(794) 评论(0) 推荐(0) 编辑
摘要: 1、 1、 静态电流 Quiescent current 或resting current 或static current2、 2、 power dissipation 最大散耗功率:在器件不损坏的情况下,所能承受的最大功率3、 3、 discharge leakage current 泄漏释放电流44 4、sink current 和 source current 对一个互补输出的驱动器而言,从... 阅读全文
posted @ 2009-09-30 16:02 gmh 阅读(770) 评论(0) 推荐(0) 编辑
摘要: 1、为什么RTC时钟电路外部晶振都接32.768khz?答: rtc计算时间实际上是以震荡频率来计算的。可以说它不是时间器,不过是个计数器。时间由bios来计算。了解rtc应该知道,系统时间由bios来保存,关机后bios储存一个系统时间这个时候rtc开始震荡计数,每震荡一次的时间就是1/2的15次方秒。开机后bios会把震荡次数换算为时间。 也就是说,假如rtc频率是8,那么每震荡一次时间就是1... 阅读全文
posted @ 2009-09-30 15:53 gmh 阅读(332) 评论(0) 推荐(0) 编辑
摘要: 电阻式触摸屏是一种传感器,它将矩形区域中触摸点(X,Y)的物理位置转换为代表X坐标和Y坐标的电压。很多LCD模块都采用了电阻式触摸屏,这种屏幕可以用四线、五线、七线或八线来产生屏幕偏置电压,同时读回触摸点的电压。   电阻式触摸屏基本上是薄膜加上玻璃的结构,薄膜和玻璃相邻的一面上均涂有ITO(Indium Tin Oxides,纳米铟锡金属氧化物)涂层,ITO具有很好的导电性和透明性。当触摸操作时... 阅读全文
posted @ 2009-09-30 15:52 gmh 阅读(2861) 评论(0) 推荐(0) 编辑
摘要: 关于C++中函数指针的使用(包含对typedef用法的讨论) (一)简单的函数指针的应用。 //形式1:返回类型(*函数名)(参数表) char (*pFun)(int); char glFun(int a){ return;} void main() { pFun = glFun; (*pFun)(2); } 第一行定义了一个指针变量pFun。首先我们根据前面提到的“形式1&#... 阅读全文
posted @ 2009-09-30 15:51 gmh 阅读(25169) 评论(0) 推荐(2) 编辑
摘要: 这里有些sscanf()的一些使用说明,都是从论坛,Blog里整理出来的。供大家使用。 通过学习和使用个人认为,在字符串格式不是很复杂,但是也并不简单的时候用这个函数比较合适,这个尺度就要靠自己把握了,字符串不是很复杂,但自己写个处理的函数比较麻烦,效率也不高,就用这个函数,如果字符串很复杂,那就用正则表达式吧。 不多说了,看看下面这些介绍和列子吧!名称:sscanf() - 从一个字符串中读进... 阅读全文
posted @ 2009-09-30 15:51 gmh 阅读(28452) 评论(1) 推荐(5) 编辑
摘要: struct autonlist { char *symbol; struct nlist nl[2]; struct autonlist *left, *right; }; struct autonlist *nlists = 0; 有没有高手知道symbol,*symbol,nl[0],nl[1],*left,left,*right,right会初始化成什么?解答:应该... 阅读全文
posted @ 2009-09-30 15:49 gmh 阅读(2898) 评论(0) 推荐(0) 编辑
摘要: 一、设计准备 原理图分析,DRC检查。标准元件库的建立,特殊元器件的建立,印制板设计文件的建立,转网表。 二、网表输入 将生成的网表转换到PCB设计中。 三、规则设置 进行线宽、线距、层定义、过孔、全局参数的设置等。 PCB布局的一般规则: a、信号流畅,信号方向保持一致 b、核心元件为中心 c、在高频电路中,要考虑元器件的分布参数 d、特殊元器件的摆放位置;批量生产时,要考虑波峰焊及回流焊的锡流... 阅读全文
posted @ 2009-09-30 15:48 gmh 阅读(1210) 评论(0) 推荐(0) 编辑
摘要: 一.锂电池保护 一般用户接触到手机锂离子电池,在外面看到的除了电池外壳,还有就是几个五金触片了,如图中"电池正极,电池负极"就是的电池正负极输出. ┏━━Fuse━━━━━┳━━━━━━━━&#... 阅读全文
posted @ 2009-09-30 15:47 gmh 阅读(1475) 评论(0) 推荐(0) 编辑