- 博客(27)
- 资源 (34)
- 问答 (1)
- 收藏
- 关注
转载 写得蛮好的linux学习笔记
linux目录架构 / 根目录 /bin 常用的命令 binary file 的目錄 /boot 存放系统启动时必须读取的档案,包括核心 (kernel) 在内 /boot/grub/menu.lst GRUB设置 /boot/vmlinuz 内核 /boot/initrd 核心解壓縮所需 RAM Disk /d
2007-12-25 17:41:00 484
原创 ATPCS...
为了使单独编译的C语言程序和汇编程序之间能够相互调用,必须为子程序之间的调用规定一定的规则.ATPCS就是ARM程序和THUMB程序中子程序调用的基本规则...一.ATPCS概述... ATPCS规定了一些子程序之间调用的基本规则.这些基本规则包括子程序调用过程中寄存器的使用规则,数据栈的使用规则,参数的传递规则.为适应一些特定的需要,对这些基本的调用规则进行一些修改得到几种不同的
2007-12-13 22:55:00 869
转载 不同编译器下基本数据长度
KEIL uVision2 C51编译器所支持的数据类型 表中列出了KEIL uVision2 C51编译器所支持的数据类型。在标准C语言中基本的数据类型为char,int,short,long,float和double,而在C51编译器中int和short相同,float和doubl
2007-12-13 22:47:00 2763
转载 ARM汇编的几个问题
最近在调试ARM硬件版的程序时遇到一些汇编代码,需要对其中的一些代码作些修改。其中有些ARM汇编代码的问题和技巧,将其记录在此,以备之后查找。(转自会飞的鱼 ) 问题一:thumb模式下PC指针是如何计算预取值的。和其他现代的处理器一样,ARM处理器在指令执行时是要进行指令预取的,其向前预取了两条指令。在ARM模式下,PC指针的预取值是8(一条指令4个字节)。在thumb模式下,PC指
2007-12-13 17:56:00 863
转载 移植UCOS-II到ARM7TDMI
UCOS-II移植到ARM需要做的工作如下:1) 编写一个的与CPU相关的文件OS_CPU_A.S,此文件包含四个函数,这四个函数需用汇编编写。a) OSStartHighRdy( ),此函数作用为启动最高优先级任务,由OSStart( )调用。b) OSCtxSw( ),任务级别的切换函数,例如当前运行的任务不再是优先级最高时,这时就需要任务的切换(比如当前任务申请一个信号量而被挂
2007-12-13 15:19:00 1846
转载 ARM程序由于字节对齐引起的问题深入分析
首先说说,什么叫对齐。如果一个数据是从偶地址开始的连续存储,那么它就是半字对齐,否则就是非半字对齐;半字对齐的特征是bit0=0,其他位为任意值。字对齐的特征是bit1=0,bit0=0,其他位为任意值。如果一个数据是以能被4 整除的地址开始的连续存储,那么它就是字对齐,否则就是非字对齐。举例说明四字节对齐: 对内存进行操作时,被访问的地址必须为4的倍数。如果分配到的地址的地址不是4的
2007-12-12 11:57:00 848
转载 LDR 指令需要注意的地方
前几天有个朋友问了个LDR指令的问题。他的程序如下:内存值:0X1234 = 0X12; 0X1235=0X34; 0X1236=0X56; 0X1237=0X78; (小端模式) LDR R2, =0x1234 LDR R1, [R2,#1] 得到R1 = 0x12785634发现R1中的值很奇怪。原因是:LDR操作的时候,如果地址不是对齐的,根据地址最低2位的值,会有
2007-12-12 10:41:00 1301
原创 HEX文件和BIN文件格式的区别
HEX文件和BIN文件是我们经常碰到的2种文件格式。下面简单介绍一下这2种文件格式的区别:1 - HEX文件是包括地址信息的,而BIN文件格式只包括了数据本身 在烧写或下载HEX文件的时候,一般都不需要用户指定地址,因为HEX文件内部的信息已经包括了地址。而烧写BIN 文件的时候,用户是一定需要指定地址信息的。 3 - BIN文件格
2007-12-12 01:17:00 1770
转载 ADS连接器使用手册-转自老古开发网
缺少第一章第二章ArmLink命令语法2.1 关于ArmLinkArmLink可以:1. 把多个目标文件及库文件(在ARM或THUMB代码中)连接与为一个可执行的映像文件。2. 把多个目标文件部分地连接成为一个目标文件以作为下一步连接操作中的输入部分。3. 指定内存中代码和数据的存放位置。4. 产生关于已连
2007-12-12 01:13:00 1902
原创 使用ADS 移植mC/OS-II的实例分析
摘 要: 本文介绍了使用 ARM 公司提供的 ADS 开发工具,进行移植uC/OS-II 的工作。结合基于 StrongARM 评估板的硬件结构,对移植工作中的若干要点做了详细分析。最后,给出了移植体会和程序技巧分析。 关键词: ADS;uC/OS-II;StrongARM;移植 选择开发工具 在嵌入式系统设计中,开发工具的选取是一个重要的考虑因素,通常这是与开发项目的需求和应用背景相关。
2007-12-12 01:09:00 964
转载 arm开发经验
前一段时间做了arm的一些开发,主要是编写了arm的启动软件和移植了uCOS-II到arm7。我做事情喜欢深入简出,及从最简单,最原理的方面先做一个框架,然后在这个框架里面进行补充。我还是一个很喜欢和别人讨论的人,希望有人可以给我提出意见和建议。我的这个心得很初级,都是一些基本的东西。现在拿出来和大家分享,希望在我毕业之前能给大家留一些纪念。^_^ 由于这些东西发paper实在是没有价值
2007-12-12 00:50:00 670
原创 ADS中生成的映像文件内部共有三种输出段:RO段、RW段和ZI段
一般而言,一个程序包括只读的代码段和可读写的数据段。在ARM的集成开发环境中,只读的代码段和常量被称作RO段(ReadOnly);可读写的全局变量和静态变量被称作RW段(ReadWrite);RW段中要被初始化为零的变量被称为ZI段(ZeroInit)。对于嵌入式系统而言,程序映象都是存储在Flash存储器等一些非易失性器件中的,而在运行时,程序中的RW段必须重新装载到可读写的RAM中。这就涉及到
2007-12-12 00:43:00 720
原创 70种IC封装术语
1、BGA(ball grid array)球形触点陈列,表面贴装型封装之一。在印刷基板的背面按陈列方式制作出球形凸点用以代替引脚,在印刷基板的正面装配LSI 芯片,然后用模压树脂或灌封方法进行密封。也称为凸点陈列载体(PAC)。引脚可超过200,是多引脚LSI 用的一种封装。封装本体也可做得比QFP(四侧引脚扁平封装)小。例如,引脚中心距为1.5mm 的360 引脚BGA 仅为31mm 见方;而
2007-12-11 16:46:00 1662
原创 芯片封装技术知多少
我们经常听说某某芯片采用什么什么的封装方式,在我们的电脑中,存在着各种各样不同处理芯片,那么,它们又是是采用何种封装形式呢?并且这些封装形式又有什么样的技术特点以及优越性呢?那么就请看看下面的这篇文章,将为你介绍个中芯片封装形式的特点和优点。一、DIP双列直插式封装DIP(DualIn-line Package)是指采用双列直插形式封装的集成电路芯片,绝大多数中小规模集成电路(IC
2007-12-11 16:45:00 1147
转载 linux 常见问题1000个详细解答
一、 如何建立多用户 提醒大家一句,别一直使用root用户,因为root用户在系统中有着至高无上的权力,一不小心就可能破坏系统。比如我们想删除/temp目录下的文件却将命令不小心输成“rm / temp(在‘/’后多了一个空格)”,那么就极可能删去根目录下的所有文件。再者,“linux是一个真正意义上的多任务、多用户系统”,不体会一下linux的特色岂不可惜。为了方便自己和别人使用,就在li
2007-12-11 16:42:00 2182
转载 想成为嵌入式程序员应知道的10个基本问题(必须精读)
C语言测试是招聘嵌入式系统程序员过程中必须而且有效的方法。这些年,我既参加也组织了许多这种测试,在这过程中我意识到这些测试能为面试者和被面试者提供许多有用信息,此外,撇开面试的压力不谈,这种测试也是相当有趣的。 从被面试者的角度来讲,你能了解许多关于出题者或监考者的情况。这个测试只是出题者为显示其对ANSI标准细节的知识而不是技术技巧而设计吗?这是个愚蠢的问题吗?如要你答出某个字符的ASCI
2007-12-11 16:39:00 781
原创 嵌入式内功.葵花宝典
一般来说,从事消费类或通信类产品研发的底层软件开发的人员,如果不熟练掌握DMA、cache、PCI、代码优化(包括编译器优化)等技术,那么他充其量还只是停留在应用软件或简单系统开发的层面,就好比搞VC编程的还没很好掌握MFC一样,虽然进入了应用软件开发的殿坛,但还没有把握这个领域的关键技术。这几个东西在对嵌入式底层软件软件开发的人来说至关重要,可以说是高手和普通者的分水岭。现在,一些高端的
2007-12-11 16:35:00 635
转载 PCB设计步骤详细介绍
一、电路版设计的先期工作1、利用原理图设计工具绘制原理图,并且生成对应的网络表。当然,有些特殊情况下,如电路版比较简单,已经有了网络表等情况下也可以不进行原理图的设计,直接进入PCB设计系统,在PCB设计系统中,可以直接取用零件封装,人工生成网络表。 2、手工更改网络表 将一些元件的固定用脚等原理图上没有的焊盘定义到与它相通的网络上,没任何物理连接的可定义到地或保护地等。将一些原理图和PC
2007-12-11 16:27:00 2367
原创 ADS相关(转载)
1、ads是由arm公司提供的编译和调试环境,非常好,不容质疑!搞arm开发的人员,不能不用ads,例如要开发一个驱动,首先是在ads中编译、调试通过,才会加入操作系统中,这是开发过程。 2、Ads中codewarria是编译环境,在这个环境中,应正确设置程序工作或调试的地址,这两个地址不一定同址,每次只能设置一种,除非它们相同。设置是通过菜单项edit->target setting完成的。编译
2007-12-11 16:23:00 815
原创 转载:51,AVR,PIC,DSP,DIY等资源
http://www.mcu123.com/news/Article/web/uc/200608/190.html avr的资源入口,很好。 http://www.dckits.com/ 几个电子项目http://www.directron.com/index.html一个巨大的电子项目,,零件网站http://www.hometheaterhifi.com/masterin
2007-12-07 11:06:00 7111
原创 ARM ADS中的AXD 调试经验集锦
1、如何设置AXD连接的Target。在菜单Options->Configure Target…选项中可以设置。一般选择MutiIce或者ARMUL两种。ARMUL是一种ARM的模拟器。一般的算法或者一些无需和硬件中断等设备打交道的程序都可以通过这个进行调试。使用上非常简单。我们一般上板子进行调试都是通过MutiICE来进行。在刚刚安装了系统的时候,菜单中没有MutiICE,需要我们手
2007-12-07 10:13:00 946
原创 伪指令及其作用
伪指令是汇编语言的特色之一,具有两个基本特征: 1、伪指令是一条指令。它在程序中不是可有可无的,使用时受到严格的规范,与标准指令一样,在程序中占有固定的位置,有固定的书写格式。每条伪指令都与标准指令一样可实现特定的功能,伪指令是不能用标准指令替代的。 2、伪指令不是一条真正的指令,没有指令代码。在程序编译过程中,伪指令的功能会被实现,但伪指令会被删除,在编译后的目标文件中(目标
2007-12-06 13:37:00 14843
原创 ARM的异常处理
二、ARM 的异常处理 这部分比较不好理解。 当异常中断发生时,系统执行完当前指令后,将跳转到相应的异常中断处理程序处执行。当异常中断处理程序执行完成后,程序返回到发生中断指令的下条指令处执行。在进入异常中断处理程序时,要保存被中断程序的执行现场,从异常中断处理程序退出时,要恢复被中断程序的执行现场。1、引起异常的原因 (1)、指令执行引起的异常 软件中断、未定义指
2007-12-06 13:29:00 1396 1
原创 ARM中的异常和中断
ARM处理器中主要有7个异常(2个中断异常): 1、复位异常;在以ARM为核的单片机中,常把下列事件作为引起复位的原因。 • 上电复位:在上电后,复位使内部达到预定的状态,特别是程序跳到初始入口; • 复位引脚上的复位脉冲:这是由外部其他控制信号引起的; • 对系统电源检测发现过压或欠压; • 时钟异常复位。 ARM处理器复位后,处理器
2007-12-06 13:26:00 1448
原创 ARM指令集注意事项
ARM指令集比较简单,本文介绍ARM指令集中需要注意和不易理解的地方。 一、ARM指令集是32位的,程序的启动都是从ARM指令集开始,包括所有异常中断都是自动转化为ARM状态,并且所有的指令都可以是有条件执行的。 二、ARM指令集是Load/Store型的,只能通过Load/Store指令实现对系统存储器的访问,而其他的指令都是基于处理器内部的寄存器操作完
2007-12-06 13:19:00 666
原创 volatile关键字
volatile关键字是一种类型修饰符,用它声明的类型变量表示可以被某些编译器未知的因素更改。用volatile关键字声明的变量i每一次被访问时,执行部件都会从i相应的内存单元中取出i的值。没有用volatile关键字声明的变量i在被访问的时候可能直接从cpu的寄存器中取值(因为之前i被访问过,也就是说之前就从内存中取出i的值保存到某个寄存器中),之所以直接从寄存器中取值,而不去内存中取值,是
2007-12-06 11:53:00 550
原创 关于ARM的一些概念
1.ARM中一些常见英文缩写解释MSB:最高有效位;LSB:最低有效位;AHB:先进的高性能总线;VPB:连接片内外设功能的VLSI外设总线;EMC:外部存储器控制器;MAM:存储器加速模块;VIC:向量中断控制器;SPI:全双工串行接口;CAN:控制器局域网,一种串行通讯协议;PWM:脉宽调制器;ETM:嵌入式跟踪宏;CPSR:当前程序状态寄存器;SPSR:程序保护状态寄存器;2.MAM
2007-12-06 11:49:00 662
FPGA应用开发入门与典型实例(第二部分)
2010-03-22
High-Speed Digital System Design—A Handbook of Interconnect Theory and Design Practices
2008-11-05
DSP集成开发环境:CCS及DSP_BIOS的原理2
2008-06-24
DSP集成开发环境:CCS及DSP_BIOS的原理1
2008-06-24
【推荐】GNU make中文手册
2008-03-27
基于三星44b0的ucos-II移植代码
2008-03-17
TD-SCDMA基本信令流程1
2011-08-23
跪求linux实时性能统计工具
2016-05-11
TA创建的收藏夹 TA关注的收藏夹
TA关注的人