自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

chendesheng1988的专栏

热爱嵌入式开发,热爱物联网,创造让生活可以更美好!

  • 博客(63)
  • 资源 (9)
  • 问答 (5)
  • 收藏
  • 关注

原创 WinCE设备电池电量采集问题

这次WinCE操作系统桌面电池图标始终显示小插头图标,表示系统正在使用交流电供电,未使用电池。导致这种现象产生的最表面原因是WinCE电源管理器没有检测到有电池存在。为什么没有检测到电池存在?电池模块是通过IIC总线与主板通信。电源模块作为IIC总线的从设备,上层主板作为主设备。主设备通过IIC请求从设备信息,并返回信息给WinCE的电源管理器。这里最重要的问题是IIC总线的通信协议有没有

2014-07-20 16:19:34 1031

原创 const限定符和指针的用法实例

刚开始看《Effective C++》这本书,里面讲到const。我按照书上讲的,简单的写了个例子。如下。备忘。#include int main(){ /* //下面const的用法表示const修饰的是p所指向的值是常量 int i = 10; int k = 20; const int *p = &i; printf("%x\n",p); //*p = 20; //

2014-06-09 15:20:34 895

原创 const和指针结合使用的例子

刚开始看《Effective C++》这本书,里面讲到const。我按照书上讲的,简单的写了个例子。如下。备忘。#include int main(){ /* //下面const的用法表示const修饰的是p所指向的值是常量 int i = 10; int k = 20; const int *p = &i; printf("%x\n",p); //*p = 20; //这一

2014-06-09 15:19:18 900

原创 《高质量程序设计指南》之内存管理读书笔记

《高质量程序设计指南》第16章内存管理其中,后四小节:16.12用对象模拟指针,16.13 泛型指针auto_ptr,16.14带有引用计数的智能指针,16.15 智能指针作为容器元素个人感觉比较难,有待以后深入学习。前面几小节说的内容很重要,需要时常温故。下面是一点笔记内容:一内存的三种分配方式1 从静态存储区域分配。特点:在程序编译的时候就已经分配好了,这些内存

2014-02-12 15:08:44 875

原创 《C++ Primer》读书笔记

1、在C++中理解“初始化不是复制”是必要的。2、对于类类型的对象来说,定义如何初始化的函数称为构造函数。(构造函数用来初始化类类型的变量)3、和其他函数一样,构造函数能接受多个参数。一个类可以定义几个构造函数,每个构造函数必须接受不同数目或者不同类型的参数。4、可以通过使用extern关键字声明变量名而不定义它。不定义变量的声明包括对象名、对象类型和对象类型前的关键字extern

2014-02-10 15:44:20 746

转载 ARM系列之“什么是体系结构”

学习《嵌入式系统――采用公开源代码和StrongARM/XScale处理器》一书,对ARM核的体系结构有了一个比较全面而且深入的认识,纠正了以前不少错误的认识。现在以ARM核的体系结构为主线,按照理解的先后顺序,结合自己的实际应用经验,总结相关知识点,以获得更大的提高。 什么是体系结构? 所谓“体系结构”,也可以称为“系统结构”,是指程序员在为特定处理器编制程序时所“看到”从而可以

2014-01-20 15:26:04 4873

原创 《深入理解计算机系统》系列之信息的表示和存储

第一部分:程序结构和执行第二章:信息的表示和处理2.1 信息存储    大多数计算机使用8位的块,或者字节(byte),作为最小的可寻址的存储器单位。而不是在存储器中访问单独的位。    机器级程序将存储器视为一个非常大的字节数组,成为虚拟存储器(virtual memory)。    存储器的每个字节都由一个唯一的数字来标识,称为它的地址(address)。所有可能地址的集合

2014-01-19 14:35:33 864

原创 单向链表实现堆栈

单向链表实现堆栈要求:1 使用C语言;2 使用单向链表;3 接口规范,通用性强;解:1 链表元素的类型确定为了最终确定这两个函数的调用模型,你还需要知道进出堆栈的数据是属于哪种类型的。也就是说,你得声明一个struct结构作为链表元素的数据类型。如果没有特殊要求,应该考虑使用无类型指针来实现一个通用的解决方案。基于无类型指针的struct结构和函数调用模型如下所示:

