自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

c熊

嵌入式和软件编程两手抓

  • 博客(25)
  • 资源 (11)
  • 收藏
  • 关注

原创 Qt5串口编程详解【新版】

Qt5串口编程详解【新版】

2014-05-17 11:31:44 22315 11

原创 我的Ubuntu软件

ubuntu software

2014-04-18 22:31:39 851

转载 I2C和SPI,UART的区别(转)

SPI--Serial Peripheral Interface,(Serial Peripheral Interface:串行外设接口)串行外围设备接口,是Motorola公司推出的一种同步串行通讯方式,是一种三线同步总线,因其硬件功能很强,与SPI有关的软件就相当简单,使CPU有更多的时间处理其他事务。I2C--INTER-IC(INTER IC BUS:意为IC之间总线)串行总线

2014-04-06 22:52:22 2047

原创 【一天一篇CPP】多态性和虚函数和虚析构函数和纯虚函数和抽象类

1. 什么是多态性?多态性是面向对象的一个重要特征。向不同的对象发送同一个消息,不同的对象在接收时会产生不同的行为【例如:上课了,学生上课,程序员在敲代码;下课了,学生下课,程序员还在敲代码。开玩笑的】。其实我们也接触了一些多态性的例子,例如函数的重载、运算符重载、模板等...从系统实现的角度,多态性分为两类:静态多态性【函数重载和运算符重载和模板属于这一类,静态多态性是编译时决定的,也叫

2013-10-12 13:42:34 761

原创 【一天一篇CPP】基类与派生类的转换(单向:从派生类赋值给基类,舍弃一部分)

我们知道一般的赋值兼容,如double d,  int  i,  int *ip;  d = i 可以直接赋值,  i = d 可以舍弃小数赋值,而 ip = 1024 则出现错误,要添加强制转换,如 ip = (int *) 1024,则不算赋值兼容。不同数据之间的自动转换和赋值,称为赋值兼容。1. 那么基类对象和派生类对象是否存在赋值兼容关系?存在,但是是单向的【从派生类赋

2013-10-12 10:35:27 803

原创 【一天一篇CPP】C++的虚基类

一个派生类有多个直接基类,这些基类又有一个共同的基类,如图【画的很随便,就是B和C集成于A,Dji】

2013-10-11 21:00:49 975

原创 【一天一篇CPP】多继承及其二义性(multiple inheritance,也叫多重继承,但不是多层继承)

