
嵌入式
文章平均质量分 92
denlee
这个作者很懒,什么都没留下…
展开
-
嵌入式系统 Boot Loader 技术内幕
.code-outline {background-color:#eeeeee; border: 1px solid #ccc; padding: 5px 5px 5px 5px;}.displaycode {margin-top: 0; margin-bottom: 0; font-family: Andale Mono, Lucida Conso转载 2008-03-03 15:30:00 · 612 阅读 · 0 评论 -
arm汇编语言中调用C库函数printf[原]
今天在写一个ARM汇编代码时,本来想在程序中显示字符串信息,结果不成功,开始以为是C库中printf的实现的原因,下午终于解决问题,原来是没有在汇编程序中初始化C库。遇到这个问题时,为了简单起见,我直接用汇编写了一个调用printf函数显示字符串hello的程序,如下: area |hello$code|,code,readonly code32 entry impo原创 2008-05-14 16:38:00 · 7897 阅读 · 3 评论 -
FS2410 开发板上启用 MMU 实现虚拟内存管理[转]
原文链接:http://www.cppblog.com/jb8164/archive/2008/02/01/42345.html 学习 ARM 系列 -- FS2410 开发板上启用 MMU 实现虚拟内存管理一、背景 FS2410 开发板上的 ARM 核心为 ARM920T, ARM920T 代表着什么呢? 其实ARM920T转载 2008-05-19 15:59:00 · 954 阅读 · 0 评论 -
arm-linux连接以及连接脚本
前言:arm linux的连接工具可以使用arm-linux-ld,在进行连接时可以使用-T命令采用脚本控制,如不指明脚本,则使用默认的脚本文件,参见arm-linux-ld的缺省linker script。一. 目标文件格式与类型GNU C compiler根据源文件的后缀名来对文件进行预处理、汇编或编译操作。在编译链接时,生成的目标文件都是ELF格式的(可执行链接格式,Executab原创 2008-05-29 09:50:00 · 1736 阅读 · 0 评论 -
Linux下ARM汇编教程
第一部分 Linux下ARM汇编语法尽管在Linux下使用C或C++编写程序很方便,但汇编源程序用于系统最基本的初始化,如初始化堆栈指针、设置页表、操作ARM的协处理器等。初始化完成后就可以跳转到C代码执行。需要注意的是,GNU的汇编器遵循AT&T的汇编语法,可以从GNU的站点(www.gnu.org)上下载有关规范。一. Linux汇编行结构任何汇编行都是如下结构:[:] [} @ comm原创 2008-06-01 16:24:00 · 19123 阅读 · 2 评论 -
ldr和adr在使用标号表达式作为操作数的区别
ARM汇编有ldr指令以及ldr、adr伪指令,他门都可以将标号表达式作为操作数,下面通过分析一段代码以及对应的反汇编结果来说明它们的区别。 ldr r0, _start adr r0, _start ldr r0, =_start_start: b _start 编译的时候设置 RO 为 0x3原创 2008-05-31 17:26:00 · 3569 阅读 · 1 评论 -
Embest IDE for arm
Embest IDE英文全称是Embest Integrated Development Environment,是深圳市英蓓特信息技术有限公司(www.embedinfo.com)推出的一套应用于嵌入式软件开发的新一代集成开发环境。Embest IDE是一个高度集成的图形界面操作环境,包含编辑器、编译器、汇编器、链接器、调试器等工具,其界面同Microsoft Visual Studio类似原创 2008-06-17 21:26:00 · 6481 阅读 · 5 评论 -
S3C2410的外部中断
S3C2410有24个外部中断引脚:EINT0~EINT23,但是对于EINT0~EINT3这4个外部中断而言,使用比较简单;对于其它20个而言,使用稍稍复杂一些。首先,来看S3C2410的中断控制器,有6个中断裁决器分为2级,第1级5个,第2级1个;第1级的5个裁决器管理32级中断源,在这32级中断源中有2个保留,24级是给内部中断源的,对于24个外部中断只给了6个中断级:EINT0、EIN原创 2008-06-24 15:53:00 · 4271 阅读 · 1 评论 -
J2ME 走向成熟(较早的一篇介绍J2ME平台的文章)
J2ME 走向成熟新的规范预示着 Java 2 平台微型版的迅速增长 级别: 初级Todd Sundsted (todd@etcee.co转载 2009-08-13 18:03:00 · 810 阅读 · 0 评论 -
C51中的函数
在C51中,函数的定义与ANSI C相同,只是C51的函数在函数后面可以根据需要加若干C51的关键字。C51函数定义的格式:[返回值类型] 函数名([形参表]) [函数模式] [reentrant] [inerrupt n] [using n]函数模式:small|compact|large,没有明确指定存储类型的变量、函数参数等数据的默认存储区reentrant:可重入函数i原创 2009-06-12 21:58:00 · 1875 阅读 · 0 评论 -
Java ME SDK 3.0打包的一个变化
Java作为一个编译单元的Java文件,允许包含多个类,但是最多只能有一个public类,并且该类名与Java文件名相同。一般情况下,这个公共类作为主类,而同一文件中的类作为辅助此类的类,往往是联系比较紧密,为维护方便才放到同一文件中。 对于这种情况,原来的JWTK2.52和2.2版本均能正确处理,并且能够将所有这些类的class文件打包到jar文件中。但是Java ME原创 2009-08-17 16:41:00 · 714 阅读 · 0 评论 -
ARM 指令集
给出链接:http://www.bsdmap.com/UNIX_html/ARM/index.htmlE文:http://www.heyrick.co.uk/assembler/index.html转载 2008-05-13 19:27:00 · 709 阅读 · 0 评论 -
ARM/Thumb交互工作[原]
在使用T版本的ARM内核的处理器时,经常要使用ARM/Thum交互工作,总结了一些需要注意的问题:编写汇编被调过程、编译时应该注意的问题、ARM/Thumb间的相互调用。一.编写汇编被调过程如果需要交互工作,则所编写的函数应该遵循ATPCS标准。1.叶函数(函数内不包括函数的调用)使用BX LR返回。2.非叶函数(1)在入口处保护返回地址(lr)以及寄存器(r0-r7,r8-r12(ARM))(2原创 2008-05-14 11:21:00 · 2478 阅读 · 0 评论 -
DENX U-Boot及Linux使用手册
这是嵌入式PowerPC, ARM和MIPS系统中使用DENX U-Boot和Linux的指导手册。文档中描述了如何在嵌入式PowerPC, ARM和MIPS系统上配置、编译、使用Das U-Boot(常常缩写为“U-Boot”)和Linux操作系统。转载 2008-03-04 08:34:00 · 616 阅读 · 0 评论 -
使用Busybox制作CRAMFS文件系统成功[原创]
这几天在使用Busybox制作FS2410开发板的CRAMFS文件系统,由于开始 下载的是Busybox1.10,每次下载到开发板中,然后启动总是出现”Failed to execute /linuxrc. Attempting defaults...“的错误。到网上查了大量的资料,并做了大量的实验,发现都不能成功。今天下午突然发现一个能够仿真arm的软件qemu,在Ubuntu中的安装方法:原创 2008-04-06 02:10:00 · 11068 阅读 · 3 评论 -
BusyBox 简化嵌入式 Linux 系统(转载)
BusyBox 简化嵌入式 Linux 系统 为小环境准备的一个小工具包转载 2008-04-03 08:22:00 · 741 阅读 · 0 评论 -
在FS2410开发板上移植linux2.6.24初步成功[原创]
说是移植,也不太准确,因为linux2.6.24内核已经将s3c2410纳入。在移植的时候只是需要做几个小的改动以及几个注意的地方。一. 前言使用的内核:linux2.6.24,http://www.kernel.org/pub/linux/kernel/v2.6/使用的arm交叉编译工具(4.2.1):http://www.codesourcery.com/gnu_toolchains/arm/原创 2008-04-03 12:20:00 · 1856 阅读 · 0 评论 -
使用Bubybox1.10制作文件系统成功[原创]
前几天编译Busybox1.10使用的交叉编译工具是从http://www.codesourcery.com/gnu_toolchains/arm/download.html下载的arm-none-linux-gnueabi-交叉编译工具,gcc版本是4.2.1,上一篇日志中说到刚开始总是遇到”Failed to execute /linuxrc. Attempting defaults...“原创 2008-04-06 12:54:00 · 1393 阅读 · 0 评论 -
FS2410开发板测试LED的ADS汇编程序代码
今天写了一下这个代码: ;控制4个LED的亮灭;寄存器地址rGPFCON equ 0x56000050rGPFDAT equ 0x56000054rGPFUP equ 0x56000058;常量定义ledONDATA equ 0xfffffeffledOFFDATA equ 0xf0delayCOUNT equ 0x2ffff;LED个数numLED eq原创 2008-04-09 22:09:00 · 1129 阅读 · 0 评论 -
ARM汇编指令集[转]
一、 跳转指令 跳转指令用于实现程序流程的跳转,在ARM程序中有两种方法可以实现程序流程的跳转:Ⅰ.使用专门的跳转指令。Ⅱ.直接向程序计数器PC写入跳转地址值。通过向程序计数器PC写入跳转地址值,可以实现在4GB的地址空间中的任意跳转,在跳转之前结合使用MOV LR,PC等类似指令,可以保存将来的返回地址值,从而实现在4GB连续的线性地址空间的子程序调用。 ARM指令集中的跳转指令可以转载 2008-04-10 10:05:00 · 2426 阅读 · 1 评论 -
ARM 开发软件及实用工具介绍
一、编译器介绍 1、ADS1.2 ADS是ARM公司的集成开发环境软件,他的功能非常强大。他的前身是SDT,SDT是ARM公司几年前的开发环境软件,目前SDT早已经不再升级。ADS包括了四个模块分别是:SIMULATOR;C 编译器;实时调试器;应用函数库。 ADS的编译器调试器较SDT都有了非常大的改观, ADS1.2提供完整的WINDOWS界面开发环境。C编译器效率极高,支持c转载 2008-04-24 15:27:00 · 1492 阅读 · 0 评论 -
FS2410开发板的测试键盘的ADS汇编代码[原]
;汇编指令实验;键盘扫描; 4X4 矩阵键盘;四个输入引脚: EINT0 -----( GPF0 )----INPUT; EINT2 -----( GPF2 )----INPUT; EINT11-----( GPG3 )----INPUT; EINT19-----( GPG11 )----I原创 2008-05-06 09:24:00 · 805 阅读 · 0 评论 -
ARM 过程调用标准[转]
原文链接:http://www.bsdmap.com/UNIX_html/ARM/apcsintro.html APCS 简介 (ARM 过程调用标准) 介绍 寄存器转载 2008-05-13 19:24:00 · 851 阅读 · 0 评论 -
SystemC 数据类型
SystemC 数据类型的学习笔记原创 2010-06-22 16:51:00 · 4621 阅读 · 0 评论