2014-01-18 18:45:10 3276

原创 《深入理解计算机系统》系列开篇

开始读《深入理解计算机系统》这本书,作者是美国人Randal E. Bryant   David R. O'Hallaron,我读的汉译本。这本书的腰封上写着这两段话:    1 一本值得花时间认真研究的好书!从计算机系统的软硬件机理来分析软件的运行,对程序员所触及的领域给予了很透彻的理论分析,从本质上提高程序编写的质量,让人知其然而又知其所以然。读完此书,对计算机系统的认知程度又会提升一个层

2014-01-08 10:10:28 1173

原创 代码之“格式”--《Clean Code》笔记

《代码整洁之道》——“格式”陈德胜2014-01-03整理      先明确一下,代码格式很重要。代码格式不可忽略,必须严肃对待。代码格式关于沟通,而沟通是专业开发者的头等大事。       1 垂直格式       1)一个源代码文件的大小:大多数为200行,最长500行。尽管这并非不可违背的原则,也应该乐于接受。短文件通常比长文件易于理解;       2)源文件应该像报纸

2014-01-05 09:50:19 1167

原创 "注释"的注意事项--《Clean Code》笔记

《代码整洁之道》——“注释”陈德胜 2013-12-27  整理关于“注释”的一些原则:1 注释不能美化糟糕的代码,与其花时间编写解释你搞出的糟糕的代码的注释,不如花时间清洁那堆糟糕的代码;2 用代码本身来阐述其行为;3 好注释包括:       1)与法律相关的注释;       2)提供基本信息的注释;       3)对某个决定的意图的解释;

2013-12-29 15:28:36 914

原创 《C++ Primer》读书笔记之“指针和const限定符”

今天看了《C++ Primer》4.2.5节“指针和const限定符”。觉得理解起来像绕口令似的,好不容易捋顺一遍,一做题,又乱了。做点笔记,供参考。1、指向const对象的指针 (1)我们可以用指针来修改其所指对象的值。 (2)如果,某指针指向const对象,则不允许用指针来改变其所指的const值。 (3)C++为保证这个特性,强制要求指向const对象的指针也必须具有cons

2013-12-29 14:37:17 816

原创 算法复杂度计算

算法复杂度计算首先了解一下几个概念。一个是时间复杂度,一个是渐近时间复杂度。时间复杂度是某个算法的时间耗费,它是该算法所求解问题规模n的函数,而渐近时间复杂度是指当问题规模趋向无穷大时,该算法时间复杂度的数量级。当我们评价一个算法的时间性能时,主要标准就是算法的渐近时间复杂度,因此在算法分析时,往往对两者不予区分,经常是将渐近时间复杂度T(n)=O(f(n))简称为时间复杂度,其中的f

2013-12-27 10:52:04 2320

原创 《WinCE下应用程序开发》系列之开发步骤

