- 博客(101)
- 收藏
- 关注
转载 2440+jlink初始化SDRM
ADS 项目属性设置:-ro-base = 0x30000000entry 0x30000000Init Section: 2440init.o InitAXD下需要加载一个SDRAM初始化文件。AXD下-->Option->Config Interface->session file->run configuration script.选择一个初始化文件,内容如下:Setmem 0x53000000 0x00000000 32 Setmem 0x4A000008 0xFFFFFFFF 32 Setmem
2011-05-20 16:50:00
1629
转载 Linux异步通知编程(转)
<br />1.Linux信号<br />http://www.ibm.com/developerworks/cn/linux/l-ipc/part2/index1.html<br />http://www.ibm.com/developerworks/cn/linux/l-ipc/part2/index2.html<br />1) SIGHUP 本信号在用户终端连接(正常或非正常)结束时发出, 通常是在终端的控制进程结束时, 通知同一session内的各个作业, 这时它们与控制终端不再关联. <br
2011-05-12 14:28:00
1934
转载 Linux驱动---时间、延迟及延缓操作(转)
<br />度量时间差<br /> <br />时钟中断由系统定时硬件以周期性的间隔产生,这个间隔由内核根据 HZ 值来设定,HZ 是一个体系依赖的值,在 <linux/param.h>中定义或该文件包含的某个子平台相关文件中。作为通用的规则,即便如果知道 HZ 的值,在编程时应当不依赖这个特定值,而始终使用HZ。对于当前版本,我们应完全信任内核开发者,他们已经选择了最适合的HZ值,最好保持 HZ 的默认值。<br />对用户空间,内核HZ几乎完全隐藏,用户 HZ 始终扩展为 100。当用户空间程序包含 p
2011-05-11 20:20:00
1020
转载 内核中随处可见的等待队列详解(转)
<br />一、定义:<br />/include/linux/wait.h<br /> <br />struct __wait_queue_head {<br />spinlock_t lock;<br />struct list_head task_list;<br />};<br />typedef struct __wait_queue_head wait_queue_head_t;<br />二、作用:<br />在内核里面,等待队列是有很多用处的,尤其是在中断处理、进程同步、定时等场合。可以使用
2011-05-11 20:04:00
585
转载 wince6中文字体
<br />对WinCE体积进行剪裁,并让WinCE支持简体中文和英文显示,默认显示是中文,并以下对字体选取作详细的说明;关键操作步骤:<br />1.先创建一个WINCE内核工程.<br />2.先打开目标的工程文件,单击“Project”菜单,再单击“Properties->Configuration Properties-> Locale<br />先执行 “clear”<br />Locales:将 “中文(中国)”打勾<br />Default languare:选择“中文(中国)”<br />完
2010-08-14 12:46:00
1570
转载 从bin得到nb0文件的方法
<br /> 关于cvrtbin的用途,最常用的就是将NK.bin转换出NK.nb0。用法如下:<br /> cvrtbin [options] [filename]<br /> -s 从bin文件中产生sre文件<br /> -r 从bin文件中产生rom文件<br /> -a rom文件的起始地址<br /> -w 总线的宽度<br /> -l rom文件的大小<br /> 这个工具可以和viewbin工具一起使用,将NK.bin文件转换成NK.nb0。<br /> 首先通过:viewb
2010-08-14 10:20:00
878
转载 EVC技巧二
#include#define IOCTL_HAL_REBOOT CTL_CODE(FILE_DEVICE_HAL, 15, METHOD_BUFFERED, FILE_ANY_ACCESS)extern "C" __declspec(dllimport)void SetCleanRebootFlag(void);extern "C" __declspec(dllimport) BOO
2010-01-07 13:58:00
893
转载 EVC技巧
1 为对话框添加菜单,。变量须设置为全局 //先创建一个Command_Bar HWND hwndCB = CommandBar_Create (AfxGetInstanceHandle(), m_hWnd, 1); ///再插入菜单: CommandBar_InsertMenubar (hwndCB, AfxGetInstanceHandle(),
2010-01-07 13:56:00
1827
转载 wince怎样启动自启动自己写的程序
wince怎样启动自启动自己写的程序 收藏 1、注册表 1.配置project.bib或者添加User Feature,以将含入NK.bin 请参考《让程序在Windows CE系统启动时自动运行-快捷方式》 2.配置platform.reg或者common.reg,在[HKEY_LOCAL_MACHINEinit]段添加如下类似内容: "LaunchXX"=""
2009-12-30 21:02:00
2270
转载 Windows CE 进程、线程和内存管理
进程、线程、内存管理是一个内核最基本的服务,也是一个内核最主要的组成部分。这几方面的知识是一个软件开发人员必须掌握的基础知识。虽然一个人不懂这些知识也能编写简单的程序,但这样的程序只能算是皮毛。掌握了进程、线程和内存管理方面的知识,就能够充分利用操作系统内核提供的服务,提高你编写的软件的执行效率、更节省资源、更健壮。顺便说一下,在Windows CE.net下可以运行用Visual Studi
2009-12-30 20:56:00
875
原创 Windows CE内存管理
刚开始这个话题,引用书上的一段话:在编写Microsoft Windows CE 程序时首要需要关注的是什么呢?那就是如何处理内存。一台Windows CE设备可能只有16MB的RAM。相对于标准的个人电脑通常的512MB甚至更多的内存,这简直少的可怜。事实上,由于Windows CE设备上的内存十分缺乏,以致于在编写程序的时候有时需要为节约内存而牺牲应用程学的整体性能。引用这段话,让
2009-12-30 20:40:00
719
转载 WinCE的LCD驱动程序编写指南
本文以1024*768分辨率的TFT_16BPP真彩LCD为例,说明在WIN CE 4.2中驱动程序的修改事项,目标板的微处理器是S3C2410A。 该LCD的时序图如下图所示: Note:LCD时序的参数和时钟相位因不同LCD而异,请参考相应LCD的datasheet.在WIN CE 4.2中修改LCD驱动程序有五个相关文件,分别是:1. …/WINCE420/PL
2009-12-30 20:31:00
830
转载 WINCE启动流程
WINCE实际上是由一些运行中的进程组成的,当系统启动时,至少会创建以下4个进程:1> NK.exe:提供内核服务,是操作系统核心部分。2> GWES.exe:提供用户界面服务和消息管理机制。3> Device.exe:加载和维护系统设备驱动程序。4> Filesys.exe:加载和管理文件系统。由于运行WINCE的硬件平台较
2009-12-30 19:41:00
2389
转载 S3C2410下WinCE6.0的启动过程详解
通过前两篇文章的介绍,我们已经知道NBOOT用来引导EBOOT,继而EBOOT加载并引导WinCE操作系统(NK)。那么,WinCE6.0的启动过程又是怎样的呢?本文基于S3C2410的平台做一个详细的分析。需要说明的是,WinCE6.0的整个启动过程对于同一类型的MCU来说大同小异,如S3C2410和PXA270同属ARM平台的MCU,所以他们的启动过程是类似的,可以说唯一的不同就在OAL处,而
2009-12-30 19:34:00
837
转载 Platform builder4.2定制WinCE系统
1. 启动Platform Builder 4.2,打开[File]菜单, 选择[New Platform](新平台), 这时会出现[New Platform Wizard](创建向导),选择[Next]。 2. 选择仿真处理器,默认为[EMULATOR: X86],即x86兼容型,利用你的x86处理器仿真 CE处理器,选好后,点击[Next]。 3. 选者要仿真的设备类型,CE可以在很多
2009-12-13 22:15:00
542
转载 Windows CE下访问物理内存的方法
转载来自http://www.cppblog.com/milkyway/articles/18269.html嵌入式设备与桌面PC的一个显著不同是它的应用程序中通常需要直接访问某一段物理内存,这在驱动程序中对物理内存的访问尤为重要,尤其是像ARM体系结构下,I/O端口也被映射成某一个物理内存地址。因此,与桌面版本Windows相比,Windows CE提供了相对简单的物理内存访问方式。无论是
2009-11-20 21:43:00
676
转载 MmMapIoSpace以及MmUnmapIoSpace,VirtualAlloc和VirtualCopy 函数的实现原理以及实现方法
首先说明: LPVOID VirtualAlloc(LPVOID lpAddress, DWORD dwSize, DWORD flAllocationType, DWORD flProtect );VirtualAlloc 只是在虚拟地址申请一个空间,lpAddress 大多数为0指由系统来自动分配虚拟地址BOOL VirtualCopy( LPVOID lpvDest, LPV
2009-11-20 21:34:00
914
转载 WinCE驱动开发问题精华集锦
如何让系统加载自己写的驱动程序? 两种办法: 1、在[HKEY_LOCAL_MACHINE/Drivers/BuiltIn]下添加注册键。 2、在应用程序中调用ActivateDeviceEx。 在一些文件中用分号来表示注释,例如下面的内容 ; @CESYSGEN IF SERVERS_MODULES_HTTPD ; @CESYSGEN ENDIF 在“CESYSGEN.
2009-10-06 10:25:00
497
原创 wince存储与地址映射技术
Windows CE采用了四层内存管理结构,从下到上依次为:物理内存,虚拟内存,逻辑内存和C/C++运行时库.其中物理内存包括:RAM(为OS和程序提供运行和缓冲空间),ROM(存储程序,包括OS和一些文件),Flash(可擦写).CE支持最大物理内存为512M. 所有进程共享4G的虚拟存储空间,它是通过以页为单位管理的,不同处理器支持页大小不同(ARM支持1K,4K,64K,1M;X86支持4
2009-10-05 10:53:00
587
转载 解读set_gpio_ctrl(GPIO_MODE_OUT | GPIO_H6)
做嵌入式底层的东西,初始化硬件设备应该是必须的。一个个内核调用函数足以让人头晕! 最近在看Linux嵌入式(s3c2410)方面的内容,遇到了这样一个函数:set_gpio_ctrl();它从字面上看来是对gpio口的设置扩展。GPIO是什么呢?它是通用IO端口引脚,在s3c2410用户手册中有A,B,C,D,E,F,G,H7组共117个引脚。这些引脚除了可作为INPU
2009-08-24 21:05:00
1130
转载 automake之hello例子[转]
一,主要过程新建三个文件: helloworld.c configure.in Makefile.am然后执行:aclocal; autoconf; automake --add-missing; ./configure; make; ./helloworld 就可以看到Makefile被产生出来,而且可以将helloworld.c编译通过。二,详细过程1、
2009-08-23 16:23:00
564
转载 ADO使用
#import "c:program filescommon filessystemadomsado15.dll" no_namespace rename("EOF","adoEOF") 声明对象: _ConnectionPtr m_pConnection; _RecordsetPtr m_pRecordset; 创建对象: // 初始化COM接口 ::CoInitialize(NULL); //
2009-03-11 19:42:00
970
转载 导出到EXCEL
_RecordsetPtr m_pRs;_ConnectionPtr m_pConn;try{ CoInitialize(NULL); m_pConn.CreateInstance(__uuidof(Connection)); m_pRs.CreateInstance(__uuidof(Recordset)); /
2009-02-10 13:43:00
491
转载 使用ZedGraph制作动态更新的统计图
ZedGraph是很好的.net下的统计图开源项目,在以前的一篇随笔中提到,与其他的一些统计图控件相比,ZedGraph由于是直接在画布上作画,而不是生成图片显示,所以性能比较好,在诸如股市的实时走势图,显示cpu使用率等实时性较强的应用中有很好的表现,方法并不难,但是由于很少有人写这方面的文章,又正巧在其他论坛中看到有这方面的问题,所以写了下面的例子。 ZedGraph在描画折线图的时候
2008-11-05 22:10:00
641
转载 海量数据库的查询优化及分页算法方案(三)
SELECT TOP m-n+1 *FROM publishWHERE (id NOT IN (SELECT TOP n-1 id FROM publish))id 为publish 表的关键字我当时看到这篇文章的时候,真的是精神为之一振,觉得思路非常得好。等到后来,我在作办公自动化系统(ASP.NET+ C#+SQL SERVER)的时候,忽然想起了这篇文章,我想
2008-11-04 19:08:00
513
转载 海量数据库的查询优化及分页算法方案(二)
(三)结合实际,谈索引使用的误区理论的目的是应用。虽然我们刚才列出了何时应使用聚集索引或非聚集索引,但在实践中以上规则却很容易被忽视或不能根据实际情况进行综合分析。下面我们将根据在实践中遇到的实际问题来谈一下索引使用的误区,以便于大家掌握索引建立的方法。1、主键就是聚集索引这种想法笔者认为是极端错误的,是对聚集索引的一种浪费。虽然SQL SERVER默认是在主键上建立聚集索引的。
2008-11-04 19:06:00
539
转载 海量数据库的查询优化及分页算法方案(一)
在以下的文章中,我将以“办公自动化”系统为例,探讨如何在有着1000万条数据的MS SQL SERVER数据库中实现快速的数据提取和数据分页。以下代码说明了我们实例中数据库的“红头文件”一表的部分数据结构:CREATE TABLE [dbo].[TGongwen] ( --TGongwen是红头文件表名 [Gid] [int] IDENTITY (1, 1) NOT NULL ,
2008-11-04 19:05:00
687
转载 c#编写的MD5加密类
using System.Security.Cryptography; // //MD5加密函数 // public string MD5(String str) { MD5 md5=new MD5CryptoServiceProvider(); byte[] data=System.Text.Encoding.Default.GetBytes(str); byte[
2008-11-03 17:33:00
1214
转载 C# 中的高性能计时器
[奥地利]Daniel Strigl 著 野比 译来源:http://www.codeproject.com下载:源文件HighPerformanceTimerSource.zip 简介精确的时间计量方法在某些应用程序中是非常重要的。常用的 Windows API 方法 GetTickCount() 返回系统启动后经过的毫秒数。另一方面,GetTickCount() 函数仅有 1ms 的
2008-11-03 15:14:00
592
转载 C#完整的通信代码(点对点,点对多,同步,异步,UDP,TCP)
C# codenamespace UDPServer{ class Program { static void Main(string[] args) { int recv; byte[] data = new byte[1024]; //构建TCP 服务
2008-11-03 12:38:00
2269
转载 ZedGraph控件能够显示动态或静态数据
ZedGraph控件能够显示动态或静态数据。若要定时的向一个图表里添加数据,应按照如下顺序实现:1.在GraphPane.CurveList集合中查找CurveItem2.在CurveItem中访问PointPairList(或者其它的IPointList),根据自己的需要增加新数据或修改已存在的数据3.调用ZedGraphControl.AxisChange()方法更新X和Y轴的
2008-10-30 14:15:00
3762
2
转载 C# winSock编程
最近在用Socket 做局域网内客户端和服务器端通讯的程序(也可以用做客户端和客户端间的通讯)。先贴出收发的方法,其他的方法我会不断的更新。欢迎大家留言,互相交流。 发送的报文头信息为Struct类型,发送数据类型可以是String 也可以是一个类。在发送Struct类型或发送类时,必须先将这个类序列化为流,接收时再将流反序列化为对象。接收的缓冲区大小设为1024,先接收
2008-10-23 14:56:00
1291
转载 MFC常用的一些方法
发布程序的时候我们应该选择Release版本这样就不会因为缺少mfc42d.dll mfco42d.dll msvcrtd.dll mfcn42d.dll而出现问题了一 对话框 ----- CDialog ...1:如何改变CFileDialog的标题::opendlg.m_ofn.lpstrTitle = "增加文件";2:对话框打开时多选/复选::OFN_ALLOW
2008-10-12 13:54:00
874
转载 MFC+ADO+access
1.引入ado库#import "c:/Program Files/Common Files/System/ADO/Msadox.dll" rename_namespace("ADOCG") rename("EOF", "adoXEOF") rename("DataTypeEnum","adoXDataTypeEnum") #import "C:/Program Files/Common
2008-10-10 11:56:00
1772
转载 TCP,UDP完整数据包校验和通用计算
ICMP,IP,UDP,TCP报头部分都有checksum(检验和)字段。ICMP和IP报头校验和的计算都很简单,使用RFC1071中给出的方法即可完成(如下)。 //计算校验和USHORT checksum(USHORT *buffer,int size){ unsigned long cksum=0; while(size>1) { cksum+=*buffer++; size-=
2008-10-03 22:54:00
3548
2
转载 MPlayer在x86_64位的系统中的安装以及出现的问题的解决办法
MPlayer在x86_64位的系统中的安装以及出现的问题的解决办法MPlayer - MPlayer是一个仅在命令行下使用的播放器也有可以更换皮肤的的GUI前端,他还有强大的编码工具MEncoder(亦为音频和视频的解码而设计)。另外还提供了高性能的Firefox/Mozilla浏览器插件用于播放各种格式的媒体。* 通过yum使用Livna仓库(启用的)安装:[mirandam@
2008-10-02 22:25:00
1189
转载 2410 TFTP源码 学习笔记414757749
最近在看CS8900datasheet和FS2410 TFTP源码,把源码全部注释了一遍,本来也就CS8900芯片的资料我能用得上,但是学习一下网络协议的简单实现也是一件高兴的事情。整理一下思路:一、源码结构:从底层到高层的顺序是:CS8900.h :定义了CS8900芯片内部寄存器地址,各寄存器的主要的位的掩码。CS8900.c :定义了CS8900的基本操作:访问寄存器宏定
2008-09-18 20:01:00
883
转载 移植UCGUI 调试笔记
移植UCGUI 调试笔记刘志军 QQ259094936在所有工作开始前首先得确认使用的显示屏与44B0 的连接是否正确。其次是设置44B0 LCD 控制器的输出引脚。注意如果是256 色或是4 位双扫描的灰度液晶。44B0 的PC 相应的端口应该设置成第三功能。也就是LCD 数据输出VD4—VD7 ,否则会出现显示图像会出现蓝白相间(本人移植的是256 色的西铁城K3247)。对于256
2008-09-08 21:55:00
1949
1
原创 event祥解
1、event代表事件的状态,例如触发event对象的元素、鼠标的位置及状态、按下的键等等。event对象只在事件发生的过程中才有效。event的某些属性只对特定的事件有意义。比如,fromElement 和 toElement 属性只对 onmouseover 和 onmouseout 事件有意义。 2、属性:altKey, button, cancelBubble, cli
2008-07-28 18:12:00
652
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人