10秒定时炸弹

#include #define DataPort P0 sbit LATCH1=P2^0; sbit LATCH2=P2^1; sbit SPK = P1^0; void DelayUs2x(unsigned char t);//函数声明 void DelayMs(unsigned c...

2017-01-24 08:57:42

阅读数 343

评论数 0

1602LCD显示

#include //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义 #include sbit RS = P2^4; //定义端口 sbit RW = P2^5; sbit EN = P2^6; #define RS_CLR RS=0 #define RS_SET R...

2017-01-23 13:26:18

阅读数 378

评论数 0

电子表(开关,复位,调时)

#include #define DataPort P0 sbit key_up = P1^0; sbit key_down = P1^1; sbit key_left = P1^2; sbit key_right = P1^3; sbit LATCH1=P1^6; sbit LATCH...

2017-01-22 19:30:43

阅读数 513

评论数 0

时分秒

#include #define DataPort P1  sbit LATCH1=P2^2; sbit LATCH2=P2^3; unsigned char code dofly_DuanMa[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d...

2017-01-21 23:16:01

阅读数 493

评论数 0

1s定时器

#include #define DataPort P0 sbit LATCH1=P2^2; sbit LATCH2=P2^3; //unsigned char code dofly[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}...

2017-01-20 18:48:42

阅读数 364

评论数 0

单片机LED灯的使用

#include /*void delay(unsigned char i)//使用循环语句,实现延时 { unsigned char j; unsigned char k; for(j = 0; j for(k = 0; k }*/ void delay(unsigned i...

2017-01-19 16:04:57

阅读数 271

评论数 0

80c51单片机通用I/O口

80C51单片机并行输入/输出口         80C51单片机含有4 个8位并行I/O口P0、P1、P2和P3。每个口有8个引脚,如图2-1所示,共有32个I/O引脚,每一个并行I/O口都能用作输入或输出。各口的第 一、第二功能如下:        I/O口   引脚      第一功能...

2017-01-18 18:21:29

阅读数 7385

评论数 0

基本l/O操作

在学习C语言的时候,基本的输入输出是非常重要的,因为我们时常要接收用户的输入,而且时常要将结果输出到屏幕,因此非常有必要注重地学习一下。 最常用的两个基本IO函数莫过于 printf()  和 scanf() 了,下面首先来详细地介绍一下它们。来看第一个示例代码: ...

2017-01-14 19:48:22

阅读数 306

评论数 0

C语言数据类型

C语言是一种强数据类型编程语言,换句话讲,不像弱数据类型的语言比如shell脚本语言那样,没有特殊的变量数据类型,统统都是字符串。而C语言是有严格的数据类型的规定的。来看一下下面这段代码: [cpp] view plain copy  print? ...

2017-01-13 11:03:37

阅读数 399

评论数 1

linux 基本命令使用

linux 基本命令  ls     (list 显示当前目录下文件和目录 ls -l 详细显示 =ll )   [root@linux ~]# ls [-aAdfFhilRS] 目录名称  [root@linux ~]# ls [--color={none,auto,always}]...

2017-01-12 10:54:33

阅读数 263

评论数 0

面试题3

华为笔试题  1.写出判断ABCD四个表达式的是否正确, 若正确, 写出经过表达式中 a的值(3分) int a = 4; (A)a += (a++); (B) a += (++a) ;(C) (a++) += a;(D) (++a) += (a++); a = ? 答:C错误,左侧不是...

2017-01-11 15:07:08

阅读数 249

评论数 0

面试题2

想成为嵌入式程序员应知道的0x10个基本问题: 预处理器(preprocessor) 1 . 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题) #define SECONDS_pER_YEAR (60 * 60 * 24 * 365)UL 我在这想看到几件...

2017-01-10 11:27:04

阅读数 161

评论数 0

面试题

1.extern的作用 自己理解:应该需要区分extern在C语言中和C++语言中的作用,C语言中extern声明的函数和变量可以被该文件外部模块引用,C++语言中除了该作用还可以声明extern “C”声明一段代码编译连接的方法为C语言的方法。 参考:其实extern的百度词条解...

2017-01-09 15:35:17

阅读数 151

评论数 0

快速找到未知长度单链表的中间节点

普通的方法很简单,首先遍历一遍单链表以确定单链表的长度L。然后再次从头节点出发循环L/2次找到单链表的中间节点。算法复杂度为O(L+L/2)=O(3L/2)。   能否再优化一下这个时间复杂度呢?有一个很巧妙的方法:设置两个指针*search、*mid都指向单链表的头节点。其中*sea...

2017-01-08 13:05:46

阅读数 266

评论数 0

用递归法实现二分查找

#include void Search(int p[],int low,int height,int key) { int middle=(low+height)/2; if(low>height) { printf(&...

2017-01-07 10:39:59

阅读数 460

评论数 0

判断一个单链表是否有环及环的链接点

给定一个单链表,只给出头指针h: 1、如何判断是否存在环? 2、如何知道环的长度? 3、如何找出环的连接点在哪里? 4、带环链表的长度是多少?   解法: 1、对于问题1,使用追赶的方法,设定两个指针slow、fast,从头指针开始,每次分别前进1步、2步。如存在环,则两者相遇;如不...

2017-01-06 11:51:04

阅读数 178

评论数 0

消息队列

5 消息队列 5.1 消息队列定义 消息队列提供一种在两个不相关的进程之间传递数据的相当简单且有效的方法。消息队列独立于发送和接收进程存在,消除了同步命名管道的打开和关闭时可能产生的一些困难。 (具体函数自行查阅) 5.2 函数msgget 5.3 函数m...

2017-01-05 12:19:51

阅读数 174

评论数 0

共享内存

4 共享内存 4.1 共享内存定义 共享内存是在两个正在运行的进程之间传递数据的一种非常有效的方式,它允许两个不相关的进程访问同一个逻辑内存。共享内存是由IPC为进程创建的一个特殊的地址空间,它将出现在该进程的地址空间中。其他进程可以将同一段共享内存连接到它们自己的地址空间中。对共享内...

2017-01-04 09:43:13

阅读数 142

评论数 0

信号量

3 信号量 3.1 信号量定义 最简单的信号量是一个只有0与1两个值的变量,二值信号量。这是最为通常的形式。具有多个正数值的信号量被称之为通用信号量。在本章的其余部分,我们将会讨论二值信号量。 [cpp] view plain copy ...

2017-01-03 09:40:05

阅读数 191

评论数 0

管道

管道 管道是进程间通信的主要手段之一。一个管道实际上就是个只存在于内存中的文件,对这个文件的操作要通过两个已经打开文件进行,它们分别代表管道的两端。管道是一种特殊的文件,它不属于某一种文件系统,而是一种独立的文件系统,有其自己的数据结构。根据管道的适用范围将其分为:无名管道和命名管道。管道是...

2017-01-02 12:38:51

阅读数 343

评论数 0

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