
C/C++嵌入式编程
文章平均质量分 63
gmcow
热爱编程。。。
从事嵌入式开发。。。
展开
-
字符显示原理
一、字符与字模驱动程序当中,字符库的数据采用了与一般的单色点阵LCD的数据组成方式,即字模当中的一个位代表LCD显示中的一个像素点,取点方式为从左到右,自上到下的顺序。字模采用了以byte为单位的位流结构,即当一行取点不为8的整数倍时,补齐数据至8位,无用位填零。数据位补齐的原则与取模的方向有关:比如一个字符实际占用的点阵大小为6*12,若取模方向为从左到右,自上到下,则字符用8*原创 2010-04-16 19:55:00 · 2322 阅读 · 0 评论 -
析构函数
析构函数 析构函数与构造函数相反,当对象脱离其作用域时(例如对象所在的函数已调用完毕),系统自动执行析构函数。析构函数往往用来做“清理善后” 的工作(例如在建立对象时用new开辟了一片内存空间,应在退出前在析构函数中用delete释放)。以C++语言为例,析构函数名也应与类名相同,只是在函数名前面加一个波浪符~,例如~SetXy( ),以区别于构造函数。它不能带任何参数,也没有返回值(包括void类型)。只能有一个析构函数,不能重载。如果用户没有编写析构函数,编译系统会自动生成一个缺省的析构函数,它也不进行原创 2010-07-08 19:36:00 · 629 阅读 · 0 评论 -
delete与delete[]
<br />C++告诉我们在回收用 new 分配的单个对象的内存空间的时候用 delete,回收用new[] 分配的一组对象的内存空间的时候用delete[]。 <br />关于new[] 和 delete[],其中又分为两种情况:(1) 为基本数据类型分配和回收空间;(2) 为自定义类型分配和回收空间。 <br />对于(1),上面提供的程序已经证明了delete[]和delete是等同的。但是对于(2),情况就发生了变化。请看下面的程序:<br />#include <iostream>;<br />u转载 2010-08-05 18:48:00 · 443 阅读 · 0 评论 -
可重入函数与不可重入函数(转)
<br /><br /> 可重入函数主要用于多任务环境中,一个可重入的函数简单来说就是可以被中断的函数,也就是说,可以在这个函数执行的任何时刻中断它,转入OS调度下去执行另外一段代码,而返回控制时不会出现什么错误;而不可重入的函数由于使用了一些系统资源,比如全局变量区,中断向量表等,所以它如果被中断的话,可能会出现问题,这类函数是不能运行在多任务环境下的。<br /> 也可以这样理解,重入即表示重复进入,首先它意味着这个函数可以被中断,其次意味着它除了使用自己栈上的变量以外不依赖于任何环境(包括转载 2010-10-18 18:45:00 · 427 阅读 · 0 评论 -
Hi3515 UART2和UART3驱动加载
<br />这里主要想讲下海思Hi3515的UART2和UART3是如何被加载到内核中的,因为正在做一个项目需要使用四个串口,但海思提供的linux源码中只加载了两个串口的驱动,找了一圈,发现源码中没有现成的UART2和UART3的代码可以使用,只能自己动手改啦啊。。。<br />首先关于linux硬件模块的加载可以参考下面这篇博文:<br />http://hi.baidu.com/jackyu/blog/item/a89ba634e31418bcd1a2d3e5.html<br />好吧,我们进入正题,原创 2011-04-01 14:52:00 · 4920 阅读 · 8 评论 -
关于Android平台下的H264客户端
之前开发了个Android平台下解码H264的客户端,现在回头来总结下吧:1、界面这个没什么好说的,任何平台下都很简单。。。2、解码器的移植找了一个从ffmpeg裁剪出来的H264解码库,然后移植到Android平台,这里要学习下JNI的知识。3、Java多线程了解java多线程的几种方式,我这里用的两个线程,一个从服务器收数据送到共享的缓冲区,另外一个从缓冲区取数据送到解码器解码并将图像输出。4、Android网络编程这里直接用的socket收发,还是蛮简单的,然后手机和服务器通信是通过wifi,我们只要原创 2011-04-09 13:01:00 · 4022 阅读 · 9 评论