1. 前面讨论的是单继承,就是一个子类只有一个直接父类。但有时一个派生类可由两个或多个基类,派生类从两个或多个基类中继承所需的属性。【例如一个学生,既是班干,又是社团部长】2. 形式:  class D: public A, private B, protected C{ //D的成员}3.多重继承派生类的构造函数形式:D(int a, int b, int c):A(

2013-10-11 19:40:13 924

原创 【一天一篇CPP】派生类的构造函数和析构函数

1.基类的构造函数是不能继承的,在声明派生类时,派生类并没有把基类的构造函数继承过来,但是可以通过一种显式的声明来调用基类的构造函数。对于析构函数,系统会自动调用基类的析构函数,详细看下面的 “3注意点”。2.构造函数调用的例子:#include #include using namespace std;class Student{public: Student (in

2013-10-10 14:29:47 868

原创 【一天一篇CPP】继承和派生:基础知识和继承方式与访问属性

1.介绍:面向对象程序设计的4个特点:抽象、封装、继承、多态性。C++中的可重用性是通过继承这一机制来实现的。【父类派生出子类,子类继承于父类】。派生类是基类的具体化,基类是派生类的抽象。2.形式:在类的声明处class 派生类名 : [ 继承方式 ] 基类名{............//派生类新增加的成员};继承方式有:public(公用的),privat

2013-10-10 13:25:43 824

原创 【一天一篇CPP】不同类型数据间的转换【转换构造函数、类型转换函数】

1.自动转换:int i = 6; i += 7.5;2.显式类型转换: (类型名) 数据   或   类型名  (数据) 【前者为C语言的方式】3.用转换构造函数进行类型转换 -> 将其他类型数据转换为类的对象。    如:Complex (double r){real = r; imag = 0;}使用方法:    Complex c1(3.5); 合法    Comple

2013-09-27 13:47:08 658

原创 【一天一篇CPP】重载运算符的实例

1.重载双目运算符未重载版本#include using namespace std;class String{public: String() { p = NULL; } String(char *str) { p = str; } void display() { cout << p<< endl;}private: char *p;};int main()

2013-09-27 11:40:57 1020

原创 【一天一篇CPP】运算符重载--对部分CPP运算符重载

1.例子:">"也一样。【这个重载处理位于stream】2.运算符重载函数定义方法: 函数类型 operator 运算符名称( 形参列表 ) {..........对运算符的重载处理......}例如想用 ' + ' 运算符来处理 Complex 类(复数类)的加法运算,函数原型可以是这样的:    Complex operator + (Complex &c1,Complex &c2

2013-09-26 21:46:18 1341

原创 【一天一篇CPP】类模板

1.有时对类而言,两个或多个类,其功能是相同的,仅仅是数据类型不同。请看下面两个类:class Compare_int{public: Compare_int( int a, int b) {x = a; y = b;} int max(){return (x>y)? x : y;} int min(){return (x<y)? x : y;}private: int

2013-09-26 20:15:54 679

原创 【一天一篇CPP】友元和类

1.一般友元函数【就像可访问私有成员的一般函数】:一个例子:#include using namespace std;class Time{public: Time( int, int, int); friend void display(Time &);//先声明,使一般函数display可以访问本类的私有成员private: int hour, minute,

2013-09-26 19:45:22 764

原创 【一天一篇CPP】静态成员

1.静态数据成员的作用:它是类的不同对象的共享数据,它是全局变量的替代品!!一个例子:#include using namespace std;/*//错误初始化class Box{public: Box(int h) : height(h){} static int height;};*///正确初始化class Box{public: Box() {} B

2013-09-26 15:01:19 500

原创 【一天一篇CPP】对象的动态建立、释放、赋值和赋值

1.对象的动态建立和释放:     Box *pt = new Box;    delete pt;当 new 失败,返回0,被delete忽略!new则构造,felete则析构。2.对象的赋值: 对象名1 = 对象名2【对象1和2必须是同一个类,或对象2是对象1的派生类对象】提示:类的数据成员不能包括动态分配的数据,否则有可能出现严重错误【除非自己去重载 = 运算

2013-09-26 14:27:16 865

原创 【一天一篇CPP】对象与指针与数组 对象和const和指针和引用

1.对象和数组:对于Student::Student( int a )而言Student stud[3] = {60,70,80};表示分别让60,70,80作为三个数组元素对象的构造函数的参数。//编译系统只为每个对象的构造函数传递一个参数,避免歧义    易错例子: Student::Student(int = 1001, int = 18, int = 60),Student stud[

2013-09-24 22:10:31 564

原创 【一天一篇CPP】inline、类的存储,简单的构造函数、析构函数

1.inline 须知:一般非类成员的函数inline声明即可,在类成员函数中,若为inline声明,成员函数声明和成员函数的定义必须放在同一个文件。2.类的大小:经过sizeof测试,得知:一般的数据成员【不论const还算mutable还是】都要计算,不论任何类型的函数都不计入内。3.对于大小比较小的类,尽量用指针或引用作为函数的参数,而不是一个使用形参副本,这样不用复制构造它。但假如

2013-09-24 17:34:14 658 1

原创 用C语言模拟面向对象

这个代码是修改自lwoopc,截取其中一部分,然后添加一部分。#include #include #define CLASS(type) \typedef struct type type; \type* type##_new( ); \void type##_ctor(type* t);

2013-09-22 14:15:01 928

原创 基于6410的H264采集、硬编码、软解码的源代码解析

//这个是友善之臂专题8的源代码,不过没有注释,现在加上了注释,提供下载链接,也可以不下载,对照着这里看。因为这个过程包括采集、硬编码、软解码等过程,//调用的函数是规范的,所以不是用tiny6410的也可以看看,不是用ARM的也可以看看解码部分!//我只在tiny6410上尝试,但是因为这里涉及的都是lcd设备节点和摄像头设备节点,基于S3C6410的MFC,所以其他6410应该可以通用

2013-07-23 15:03:35 2428 7

原创 如何在Tiny6410上用EC189

为ARM添加配置文件:vi /etc/3g-modem/12d1.1505.ff输入以下内容,并保存,这个配置文件测试很多次才得到:DisableSwitching=0EnableLogging=0DefaultVendor= 0x12d1DefaultProduct= 0x1505MessageContent="5553424312345678000000000000

2013-07-14 16:20:09 711

原创 linux 驱动笔记 快速搜索

可以复制下来,用notepad++打开,整体很简洁的,然后可以用搜索方便查询!/*    author:C雄    内容是关于linux2.6的    本文档是驱动基础相关的资料,不涉及具体硬件驱动(如LED、按键、等)。    2013.3.26*/头文件大全:{    1.    include/linux/list.h     精彩的双向链表数据结构

2013-05-03 13:52:55 914 2

原创 LED灯驱动程序tiny6410

这是一份tiny6410下的led驱动,为了解释详细,先不直接贴代码,代码tiny6410光盘有,而且本文也在最后贴出代码。写的动机:这是第一个也是最简单的硬件驱动程序了,而且开发板貌似也没有足够的注释。不涉及的知识点:驱动程序基础,混杂设备,这些不懂的话要自己查。驱动程序只有短短的10来行,并且注释和分析比较详细。/*这份代码在tiny6410光盘源代码lde

2013-02-21 17:02:48 1001

原创 shell最基础的笔记

注意:“=”左右两边都不能有空格,BASH中的语句结尾不需要分号程序1#!/bin/sh#echo somethingecho "hello world"echo "hello !!"cd /root/Desktopmkdir ./abc程序2,变量不需要类型,也不需要定义,使用的时候加上$,赋值的时候不用#!/

2013-01-29 20:07:05 290

原创 C语言调用终端命令行批处理【小尝试】

#include#include//用exce只能生成一个,然后退出,这不是我们想要的,所以用systemint main(int argc,char *argv[]){ int a=0,end; char buffer[100]; end=atoi(argv[1]);//第二个参数字符串转化为数字,表示要创建的文件数目 printf("form 0 to %d\n",end-1)

2012-12-14 20:14:04 770

atmega版本的ucosII

这是为atmega16移植的操作系统,是从网上下载又上传的,但是网上的不能用,因为没有设置atmega16的定时器。所以我修改了,然后裁剪一部分任务,让它显得更简单。

2013-10-08

为C语言去除注释的shell脚本

为C语言去除注释的shell脚本,仅此而已。能匹配/**/ 和//,在绝大数情况下可用,在某些情况下有个别错误

2013-07-23

基于Tiny6410的H264硬编码、软解码的源代码【有注释】

这个是友善之臂专题8的源代码,不过没有注释,现在加上了注释,提供下载链接,也可以不下载,对照着这里看。因为这个过程包括采集、硬编码、软解码等过程。 调用的函数是规范的,所以不是用tiny6410的也可以看看,不是用ARM的也可以看看解码部分! 我只在tiny6410上尝试,但是因为这里涉及的都是lcd设备节点和摄像头设备节点,基于S3C6410的MFC,所以其他6410应该可以通用。

2013-07-23

linux驱动函数,文字档【不涉及具体硬件!】

这是自己写的,文字档,用notepad++打开可用很容易看到大纲,绝对好用.不用自己写笔记了

2013-07-20

C语言深度解剖(适合做资料查)

C语言深度解剖(适合做资料查).很好的中文书,深度而简洁,还是文字档哦!!

2013-07-20

linux内核网络和gcc,gdb,bootloader的图片集合

linux内核网络和gcc,gdb,bootloader的图片集合

2013-07-20

基于30天自制操作系统的自制C语言图像界面

我是一个大二的学生,学C语言快两年了 这个程序是修改自《30天自制操作系统》的,作者有声明任何人使用它的程序可以不负任何费用,但是保留任何人修改并出售它的权利,而且这个并不是完整的操作系统。相反,其实我并没有看完这本书,所以也没办法加入内存管理、进程等相关的内容。它不是完整的操作系统,但是我给它加入了图像系统,可能有bug。另外因为图像函数都是直接写到Video RAM【不知道有没有翻译错误,我也不知道叫什么】里面的,所以我保证可以使用这个程序在嵌入式平台上,但是我还没开始这么做,希望有人可以和我一起做这个尝试。我确实尝试过在arm11【s3c6410】上直接将图案写到Video RAM中,所以相信加上裸机触屏就可以做没有操作系统的裸机图像系统。 作者:袁杰雄 时间:2013.6.4

2013-06-04

三星S3C6410用户手册(中文版).pdf

s3c6410用户手册,1200多页,全中文

2013-02-21

《30天自制操作系统》第一周翻译注释(改于贴吧某网友).rar

第一周的代码注释和翻译,很详细,都改了,包括汇编和C语言部分,转于某贴吧网友,然后修改了一部分

2013-01-15

scheme_自学教程.pdf

这是适合有一定基础的初学者的SCHEME教程!

2012-08-26

SICP 计算机程序的构造和解释中文版.pdf

这是LISP的一种方言SCHEME的教程,可以配合DRRACKET软件使用

2012-08-26

空空如也

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

TA关注的人

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