嵌入式基础知识
文章平均质量分 64
dragonliabc
这个作者很懒,什么都没留下…
展开
-
GPIO基本概念
GPIO (通用输入/输出)或总线扩展器利用工业标准接口简化了I/O口的扩展。当微控制器或芯片组没有足够的I/O端口,或当系统需要采用远端串行通信或控制时,GPIO产品能够提供额外的控制和监视功能。 每个GPIO端口可通过软件分别配置成输入或输出。Maxim的GPIO产品线包括8端口至28端口的GPIO,提供推挽式输出或漏极开路输出。提供微型3mm x 3mm QFN封装。转载 2010-03-23 17:54:00 · 516 阅读 · 0 评论 -
Windows CE下操作GPIO的方法(以ARM9 S3C2410为例)
GPIO 是ARM芯片最基本的输入输出通道,在ADS下操作就是一个单片机工作,直接读写其寄存器。在ARM9平台上,Windows CE系统将GPIO的实地址(例如2410的GPIO的基地址为0x56000000)映射到虚拟地址空间(GPIO对应为0xB1600000),这 样,通过对这段虚拟地址空间的操作,就能够完成对GPIO或者其他片内资源的控制、输入输出工作。要操作一个平台的GPIO,在其对应转载 2010-04-28 02:01:00 · 407 阅读 · 0 评论 -
CE6下的kernelIoControl可不是谁都可以调的
这个可能很多人曾经知道,但是老是忘记,比如我,哈哈。kerneliocontrol以前在CE5下面耍惯了,用这个接口,AP简直可以无法无天啊,动不动就reset你,哼!who怕who(AP不要kernelicontrol还是可以无法无天,fullkernel啊,哈哈)最近加了一个CE6下的kerneliocontrol,这种事情不晓得做过多少啦,所以信手拈来。1.加IOCTL的code原创 2010-04-28 04:14:00 · 544 阅读 · 0 评论 -
CE6下的物理内存以及虚拟内存的结构分布
刚才看了Programming Windows CE 3rd 这本书的wince内存结构部分。发现为什么wince 5.0 只能支持最大内存是 512M了是wince5.0 设计的时候限定了。物理内存支持的是512M,但真正作为RAM使用的还没有512M。因为在4G空间的映射表里面,只有0x80000000~0x9fffffff是作为内存地址映射,这个范围是512M,这就是内存地址映射的限制,原创 2010-04-28 04:15:00 · 359 阅读 · 0 评论 -
Windows CE的存储与地址映射技术学习
Windows CE采用了四层内存管理结构,从下到上依次为:物理内存,虚拟内存,逻辑内存和C/C++运行时库.其中物理内存包括:RAM(为OS和程序提供运行和缓冲空间),ROM(存储程序,包括OS和一些文件),Flash(可擦写).CE支持最大物理内存为512M. 所有进程共享4G的虚拟存储空间,它是通过以页为单位管理的,不同处理器支持页大小不同(ARM支持1K,4K,64K,1M;X86支持4原创 2010-04-28 16:48:00 · 254 阅读 · 0 评论 -
RTC的驱动开发
<br /> (内容摘要:RTC就是实时时钟(real time clock)。目前大部分32bit处理器都自带RTC模块,也有外接RTC模块的。一般外接的RTC都是通过I2C总线来访问。)<br /> 刚刚在WinCE6.0下开发了RTC的驱动,在这里介绍一下。<br /> RTC就是实时时钟(real time clock)。目前大部分32bit处理器都自带RTC模块,也有外接RTC模块的。一般外接的RTC都是通过I2C总线来访问。如果CPU本身自带RTC,那通过读取内部寄存器就能转载 2010-06-07 07:16:00 · 360 阅读 · 0 评论 -
WinCE 应用程序开机自动运行的又一种方法
<br /> 近日在开发过程中遇到WinCE应用程序开机自动运行的问题,在网上找了找,发现大概有以下三种方法:<br /> 1、 将应用程序和应用程序快捷方式添加到映像里,再将快捷方式添加到StartUp目录下,这样当系统运行后应用程序就能自动运行;<br /> 2、 直接替换Wince的SHELL,即修改注册表:<br /> [HKEY_LOCAL_MACHINEinit]<br /> "Launch50"="explorer.exe"<br /> "Depend50"=hex:14,00,转载 2010-06-07 07:17:00 · 183 阅读 · 0 评论 -
从WinMain开始(CE下创建窗口)
从WinMain开始发 布 时 间 : 2008-11-19 来 源 : 来自网络 作 者 : 尹海波 浏 览 : 930 目录抽象渗漏法则(摘自Joel)针对Windows GUI编程的封装只用API函数创建GUI程序WinMain函数登记自己的窗口类创建主窗口消息循环完整的示例代码一、抽象渗漏法则根据Joel的抽象渗漏法则,所有重大的抽象机制在某种程度上都是有漏洞的。Joel举过一个例子: C 字符串类型应该能让你假装字符串是个基本类型,它们尝试“字串很难处理”这个事实抽象掉,让转载 2010-08-09 03:34:00 · 561 阅读 · 0 评论 -
Windows CE矩阵键盘开发
Windows CE矩阵键盘开发发 布 时 间 : 2009-04-25 来 源 : 来自网络 作 者 : 佚名 浏 览 : 485 嵌入式移动设备的应用越来越广,以其体积小、重量轻、便于携带等特点而备受青睐。键盘是一种最为普遍使用的输入工具,但嵌入式移动设备因其体积小的特点决定了它的键盘不大可能采用普通PC机上的标准键盘,因而大多数采用键数相对较少的矩阵键盘。 利用矩阵键盘用户可以很方便的实现对嵌入式移动设备进行相应的操作,是极方便的人机交互设备。随着微软的嵌入式操作系统W转载 2010-08-09 05:27:00 · 619 阅读 · 1 评论 -
摘自CSDN的完整DIALOG实例
<br />#include <windows.h> <br />#include <winsock.h> <br />#include "resource.h " <br /><br />LRESULT WINAPI WndProc(HWND hwnd,UINT uMsg,WPARAM wParam,LPARAM lParam); <br />BOOL CALLBACK DialogProc(HWND hwndDlg, UINT uMsg, WP转载 2010-08-10 01:36:00 · 317 阅读 · 0 评论 -
Win32API第六节—对话框函数
Win32API第六节—对话框函数——(6)[ 收藏生活日志Win32API第六节—对话框函数——(6) ] 发表时间:2010-06-19 16:17 Win32API第六节—对话框函数——(6)编辑:admin<br /> 函数功能:CreateDialog宏从一个对话框模板资源创建一个无模式的对话框,CreateDiaog宏使用CreateDialogParam函数。<br /><br /> 函数原型:HWND CreateDialog(HINSTANCE hlnstance,LPCTSTR l转载 2010-08-09 19:43:00 · 1026 阅读 · 0 评论 -
在PB中修改相应的系统配置文件
<br /> 在PB中修改相应的系统配置文件。<br /> <br /> PB所提供的配置文件包括四种文件类型:<br /> <br /> .bib,说明需要打包进镜像文件的Windows CE文件;<br /> .dat,文件系统、目录和文件分配表描述;<br /> .db,Windows CE对象存储数据库的描述;<br /> .reg,系统注册表。<br /> <br /> 在开发过程中最常用到的配置文件有:<br />转载 2010-08-10 09:32:00 · 409 阅读 · 0 评论 -
winCE标准shell美化
1更换WinCE的墙纸更换墙纸就是改注册表设置,编译完WinCE工程以后,所有的reg文件中的内容都会被合并为reginit.ini文件。在platform.reg文件中添加如下内容:[HKEY_CURRENT_USER/ControlPanel/Desktop]"wallpaper"="//Storage Card//LOGO.bmp"然后把LOGO.bmp放到Storage Card这转载 2011-06-05 03:34:00 · 268 阅读 · 0 评论 -
android应用程序基本设计思想
Android系统的手机的每一个你能看到的画面都是一个activity,它像是一个画布,随你在上面怎么涂画,画个按钮,画个图片,画个列表,都随你!专业点其实activity就是一个view类的派生类(比如Button, listview,imageview)的container。Android平台的四大天王:Activity, Service, ContentProvider, Broad转载 2012-09-10 03:22:17 · 309 阅读 · 0 评论 -
Android平台与SDK Tools版本、ADT版本的对应关系
Android SDK版本和ADT版本Android早期的版本号有点“混乱”,比如Android 2.2对应的ADT版本为ADT-0.9.9而Android 2.3对应的的ADT版本则突然“跃迁”为 ADT-8.0.0.zip。而且Android SDK还包含SDK Tools和SDK Platform两个东西,它们的意义也不同,它们也有各自的版本号,因此有些人在此处容转载 2012-11-14 01:16:45 · 1112 阅读 · 0 评论 -
Android下XML文本的PULL解析方式
person.xml: 李明 30 李向梅 25 Person类:public class Person { private Integer转载 2012-12-05 02:51:40 · 233 阅读 · 0 评论 -
GPIO编程原理
一、什么是GPIO? 首先应该理解什么是GPIO。GPIO,英文全称为General-Purpose IO ports,也就是通用IO口。在嵌入式系统中常常有数量众多,但是结构却比较简单的外部设备/电路,对这些设备/电路有的需要CPU为之提供控制手段,有的则需要被CPU用作输入信号。而且,许多这样的设备/电路只要求一位,即只要有开/关两种状态就够了,比如灯亮与灭。对这些设备/电路的控制,使用传统的转载 2010-04-28 01:50:00 · 4833 阅读 · 0 评论 -
程序员能力矩阵 你属于哪一层?
注意:每个层次的知识都是渐增的,位于层次n,也蕴涵了你需了解所有低于层次n的知识。计算机科学 Computer Science软件工程 Software Engineering程序设计 Programming经验 Experience 【CSDN编者按】上述图书中,第一级对应的英文为Unleashe原创 2010-04-24 10:56:00 · 204 阅读 · 0 评论 -
Windows CE 5.0 LCD显示驱动简析
现在就来看看我们需要实现的GPE继承类S3C2410DISP.在ddi_if_cpp(/WINCE500/PUBLIC/COMMON/OAK/DRIVERS/DISPLAY/GPE)实现了一个SafeGetGPE函数,其代码如下:GPE *SafeGetGPE( HANDLE hDriver ){ GPE * pGPE = NULL; __try转载 2010-04-23 07:24:00 · 441 阅读 · 0 评论 -
关于PB6过期破解的问题
WinCE6.0 Platform Builder过期了,打开工程提示已超过180天,google了一下,找到了解决办法:把gooogleman大侠提供的方法贴出来与大家共享之: "在PB安装目录下有个etkremov.inf,试用期是以此文件的创建日期来计算的。将其删除,然后新建一个文件,再重命名为etkremov.inf,不要直接新建这个文件,否则由于filesystem tunnel,会导致转载 2010-03-24 17:02:00 · 397 阅读 · 0 评论 -
WINCE驱动开发中一些原理的学习
一:寄存器的使用:1、wince内部对物理地址的访问:可以有3个途径。1:直接使用g_oalAddressTable(oemaddrtab_cfg.inc)的已经定义好的,物理地址对应的虚拟地址。如:DCD 0x80000000, 0x30000000, 128 ;访问虚拟地址0x80000000实际就是访问物理地址0x30000000。2:在OAL层,原创 2010-04-13 03:08:00 · 225 阅读 · 0 评论 -
句柄-指针的指针
这是操作系统里的一个概念,句柄是WONDOWS用来标识被应用程序所建立或使用的对象的唯一整数,WINDOWS使用各种各样的句柄标识诸如应用程序实例,窗口,控制,位图,GDI对象等等。WINDOWS句柄有点象C语言中的文件句柄。 从上面的定义中的我们可以看到,句柄是一个标识符,是拿来标识对象或者项目的,它就象我们的姓名一样,每个人都会有一个,不同的人的姓名不一样,但是,也可能有一个名字和你一样的人。转载 2010-04-15 06:38:00 · 157 阅读 · 0 评论 -
句柄概念的理解
句柄概念 =================================================================================在WINDOWS编程中是一个很重要的概念,在许多地方都扮演着重要的角色。但由此而产生的句柄概念也大同小异,比如:《Microsoft Windows 3 Developers Workshop》(Microsoft转载 2010-04-15 06:40:00 · 175 阅读 · 0 评论 -
OAL点点滴滴
OAL(OEM Adaptation Layer)既OEM 适配层,从逻辑上讲位于Windows CE内核和硬件之间,从物理上讲OAL各个模块代码被编译后(.lib)和其它内核库链接到一起形成Windows CE的内核可执行文件nk.exe。Windows CE内核在OAL层暴露了大量的函数和全局变量,利用这些函数和全局变量OEM可以编写中断处理、RTC、电源管理、调试端口、通用I/O控制代码转载 2010-04-17 05:32:00 · 148 阅读 · 0 评论 -
关于LCD的小常识
54针的RGB有呀.3.5"的. 其他的54针的没有?没有.都是3.5"的.3.5"的是RGB的,一般接2440或类似的.54针中的SPI是配置用的,RGB是数据的.3.5"的都是要SPI初始化的. 3.5的都是SPI的?没有直接RGB就显示的?SPI+RGB才行的.如果不用SPI,只能按屏内默认值了.显示效果,位置等等都不一定对. 你的意思小屏幕必须走SPI初始这原创 2010-04-17 16:45:00 · 211 阅读 · 0 评论 -
SPI驱动程序设计
研究了几天驱动程序设计,终于把程序调通了,现在把一些资料和心得记录如下,当作自己的工作笔记。该程序是基于mini2440开发板的,只是一个简单的基本程序,并没有将所有的东西考虑进去,希望大家谅解。其间参考了很多网络资源,有的部分甚至没有修改,如初始化等,在这一并表示感谢。(有事情,下次再写了,先给出原程序和测试测序) linux的驱动程序设计主要是要填充file_operat转载 2010-04-16 18:29:00 · 552 阅读 · 0 评论 -
元器件符号
电气设备常用文字符号新旧对照表名 称 文字符号 新 旧(一)常用基本文字符号电桥 AB DQ晶体管放大器 AD DF集成电路放大器 AJ 印刷电路板 AP 抽屉柜 AT 旋转变压器(测速发电机) TG CF电容器 C C发热器件 EH RJ照明灯 EL ZD空气调节器 EV 过电压放电器件避雷器 F BL具有瞬时动作的限流保护器件 FA SX具有延时动作的限流保护器件 FR YX具有延转载 2010-04-03 04:03:00 · 599 阅读 · 0 评论 -
嵌入式系统中可配置式GPIO模拟SPI总线方法
在嵌入式系统处理器中有相当一部分处理器不带SPI接口,但基丁SPI接口的设备非常丰富,此外,SPI设备的不同以及处理器对GPIO口位寻址是否支持各处理器各有不同,因而不同处理器中软件模拟GPIO也各不相同。若能提供一种通用可配置可移植的GPIO模拟SPI总线的驱动则能很方便快捷的访问SPI设备,从而提高整个嵌入式系统的开发效率。本文针对GPIO口位寻址与否给出方面,给出了一种可配置GPIO模拟SP转载 2010-04-07 04:17:00 · 302 阅读 · 0 评论 -
SPI要做哪些设置进行数据传输
只有有数据传输的时候才有时钟输出的不过我理解一般意义上都是1、IO一般都是复用的,所以先将IO复用为SPI的模式,(有些IO还要设定其工作的的时钟频率)2、进入SPI的设定模式(MSP430好像就需要寄存器先进入Reset状态才能使设定有效)3、设定控制寄存器:SPI主还是从了、时钟源了,分频了、8或者16bit了、LSB或MSB了 等等。。。4、使能(或许有,或许没有)===========原创 2010-04-17 16:50:00 · 438 阅读 · 0 评论 -
用GPIO模拟SPI协议的实现
一 SPI协议概括SPI,是英语Serial Peripheral interface的缩写,顾名思义就是串行外围设备接口。是Motorola首先在其MC68HCXX系列处理器上定义的。SPI接口主要应用在 EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间。SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时转载 2010-04-07 04:15:00 · 209 阅读 · 0 评论 -
键盘扫描原理
当按键达到8个以上时,我们一般就不会选择用独立式了。而选用矩阵式键盘扫描方式。CEPARK 51实验板的按键就是按照这种方式。6个口控制8个按键。(按键响应结果:按下前对应行列输入从共“1”转为按下后的共“0”) 下载 (24.89 KB)2008-12-29 21:36 sunhm版主也写过这个方面的帖子。。大家可以去参考下。。它调用了其他的头文件。这里我转载 2010-04-03 04:43:00 · 2121 阅读 · 0 评论 -
nboot和Eboot的说明和调用方式
nboot是从NAND flash读image到内存并执行,eboot是从以太网(用tftp)下载image到内存并执行。将nboot.nb0烧到第0块,将eboot.nb0烧到第2块。启动时nboot从flash读出eboot并执行之,如何就可以通过pb把nk.bin下载到目标板上执行了,开发机和目标板可以用交叉线直接连接。 nboot是n转载 2010-04-05 23:15:00 · 203 阅读 · 0 评论 -
友善之臂2440中WinCE BSP中串口打印信息的实现介绍
不管在WinCE5.0还是在WinCE6.0中,我们在调试驱动或者应用的时候都会用到打印函数。在驱动里面,我们可能会用DEBUGMSG(..),RETAILMSG(..),还有NKDbgPrintfW(..)。在我们使用这些打印函数调试我们的程序之前,我们需要实现串口打印功能。在WinCE的BSP中,如果想调用DEBUGMSG(..)或者RETAILMSG(..)来从串口打印信息,必须在我转载 2010-04-20 05:21:00 · 880 阅读 · 0 评论 -
国外计算机期刊投稿指南
国外计算机期刊1. Artificial Intelligence ( SCI 源刊 EI源刊) http://www.elsevier.comhttp://www.elsevier.com/wps/find/journaldeion.cws_home/505601/deion#deionISSN: 0004-3702ARTIFICIAL INTELLIGENCEM原创 2010-04-21 02:09:00 · 1602 阅读 · 0 评论 -
【硬件,存储器】NOR FLASH和NAND FLASH
NOR和NAND是现在市场上两种主要的非易失闪存技术。Intel于1988年首先开发出NOR flash技术,彻底改变了原先由EPROM和EEPROM一统天下的局面。紧接着,1989年,东芝公司发表了NAND flash结构,强调降低每比特的成本,更高的性能,并且象磁盘一样可以通过接口轻松升级。但是经过了十多年之后,仍然有相当多的硬件工程师分不清NOR和NAND闪存。 相“flash转载 2010-04-21 05:13:00 · 151 阅读 · 0 评论 -
了解VirtualCopy和VirtualAlloc
弄清楚这个问题首先要了解VirtualCopy和VirtualAlloc这2个函数的实现和目的,以及wince下动态虚拟内存映射和静态虚拟内存映射。先说VirtualAlloc 和VirtualCopyVirtualAlloc 首先会从我们的虚拟地址空间中申请(或者说预留)一块虚拟空间,准备接下来要用它。注意此时,可用的物理内存并没有减少,只是虚拟地址少了一块可用的区域。真正把这块之前reserv转载 2010-04-23 18:12:00 · 316 阅读 · 0 评论