在Windows CE下开发应用程序大致可分为三个步骤:1.     安装合适的SDK2.     编写代码和调试3.     发布应用程序 一.安装SDK       如果选用Visual Studio或者eMbedded Visual C++开发应用程序,安装合适的SDK是需要做的第一步工作。       SDK(Software Developme

2013-12-24 13:16:50 4221

原创 我的SD卡乱码解决方案

转载请注明出处。chendesheng1988是原作者。问题描述:射频模块读取证件信息后,串口读取的信息存到SD卡,存进去发现汉字是乱码。解决方案:使用函数WideCharToMultiByte搞定这个问题。关键词:unicode,ANSI,WideCharToMultiByte,LPCWSTR解决的过程大概描述如下: (1)把存放从串口读进来的数据的recvBuf

2013-12-08 19:39:17 5513

原创 我的背光驱动解决方案

陈德胜,2013年12月1日,工作小记。这里将我自己在按键驱动上修改的背光驱动部分贴出来。供大家参考。问题描述:CPU:PXA270,背光显示控制芯片LT1937ES5。要求实现空闲状态下关闭LED背光灯,工作时,第一次按键点亮LED灯,后面的按键才是工作。其中LCD_SW为LED使能端,接的是PXA270的GPIO46口,LCD_PWM是背光明暗控制,接的是GPIO14口。 

2013-12-01 14:13:35 2236

原创 wince下背光驱动资料总结

以下资料是我这两天查找的网上一些牛人的总结。现在归类以下,也供以后查找。强烈推荐下面这个博客的博主LoongEmbedded,其学习态度值得我去学习 。(1)WINCE基于PWM实现的背光驱动 .        硬件CPU:S3C2443,背光IC:AT1312B,LCD: KD50G9-40NM-A3 系统WINCE6.0http://blog.csdn.net/Loon

2013-11-19 20:40:47 1159

转载 wince中的背光灯控制

1、《wince中的背光灯控制》 摘自chinaunix,cruzezhou.blog.chinaunix.net,此博主搬家至CSDN博客要控制背光灯就必须知道相关设置,以下是wince中背光灯的设置。在BL_ReadRegistry函数中被读取。[HKEY_CURRENT_USER\ControlPanel\BackLight]    "ACTimeout"=dword:00000

2013-11-19 19:29:26 1066

原创 最近正在解决的wince问题

1  SD卡中汉字乱码:射频模块读来的身份证信息,用fputc()函数把信息存储到SD卡中,数字可以存进去,没有乱码,汉字存进去的却是乱码;2   显示屏的背光驱动。目前系统里没有背光驱动,所以在空闲的时候显示屏不会自己熄灭。查了一些资料,得到一些关键词:PWM,定时器,IOControl,占空比等。3   wince的电源管理。目前系统在电源管理这一块不完善。如系统的用户空闲模式,系统空

2013-11-16 13:57:41 719 2

原创 PB5.0开发流驱动框架的流程(图文)

自己总结的详细的,图文并茂的WinCE习题流驱动开发步骤,适合初学者,因为我就是初学者,从初学者角度总结的。欢迎纠正错误。

2013-11-05 20:06:05 1260

原创 读书记录统计程序

《C++ Primer》第四版,习题10.25       定义一个vector容器,存储你在未来6个月里要阅读的书,再定义一个set,用于记录你已经看过的书名。编写程序从vector中为你选择一本没有读过而现在要读的书。当它为你返回选中的书名后,应该将该书名放入记录已读书目的set中。如果实际上你把这本书放在一边没有看,则本程序应该支持从已读书目的set中删除该书的记录。在虚拟的6个月后,输

2013-11-04 21:44:09 983

原创 关于map容器的insert成员的返回值说明

关于map容器的insert成员的返回值说明:(1)map对象中一个给定键只对应一个元素。如果试图插入的元素所对应的键已在容器中,则insert将不做任何操作;(2)含有一个或一对迭代器形参的insert函数版本如:m.insert(beg,end),并不说明明是否有或有多少个元素插入到容器中。(3)但是,带有一个键-值pair形参的insert版本将返回一个值:包含一个迭代器和一个b

2013-11-03 20:52:21 12631

原创 家族成员查询程序

这是《C++ Primer》第四版上的10-18习题,我感觉值得我认真去学习其中的语法点和用法。  定义一个map对象,其元素的键是家族姓氏,而值则是存储该家族孩子名字的vector对象。为这个map容器输入至少6个条目。通过基于家族姓氏的查询检测你的程序,查询应输出该家族所有孩子的名字。//10-18.cpp//定义一个map对象,其元素的键是家族姓氏//而值则是存储家族

2013-11-03 12:53:03 1321

原创 文本转换程序(二)

续上篇。摘自《C++Primer》10.3.9/* *A program to transform words. *Takes two arguments: The first is name of the word transformation file         The second is name of the input to transform * */

2013-11-01 22:28:34 1082

原创 文本转换程序

文本转换程序

2013-10-31 22:11:38 1018

原创 WinCE驱动开发感想

WindowsCE嵌入式软件开发感想

2013-10-27 21:31:04 1027 1

原创 应该如何学习wince驱动?

应该如何学习wince驱动?网上看到一篇旧贴,发帖人是gooogleman老师,和大家探讨“应该如何学习wince驱动?”。我把他提的问题和大家的跟帖总结一下,便于学习。原帖:http://bbs.csdn.net/topics/330117028我的CSDN博客:http://blog.csdn.net/chendesheng1988

2013-08-18 09:44:08 860

原创 C++学习之指针和const限定符

今天看了《C++ Primer》4.2.5节“指针和const限定符”。觉得理解起来像绕口令似的,好不容易捋顺一遍,一做题,又乱了。做点笔记,供参考。1、指向const对象的指针 (1)我们可以用指针来修改其所指对象的值。 (2)如果,某指针指向const对象,则不允许用指针来改变其所指的const值。 (3)C++为保证这个特性,强制要求指向const对象的指针也必须具有co

2013-08-17 21:17:00 718

原创 有关于Vector对象的问题

这是《C++ primer》第四版上的一个例子,向vector添加元素,使用push_back函数,我按照书上给出的样例程序,在VC6.0里编了一下,如下:#include#include#includeusing namespace std;int main(){     string word;     vector text;     while(cin>

2013-08-01 21:19:22 647

转载 《给你的演讲加点儿“怪”味 》--演讲与口才

给你的演讲加点儿“怪”味       “怪”,即“个性鲜明独特,与众不同”。演讲的“怪”味,体现在演讲者敢于打破常规,标新立异,独树一帜。演讲有“怪”味的人,不按常规的思维去思考问题,不按传统的观念去看待事物,他们的演讲立意新颖,角度独特,语言亦庄亦谐,表达灵动、张扬,充满了张力和磁性。显然,加了“怪”味的演讲,更具震撼力和吸引力,它会激活听众的思维,带给大家更多的回味和思考。那么,如何给你的

2013-07-27 20:20:22 1303

原创 WinCE板级支持包开发学习之RTC驱动程序

现在正在一边看设备驱动程序,一边研究内核,下面是我们这个实时时钟这一块,我的理解。1、M41T81通过I2C总线与PXA270通讯;2、这里的I2C驱动很重要,里面包括I2C总线的初始化、读和写等;3、I2C的各种控制器控制着初始化、读和写等操作,所以要搞清楚每种控制器的机制。4、下面要做的是对具体的代码结合I2C总线的知识,一句句的读懂。RTC里重要函数之间的调用关系如下图:

2013-07-27 10:07:46 770

原创 WinCE板级支持包开发学习之WinCE的初始化驱动流程

最近在看《Windows CE工程实践完全解析》李大为编著的这本书,现在理解这本书的知识还是有一定难度。必须要多读几遍才能懂。现在将书中WinCE的初始化启动流程画出来了,贴出来。对着这个图去理解wince的脉络还是比较清晰的。

2013-07-27 10:02:25 741

原创 WinCE板级支持包(BSP)开发学习开篇

在本科阶段初步接触了嵌入式开发,那时候很无知,对学习嵌入式开发并没有很大的兴趣,简单的学习了一些单片机的知识,一些基础课程如微机原理以及基础编程语言汇编和C的学习也都是为了考试;       研究生阶段开始对嵌入式产生了很大的兴趣,并且接触到了嵌入式操作系统,主要是学习了uC/OS-II,对基于三星S3C2440为核心的嵌入式开发平台也进行了一些学习,对其bootloader进行了详细的分析,

2013-07-22 16:03:33 1036

转载 C++ 指针练习题

1.耶稣有13个门徒,其中有一个就是出卖耶稣的叛徒,请用排除法找出这位叛徒:13人围坐一圈,从第一个开始报号:1,2,3,1,2,3……,凡是报到“3”就退出圈子,最后留在圈内的人就是出卖耶稣的叛徒,请找出它原来的序号 /* * 使用循环链表实现要求  * Lzy 2011-8-1 */ #include #include using namespace std

2013-07-19 22:05:18 1936

转载 命名空间namespace

本文转载自:http://blog.chinaunix.net/uid-24219701-id-2105573.html为方便以后查阅,才转载至此,并无侵权之意。谢谢原作者。对using namespace std;的解释  所谓namespace,是指标识符的各种可见范围。C++标准程序库中的所有标识符都被定义于一个名为std的namespace中。由于namespace的概念,

2013-07-19 21:47:15 552

原创 C++

main 函数的返回值必须是 int 型,该类型表示整数。int 类型是内置类型,即该类型是由 C++ 语言定义的。 The main function is required to have a return type of int, which is the type that represents integers. The int type is a built-in type

2013-07-18 21:18:18 614

转载 I2C总线被占用

转发网易DP先生关于I2C的博文,便于学习时查找最近发现访问I2C设备时,主设备复位可能会引起i2C死锁,表现为SCL为高,SDA一直为低,后发现是从设备拉死i2c总线,从设备断电之后,SDA变高,上电后通信正常。后来通过拉低SCL信号线,SDA就会自动变成高电平,i2c总线恢复。     在正常情况下,I2C总线协议能够保证总线正常的读写操作。但是,当I2C主设备异常复位时(看门狗动

2013-07-11 21:27:58 3560 1

转载 I2C总线

IIC总线简介I2C 总线是一种用于IC 器件之间连接的二线制总线。它通过SDA(串行数据线)及SCL(串行时钟线)两根线在连到总线上的器件之间传送数据,并根据地址识别每个器件:不管是单片机、存储器、LCD驱动器还是键盘接口。I2C 能用于替代标准的并行总线,能连接各种集成电路和功能模块。支持IIC的设备有微控制器、ADC、DAC、储存器、LCD控制器、LED 驱动器以及实

2013-07-10 21:36:17 1484

原创 WindowsCE5.0嵌入式系统掉电时间保持问题(RTC)

1、我的CPU是PXA270;2、系统是wince5.0;现在遇到问题了,RTC不能正常工作,每次开机的时候,时间又都会回到2001年1月1日零点开始计时。这个项目是高校合作的,那边学生说是:摄像头和RTC都要用到I2C总线,是这两个IC器件在竞争I2C总线的使用权,以至于RTC不能正常得到I2C总线的使用权。我们外接的RTC芯片是M41T81。请各位高手指教。 现在试了,

2013-07-10 19:56:43 965

转载 本机设备驱动程序

本机设备驱动程序通常只有OEMs才会对本机设备驱动程序进行修改,其他自由设备生产商由于只提供附加的硬件设备,对本机设备驱动程序不会有过多涉及。因此下面的本机设备驱动程序面向OEMs。微软公司为每一种本机设备驱动程序设了一套custom接口。在此基础上,微软公司还为相同类型的设备驱动设计出了一组标准的接口。这样,Wince操作系统就能按标准来操作同一类型的设备驱动,而不需要过多地去了

2013-07-02 21:12:57 641

WinCE 编程的十点忠告

学习WINCE的同学都应该看看!我看了,颇受益。

2013-12-19

WINCE bootloader开发

介绍如何开发WINCE系统的BOOTLOADER,大家共学习。

2013-10-09

语音识别过程分析2

也是分析语音识别过程,比较详细的介绍了语音识别的一些算法,当然深入学习得查更多资料

2012-09-16

语音识别过程分析

详细分析语音识别过程,其中引用了很多参考文献,有很大的参考价值

2012-09-16

从51到ARM嵌入式系统入门

这篇文章对从单片机到ARM32位开发转变的同学可以先阅读以下这篇文档

2012-09-12

ARM汇编器所支持的伪指令

这篇文档所讲的是ARM汇编器所支持的伪指令,了解和掌握这些伪指令对嵌入式开发有很好的帮助

2012-09-12

常用ARM指令集

这是常用ARM指令集,学习ARM的同学应该熟悉这篇文档里的指令,可以下载下来作为参考

2012-09-12

汇编指令大全+很全的汇编指令

这个是很好汇编学习材料,里面齐全了汇编代码指令,值得学习嵌入式的同学作为参考资料

2012-09-12

基于ARM的音频驱动

此资源可以帮助需要在ARM上使用UDA1341TS编解码器的朋友,可以借鉴此资料学习。

2011-10-23

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除