一线研发之声之软硬交互“自学习匹配”的秘密
1. 一个IO,三态法! 通常的做法是,一个IO,上拉电阻,下拉电阻,就识别两种机型。 问题是,如果生产是电阻漏上怎么办? 所以软件的识别写法要利用mcu的IO机制,利用上下拉输入各读几次交叉验证。 这个时候,你突然发现,这种机制可以...
一线研发之声:嵌入式C编程经验之只有一条清狗语句
/***************************************************************************** Filename: 一线研发之声:嵌入式C编程经验 之 只有一条清狗语句* Author:SedateFire* Version:1.001* key: 看门狗 系统架构 os-less ...
一线研发之声:嵌入式C编程经验之请写可移植性高的模块
/*********************************************************************Filename:一线研发之声:嵌入式C编程经验 之 请写可移植性高的模块* Author:SedateFire * Version:1.000* key: 嵌入式 可移植性 模块化 依赖**...
一线研发之声:嵌入式C编程经验之全局变量猛于虎
/*****************************************************************************Filename: 一线研发之声:嵌入式C编程经验 之 全局变量猛于虎* Author:SedateFire* Version:1.001 * key: 嵌入式 os-less ...
一线研发之声:嵌入式C编程经验之函数指针
/***************************************************************************** Filename: 一线研发之声:嵌入式C编程经验 之 函数指针* Author:SedateFire* Version:1.0 * key: 嵌入式 函数指针 回调函数**********...
一线研发之声之跑马灯变形记(三)
上述代码中,定时器的延时存在两个问题。(1) 延时程序精度不高。在不同mcu和不同的外部晶振,这个函数都需要修改。当这个系统开启了更多的中断时,这个函数精度受到的影响就是随机性的。(2) while+for的延时方法,属于一种&l...
一线研发之声之跑马灯变形记(一)
跑马灯实验:将一排led灯按一定的时序循环点亮。说到它,相信许多人都要会心一笑。跑马灯实验和PC机软件领域的“hello world”同属于骨灰级的入门实验。几乎所有嵌入式领域初学者都从这个实验开始,满怀激动地踏...
一线研发之声之跑马灯变形记(二)
1) 先从类型重定义说起,“#define uchar unsigned char”这样的语句,其意义恐仅是为了减少敲写“unsigned char”的时间,偷懒之举罢了。类型重定义用意何其深远,区区“define”是万万授受...
在嵌入式工程中处理汇编语言的技巧
理解系统的CPU体系学习系统CPU文档。深入研究特别是指令和功能,比如硬件回路,位操作,缓冲转移,条件性执行,循环跳跃指令,以及非通用的体系操作。查看地址模型。确认你一定知道ALU标志(零,进位,溢出等)以及它们如何被CPU体系所...
嵌入式软件的测试方法和工具
通常嵌入式系统对可靠性的要求比较高。嵌入式系统安全性的失效可能会导致灾难性的后果,即使是非安全性系统,由于大批量生产也会导致严重的经济损失。这就要求对嵌入式系统,包括嵌入式软件进行严格的测试、确认和验证。随...
虚拟化数据中心的实现
谈到虚拟化数据中心,就离不开服务器虚拟化以及虚拟化SAN存储,服务器虚拟化和虚拟化SAN存储是通向虚拟化数据中心的必经之路。对企业而言,服务器虚拟化提供了一些重要的优势,但要认识到它的所有好处,企业必须克服存储面临的...
一首让程序猿们疯狂起来的小诗
年少不经事,埋头编程忙。指键铿锵落,不及细思量。bug千百个,comment无一行。休言敏捷易,做来断人肠。下面是这些程序猿回复的!程序猿1: 无数假期渺茫茫,夜三更,bug调出千百行;香烟一半,犹如饥渴似疯狂。抬起头颅,细数窗前星光,人...
Linux系统中硬链接与软链接的区别
Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。【硬连接】硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型...
关于linux中的shell的使用技巧
在linux开发学习中,总结了关于linux中的shell的使用技巧,大家可以参考一下啊列出正在使用网络的进程lsof -P -i -n | cut -f 1 -d “ ”| uniq | tail -n +2 用下面的命令找出僵死进程ps -A -o stat,ppid,p...
详解JAVA和C++的区别
1)java是解释性语言,java程序在运行时类加载器从类路经中加载相关的类,然后java虚拟机读取该类文件的字节,执行相应操作。而C++编译的 时候将程序编译成本地机器码。一般来说java程序执行速度要比C++慢10-30倍。即使采用j...
ISP技术及分类介绍
一种无需将存储芯片(如EPROM)从嵌入式设备上取出就能对其进行编程的过程,缩略为ISP。在系统编程需要在目标板上有额外的电路完成编程任务。其优点是,即使器件焊接在电路板上,仍可对其(重新)进行编程。在线系统可编程是Fl...
在Allegro环境下运行SKILL的方法
1、如何在PCB Editor 环境下启动SKILL 命令行解释器界面?直接输入settelskill,然后你就会看到一个新的界面,这个界面就是用来运行SKILL 函数和命令的解释器。当然,如果你不觉得界面太小,可以直接在命令行中输入skill ,然后...
如何解决Saber中收敛性问题
saber仿真中遇到最多,最复杂的一个问题--不收敛.这是对我们初学者最大的困难.今天又遇到,做DC分析出现如下错误: *** ERROR \"ALG_SINGULAR_JACOBIAN\" *** Singular Jacobian matrix. Some possible causes for ...
嵌入式LINUX中的JVM研究
入口条件:被除数在R2、R3、R4、R5中,除数在R6、R7中。出口信息:OV=0时商在R2、R3中,OV=1时溢出。影响资源:PSW、A、B、R1~R7 堆栈需求: 5字节DIVS: LCALL MDSPUSH PSWLCALL DIVDJNB OV,DVS1POP ACCRETDVS1: POP PSWMOV R4,#0M...
Linux和开源软件的优势体现
Linux和开源软件最大的优势是开放型的开发模式(即开源社区开发模式),全球有二百多万个志愿者投入了Linux和开源软件的开发工作(其中包括 IBM、 Intel、Google、Red Hat、Novell等很多IT跨国公司的资深学者和工程师作为...
嵌入式系统程序/数据加密保护新方法-ESAM
在嵌入式系统中,如果使用MCU/ARM+EPLD硬件结构,程序、数据加密很简单,因为目前大部分MCU/ARM都自带加密保护功能,所有EPLD也有加密保护。虽然有些能够破解,但需专业公司来做,代价敖贵。但是,在使用DSP+FPGA的系统中,由于目前...
eil MDK 和 IAR 两款ARM开发工具区别比较
一、概述Keil MDK-ARM(旧称RealView MDK)开发工具源自德国Keil公司,被全球上百万的嵌入式开发工程师验证和使用,是ARM公司目前最新推出的针对各种嵌入式处理器的软件开发工具。KEIL MDK集成了业内最领先的技术,包括uVision...
Tiny6410使用mkubimage-mlc2时出现的问题及解决方法
使用的虚拟机:Fedora9使用mkubimage-mlc2制作文件系统时,出现以下提示:mkubimage-mlc2: error while loading shared libraries: liblzo2.so.2: cannot open shared object file: No such file or directory解决方法:在虚...
线性表的抽象定义及使用
ADT 线性表 (List)Data线性表的数据对象集合为{a1,a2,.....an},每个元素的类型均为DataType,其中,除第一个元素a1外,每一个元素只有一个直接前驱元素,除了最后一个元素外,每个元素都有一个后继元素。数据之间的关系是一对...
嵌入式 Linux 开发大致涉及三个层次
嵌入式 Linux 开发大致涉及三个层次:引导装载程序、Linux 内核和图形用户界面。在本文中,我们将集中讨论涉及这三层的一些基本概念;深入了解引导装载程序、内核和文件系统是如何交互的;并将研究可用于文件系统、GUI 和引...
matlab的存储空间
matlab的存储分为:(1)变量存储(2)函数存储(1)基本工作空间,(base)脚本文件(没有输入输出参数、不带function关键字、有一系列命令语句组成的M文件)或命令行创建的变量都存储在基本工作空间。(2)函数空间,函数不使用基本工作空间,每个...
关于Linux上两种rootkits检测工具
RootkitHunter中文名叫”Rootkit猎手”, 可以发现大约58个已知的rootkits和一些嗅探器和后门程序.它通过执行一系列的脚本来确认你的机器是否已经感染rootkits. 比如检查rootkits使用的基本文件, 可执行二...
关于FreeD升级和优化详解
本文假设已经架设好或者新安装了一台FREEBSD系统主机。本文中引用了很多FREEBSD官方站数据及网上数据,还有更多的是自己在实际工作中的经验,当然,里面的参数并不一定完全适合您,所以请您在使用时,尽可能根据您的实际需要调...
Yocto Project为嵌入式Linux提供全面的开发解决方案
项目站点提供了全面的文档, 构建系统( 基于OpenEmbedded 架构)、交叉构建工具、通用的打包系统和一个应用程序开发人员 SDK。Yocto Project 提供的核心组件包括:Y x-Architecture。Yocto Project 扩展了构建系统的功能,...
邻频干扰邻区与无干扰邻区有什么明确的差异?
邻频干扰邻区与无干扰邻区有什么明确的差异?1、 若两个非共站点小区的CA有重合频点,那么两小区互为“同频干扰邻区";2、 若两个非共站点小区的CA有相邻频点,那么两小区互为“邻频干扰邻区”;3、 若两个非...
基于Linux的视频点播系统的实现
一、Darwin简介Darwin流服务器是苹果公司QuickTime流服务器的opensource版本,是完全基于QuickTime流服务器代码开发的,其实现了一种在网络上传播QuickTime流的机制。Darwin具有以下一些特点:1.具有web管理接口;2.开放源代码...
Linux网络管理常用命令示例
传统的在1——3点,ip高级路由命令在4——12点,两者部分可以通用,并达到同样的目的,但ip的功能更强大,可以实现更多的配置目的。首先,先了解传统的网络配置命令:1. 使用ifconfig命令配置并查看网络接口情...
简单介绍几种常见开发板处理器的分类知识
开发板处理器的分类有以下几个方面(单片机开发板):1.单片机:1)51系列单片机51 单片机目前已有多种型号, 8031/8051/8751是Intel公司早期的产品,而 ATMEL 公司的AT89C51、AT89S52则更实用。ATMEL公司的51系列还有AT89C2051...
嵌入式多媒体应用中的片上存储器分配
随着CPU速度的迅速提高,CPU与片外存储器的速度差异越来越大,匹配CPU与外部存储器的方法通常是采用Cache或者片上存储器。微处理器中片上存储器结构通常包含指令Cache ,数据Cache 或者片上存储器。对于嵌入式设备上的数据...
存储虚拟化设备和存储控制器虚拟化
基于交换机的虚拟化给SAN网络带来了很多好处。由于基于交换机的虚拟化引擎是带外的(在数据路径之外),也就不需要服务器代理,而且它是所有虚拟化架构中最具扩展性、性能最好的。存储虚拟化通过将一个(或多个)目标(Target)服务...
构建嵌入式Linux系统
在精简内核在编译内核之前,首先要明确需要那些驱动和模块,然后只选择需要的驱动和模块,例如,如果系统不需要网络支持,则可以去掉网络模块。内核一般是以压缩方式存放的,在系统启动时会自行解压。内核都是常驻内存的,当需要调...
嵌入式系统的基本认知
最土的理解,顾名思义,代码嵌入到MCU内核 我找个篇文章,还没仔细看,先发上来嵌入式系统一般指非PC系统,它包括硬件和软件两部分。硬件包括处理器/微处理器、存储器及外设器件和I/O端口、图形控制器等。软件部分包括操作系统软...
嵌入式实时多任务操作系统
相信了解嵌入式系统的人都知道,嵌入式系统是指操作系统和功能软件集成于计算机硬件系统之中。简单的说就是系统的应用软件与系统的硬件一体化,类似与BIOS的工作方式,具有软件代码小,高度自动化,响应速度快等特点。他与传统...
嵌入式设计需要优先注意功耗问题
随着科学的发展和微电子技术的不断创新嵌入式系统的应用越来越多,并已广泛渗透到各个领域。嵌入式系统是以应用为中心,以电子技术和计算机技术为基础,软硬件可剪裁,能适应应用系统对功能、可靠性、稳定性、成本、体积、功...
与一线Linux嵌入式开发工程师的对话
陈工程师一直做Linux的嵌入式开发,作为在开发一线的工程师,他对很多问题的看法可能更切合实际需求,于是,通过邮件,就嵌入式开发方面的问题,请他谈了一下自己的看法:问:关于嵌入式开发,我们准备给同学们讲解一些入门知识,从你一...
嵌入式系统的应用软件GUI相关情况解析方案
1 GUI 的概述GUI以一种以图形化为基础的用户界面,使用统一的图形操作系统,如可移动的视窗、选项与鼠标,作为用户与操作系统之间的中介。GUI最重要的优势在于使用户摆脱了在命令行提示符下与操作系统进行交互的方式,用户可...
嵌入式系统硬件原理设计与审核
1)详细理解设计需求,从需求中整理出电路功能模块和性能指标要求。 2)根据功能和性能需求制定总体设计方案,对CPU进行选型,CPU选型有以下几点要求: a)性价比高; b)容易开发:体现在硬件调试工具种类多,参考设计多,软件资源丰富,成功...
嵌入式硬件开发的流程
简单地总结一下硬件开发的基本过程: 1、明确硬件总体需求情况,如CPU处理能力、存储容量及速度、I/O端口的分配、接口要求、电平要求、特殊电路要求等等。 2、根据需求分析制定硬件总体方案,寻求关键器件及相关技术资料、...
构建嵌入式linux系统步骤
l开发环境的建立由于系统资源有限,所以很难在嵌入式系统的硬件平台上进行软件开发。通常解决的方法是在通用计算机上编好程序,通过交叉编译生成可在目标板运行的2#代码,然后下载到目标板的特定位置运行。需要交叉编译环...
Linux三种文件系统安装与卸载
第一部分:.tar.gz文件1.首先,使用tar -xzvf来解开这个包,如:#tar -xzvf apache_1_3_6_tar.gz这样就会在当前目录中创建了一个新目录(目录名与.tat.gz包的文件名类似),用来存放解压了的内容。如本例中就是apache_1.3.62.进入...
嵌入式软件的层次设计
对于ISO网络模型,大家一定不陌生。在实际网络应用中,使用的是网络四层,但结构是相识的。现就借用这个协议来进行四层或三层来进行嵌入式软件设计。下面提供两种软件分层设计方法:第一种方法,四层,面结构第一层物理层从主芯...
嵌入式设计降低硬件功耗四法
(1)低功耗外围器件的选用完成同样的功能,电路的实现形式有多种。例如,尽可能地将嵌入式系统的内部存储器RAM转换为外部的闪存FLASH,因为在同样条件下,读内部RAM比读外部FLASH会带来更大的功耗。也可以利用分立元件、小规模...
UC/OS和uClinux的比较
嵌入式系统是以嵌入式计算机为核心,面向用户、面向产品、面向应用,软硬件可裁减的,适用于对功能、可靠性、体积、成本、功耗等综合性能有严格要求的计算机系统。随着嵌入式系统的广泛应用,传统的前/后台程序开发机制已经...
C语言高效编程的的四招技巧
第一招:以空间换时间计算机程序中最大的矛盾是空间和时间的矛盾,那么,从这个角度出发逆向思维来考虑程序的效率问题,我们就有了解决问题的第1招--以空间换时间。例如:字符串的赋值。方法a:通常的办法:#define len 32char str...
STEC2000嵌入式控制器介绍
STEC2000嵌入式控制器是基于实时嵌入式LINUX操作系统和32位高速MCU,高度集成控制、远程采集、故障上传、存储和人机界面功能,具有强大通讯能力的多功能通用控制器。“多功能”“高度集成”“...
关于嵌入式处理器与硬件
由于各种新型微处理器的出现和应用的不断深化,嵌入式系统在后PC时代得到了空前的发展。随着时间的推移和技术的进步,在工业控制和新兴的手持式应用等领域,用户体验成为产品成功的关键因素之一,越来越多的产品需要良好的用...
嵌入式Linux软件数据参数存储的方法
一 以二进制数据保存参数。以二进制形式保存参数是很是常见的一种方案,也是很多项目组用于保存参数的一种方案。以我们现有的软件平台中的方案为例吧。我们的软件平台基于嵌入式linux,flash芯片容量是16M,flash 芯片被分为了五...
嵌入式设计应具备的基本技能
1、Linux基础安装Linux操作系统Linux文件系统Linux常用命令Linux启动过程详解熟悉Linux服务能够独立安装Linux操作系统能够熟练使用Linux系统的基本命令认识Linux系统的常用服务安装Linux操作系统Linux基本命令实践设...
嵌入式Linux的应用介绍
随着Internet的飞速发展,网络应用越来越广泛,对各种工业控制设备的网络功能要求也越来越高。当前的要求是希望工业控制设备能够支持TCP/IP以及其它Internet协议,从而能够通过用户熟悉的浏览器查看设备状态、设置设备参数...
解析嵌入式系统开发的要点
嵌入式系统开发包括这几个方面:硬件,底层软件,应用软件。在这几个方面里,硬件和底层软件结合比较紧密,底层软件和应用软件又交互影响,所以嵌入式系统的硬件和软件结合比较紧密。公司一般也不会硬件人员、底层软件人员和应用...
嵌入式linux系统下PCI驱动程序实现
1. 关键数据结构PCI设备上有三种地址空间:PCI的I/O空间、PCI的存储空间和PCI的配置空间。CPU可以访问PCI设备上的所有地址空间,其中I/O空间和存储空间提供给设备驱动程序使用,而配置空间则由Linux内核中的PCI初始化代码...
Linux系统学习的11点建议
随着Linux应用的扩展许多朋友开始接触Linux,根据学习Windwos的经验往往有一些茫然的感觉:不知从何处开始学起。这里介绍学习Linux的一些建议。一、从基础开始:常常有些朋友在Linux论坛问一些问题,不过,其中大多数的问题都...
嵌入式学习步骤及方法(精典)
嵌入式门槛虽然较高,但也跟其他事物一样,并不是牢不可破。只要我们用心去对待,冬雪终将化去,春风定会吹来。具体步骤如下:1、《C语言》第二版 谭浩强 ; 《C程序设计语言》第二版 徐宝文译 机械工业出版社你能区分开指针数组...
嵌入式学习心得-必看
前 言网上看到众多网友都问了关于嵌入式系统方面的很多问题,很多都可在这里找到答案,希望我的这篇文章能给他们以启发。也请大家不要轻易转载。一、嵌入式系统的概念着重理解“嵌入”的概念主要从三个方面上...
教你从哪方面学习嵌入式
1、《ARM嵌入式系统基础教程》周立功2、《ARM体系结构与编程》杜春雷3、 具体芯片的datasheet——引起重视,相当重要4、《嵌入式实时操作系统uCOS-II》邵贝贝5、《嵌入式linux应用开发完全手册》韦东山6、《...
嵌入式linux系统组成
小型嵌入式linux系统组成:。引导工具。linux微内核。初始化进程 //第一级别。硬件驱动程序。相关应用软件 //第二级别。文件系统(在ROM RO RAM)。TCP/IP协议栈 //第三级别嵌入式系统硬件嵌入式系统是面向用户,面向产品,面...
linux程序编译的错误问题
出现这种情况:1 ) no newline at end of the file!一般要在程序出现的错误一行加上一个"回车"就OK!(GCC中)以前在51中一般是不会有这种问题出现的!2 )还有一个是Linvale 左值问题!在3.4.1交叉编译器中,一般开始我们...
Linux混杂设备驱动(watchdog)
如果一个字符设备驱动要驱动多个设备,那么它就不应该用misc设备来实现。通常情况下,一个字符设备都不得不在初始化的过程中进行下面的步骤:通过alloc_chrdev_region()分配主/次设备号。使用cdev_init()和cdev_add()来以...
arm-elf与arm-linux的区别
在基于ARM的嵌入式系统开发中,常常用到交叉编译的GCC工具链有两种:arm-linux-*和arm-elf-*,两者区别主要在于使用不同的C库文件。arm-linux-*使用GNU的Glibc,而arm-elf-*一般使用uClibc/uC-libc或者使用REDHAT专门为嵌入...
建立ARM交叉编译环境
过程预览:1,准备工作,包括下载源码包、补丁、建立文件夹和设置环境变量等2,建立内核头文件3,建立binutils4,建立bootstrap gcc5,建立glibc6,建立完整版本gcc7,测试hello world现在就让我们开始吧!1 准备工作我使用的源码包和补...
基于arm+uClinux的嵌入式系统的开发
按照我的开发过程想分以下几部分逐一介绍。1.开发平台的选择和论证2.开发环境的建立3.一般程序的开发4.Linux程序向ARM+uClinux平台的移植5.剩下的问题希望诸位多多补充自己的想法,以利于大家共同提高。1. 开发平台的选择和...
嵌入式软件开发之我见
先大致说一说我的工作经历。97年毕业后做了两年的电气与电子设计与开发,这一时期,我做过电路原理图的设计和PCB板的设计。从99年开始,我进入了软件行业。第一次做嵌入式开发是在2000年,在随后的六年多的时间里,我差不多做...
嵌入式处理器分类与现状
嵌入式系统的核心部件是各种类型的嵌入式处理器,目前据不完全统计,全世界嵌入式处理器的品种总量已经超过1000多种,流行体系结构有30几个系列,其中8051体系的占有多半。生产8051单片机的半导体厂家有20多个,共350多种衍生...
Linux 的启动过程
一.BootLoader 功能简单描述,屏蔽所有中断,初始化GPIO,初始化SDRAM,拷贝BootLoader到SDRAM中,加载内核映像文件,跳转到C程序,初始化串口,初始化以太网,等待外部输入,无外部输入,跳转到内核入口处。有外部输入,进入BootLoader模式,进...
μC/OS-II应用的简单剖析
一. uC/OS-II的移植移植uC/OS对目标处理器有一定要求,这个可以参照一书中第8章的内容.整个嵌入式系统分为两大层:硬件层和软件层.这里主要研究软件层的架构.软件层主要分为四个部分:实时操作系统内核,与处理器相关部...
高可靠性嵌入式系统固件设计策略
本文针对如何编写易理解、易维护的优秀代码进行了讨论,为程序员提供了一些非常实用的编程指导。文中指出,函数功能应该最小化,代码封装便于程序维护,消除冗余能够提高程序的可靠性,适当的重构能够降低维护过程中程序熵增大...
μC/OS-II在C8051F上的移植
在嵌入式应用中,使用RTOS的最主要原因是提高系统的可靠性,其次是提高开发效率、缩短开发周期。μC/OS-II 是一个基于优先级的抢占式实时内核,支持56 个用户任务,90%的代码使用标准的ANSI C语言书写,程序可读性强,移植性好...
工业嵌入式PC的选择
x86体系结构在办公和膝上电脑领域意想不到的成功导致了性价比戏剧性地提升,以及功耗降低和体积减小。对许多工业应用来说,一个基于PC的解决方案是最容易实现的方法之一。嵌入式PC的普及基于用户能购买到现成的硬件同时...
嵌入式操作系统介绍及选型原则
一、嵌入式操作系统的发展作为嵌入式系统(包括硬、软件系统)极为重要的组成部分的嵌入式操作系统,通常包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图形界面、标准化浏览器等。嵌入式操作系统具有...
嵌入式软件发展的十个观点
观点一:嵌入式软件产业发展迅猛,已成为软件体系的重要组成部分。嵌入式系统产品正不断渗透各个行业,嵌入式软件作为包含在这些硬件产品中的特殊软件形态,其产业增幅不断加大,而且在整个软件产业的比重日趋提高。2003年全球...
开源嵌入式数据库Bericel ey DB和SQLite的比较
1嵌入式数据库通常,我们采用数据库来实现对数据的存储、检索等功能。像MySQL这类基于C/S结构的关系型数据库系统,虽然代表着目前数据库应用的主流,却并不能满足所有应用场合的需要。很多的应用,仅仅利用到了这些数据库产品...
嵌入式uclinux简介
简介Linux是一种很受欢迎的操作系统,它与UNIX系统兼容,开放源代码。它原本被设计为桌面系统,现在广泛应用于服务器领域。而更大的影响在于它正逐渐的应用于嵌入式设备。uClinux正是在这种氛围下产生的。在uClinux这个英...
Linux嵌入式实时操作系统开发与设计
概述伴随着科技不断的日新月异推陈出新。信息家电,手持设备,无线设备等个性化设备的出现,相应的硬件和软件的迅速发展。许多设备都配有Intel, MIPS,摩托罗拉等公司生产的32位微处理器。许多开发商也开始为这些设备提供嵌入...
CRC算法原理与实现代码
CRC算法原理与实现代码CRC 代数学的一般性算法在代数编码理论中,将一个码组表示为一个多项式,码组中各码元当作多项式的系数。例如 1100101 表示为1·x6+1·x5+0·x4+0·x3+1·x2+0&midd...
如何在嵌入式LINUX中增加自己的设备驱动程序
驱动程序的使用可以按照两种方式编译,一种是静态编译进内核,另一种是编译成模块以供动态加载。由于uClinux不支持模块动态加载,而且嵌入式LINUX不能够象桌面LINUX那样灵活的使用insmod/rmmod加载卸载设备驱动程序,因而这...
MPlayer在嵌入式开发系统中的应用
引 言嵌入式系统是以应用为中心、以计算机技术为基础,软件硬件可裁剪,适应于应用系统的功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。我们将MPlayer移植到嵌入式系统中,是因为MPlayer播放器是Linux下最优秀...
linux中的patch的应用
补丁Patch是天才程序员、Perl的发明者Larry Wall发明的,它应高效地交流程序源代码之需求而生,随着以Linux为代表的开发源代码运行的蓬勃发展,patch这个概念已经成为开放源代码发起者、贡献者和参与者的集体无意识的一部...
在单片机中嵌入操作系统的利弊
在单片机中嵌入操作系统的利弊早在20世纪60年代,就已经有人开始研究和开发嵌入式操作系统。但直到最近,它才在国内被越来越多的提及,在通信、电子、自动化等需要实时处理的领域所日益显现的重要性吸引了人们越来越多的注...
嵌入式linux文件系统分析
嵌入式系统与通用PC机不同,一般没有硬盘这样的存储设备而使用flash闪存芯片,小型闪存等专为嵌入式系统设计的存储装置。根据不同目录存放的内容不同及文件属性,确定使用何种文件系统。构建嵌入式linux文件系统2关键点:文...
linux网卡驱动的关键就是处理两个问题
linux网卡驱动的关键就是处理两个问题1。如何发送数据也就是ndev->hard_start_xmit 函数的实现啦。从上层扔下来的sk_buff中拿到数据,放到网卡的缓冲区里面。2。如何接收数据数据的接收是不用提供驱动接口的。目前多采...
嵌入式根文件系统里tftpd服务器的移植和架设
有一个项目,使用ramdisk和jffs2混合根文件系统,偶尔需要跟新机器的个别应用,但是不想重新烧写根文件系统,于是想在arm linux里架设一个tftpd服务器,使用windows机器传应用程序到arm linux机器上,本应该是一个很简单的事情,但...
Linux操作系统下GRUB引导过程及原理
GRUB是一个多重启动管理器。GRUB是GRand Unified Bootloader的缩写,它可以在多个操作系统共存时选择启动哪个系统。它可以启动的操作系统包括Linux, FreeBSD, Solaris, NetBSD, BeOS, OS/2, Windows95/98 /NT /2000。...
32位嵌入式开发的发展和动向分析
2003 年我国嵌入式系统应用产品经济总量达1000亿元,其中嵌入式处理器芯片约为100亿。2004年我国嵌入式微处理器销售总量约为10.2亿片,4位 MCU占2.6亿片、8位约占6.6亿片,32位MPU占0.75亿片。另外,据有关机构预测分析,今年...
嵌入式Linux下彩色LCD驱动的设计与实现
长期以来,在常见的掌上电脑(PDA)等小型手持式设备上,由于硬件条件等的限制,我们看到的显示器件通常是单色LCD,用户界面也非常简单,几乎看不到PC机上美观整齐的图形界面(GUI)支持。由于早期嵌入式处理器的速度有限,在处理图形和...
Linux中应用程序和内核模块的区别
应用程序是从头到尾执行单个任务;模块却只是预先注册自己以便服务于将来的某个请求,其中,函数init_module(模块的入口)的任务是为以后调用模块函数预先做准备,函数cleanup_module(模块的第二入口)是在模块卸载时调用。应用程...
RFID系统的频率特点及主要应用领域
对一个RFID系统来说,它的频段概念是指读写器通过天线发送、接收并识读的标签信号频率范围。从应用概念来说,射频标签的工作频率也就是射频识别系统的工作频率,直接决定系统应用的各方面特性。在RFID系统中,系统工作就像我...
Epon的传输模式及性能评估
1.传输模式IEEE802.3标准定义了以太网的两种基本操作模式:一种模式采用载波侦听多址接入/冲突检测(CSMA/CD)协议而应用在共享媒质中,另一种模式采用全双工的点到点链路通过交换机连接到一起。EPON的下行传输的行为特征与...
Linux 内核的定制、安装
Linux内核是Ubuntu操作系统的心脏。Ubuntu自带的内核通常包含你所需要的所有驱动程序,但有时你希望调整你的内核或如果由于某些特别原因你需要重新编译,本手册将帮助你。象这个不太详尽的文档事实上可以在KernelCompile...
编译Linux操作系统内核的步骤
很多朋友一听到说编译内核,就觉得很高深莫测,非常头大。其实,通常其它操作系统的内核编译是比较繁琐的。然而,由于Debian强大的dpkg软件包管理系统,使得内核的升级、编译也变得容易很多。如果下面的步骤都注意并执行了,编译...
关于Linux下AT91SAM9261的RS485驱动
AT91SAM9261和ATMEL其它型号的ARM处理器使用高度相似的USART外设,因而驱动程序也具有高度的相似性,而且USART硬件支持485模式,用RTS信号作为485的收发控制。在使用中,只要将其置为485模式,其余的操作和普通的232操作一模一...
嵌入式系统的知识体系、学习误区及学习建议
1嵌入式系统的知识体系嵌入式系统的应用范围可以粗略分为两大类:电子系统的智能化(工业控制、现代农业、家用电器、汽车电子、测控系统、数据采集等),计算机应用的延伸(MP3、手机、通信、网络、计算机外围设备等)。从这些应...
嵌入式系统C语言编程修炼之软件架构
模块划分的论述:模块划分中的"划"是规划之意,意思是怎样合理的将一个很大的软件划分为一系列功能独立的部分合作完成系统的需求。嵌入式C语言作为一种结构化的程序设计语言,在模块的划分上主要依据功能(依功能进行划分...
ARM ADS集成开发环境的使用
8.1ADS集成开发环境组成介绍ARM ADS全称为ARM Developer Suite。是ARM公司推出的新一代ARM集成开发工具。现在ADS的最新版本是1.2,它取代了早期的ADS1.1和ADS1.0。它除了可以安装在Windows NT4,Windows 2000,Windows 98...
很不错的linux学习笔记
linux目录架构/ 根目录/bin常用的命令binary file的目錄/boot存放系统启动时必须读取的档案,包括核心(kernel)在内 /boot/grub/menu.lst GRUB设置 /boot/vmlinuz内核 /boot/initrd核心解壓縮所需RAM Disk/dev系统周边...
VB 的十进制,八进制,十六进制,二进制相互转换大全
用途:将十进制转化为二进制输入:Dec(十进制数)输入数据类型:Long输出:DEC_to_BIN(二进制数)输出数据类型:String输入的最大数为2147483647,输出最大数为1111111111111111111111111111111(31个1)Public DEC_to_BIN(Dec As L...