自定义博客皮肤

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

51单片机外设之——按键的检测(快速识别)

前面提到的按键的检测,第一种传统的扫描存在延时消抖和while松手检测语句的缺点;第二种的带标志位的检测法存在延时消抖的缺点;而现在介绍的按键扫描法是“快速识别”方法(以独立按键为例,因为矩阵键盘的扫描与独立按键类似)。 首先附上按键的原理图: 用跳帽连接排针 J5 的2脚与3脚,将键盘设置为独立...

2018-04-30 12:46:49

阅读数 991

评论数 2

51单片机外设之——按键的检测(带有标志位的按键识别法)

前面提到了独立按键,可见,独立按键是由矩阵键盘分离而来的。接下来看的是 4*4 的矩阵键盘,这里使用的还是上节所使用的,延时消抖检测。 先附上矩阵键盘的原理图: 在使用据矩阵键盘时,J5 排针处的跳帽连接 1 脚和 2 脚,使所有按键的有效端口全部连接至 I/O 口。 具体的扫描方式为: 先把P3...

2018-04-30 12:14:11

阅读数 1762

评论数 0

51单片机外设之——矩阵键盘(传统法一)

前面提到了独立按键,可见,独立按键是由矩阵键盘分离而来的。接下来看的是 4*4 的矩阵键盘,这里使用的还是上节所使用的,延时消抖检测。 先附上矩阵键盘的原理图: 在使用据矩阵键盘时,J5 排针处的跳帽连接 1 脚和 2 脚,使所有按键的有效端口全部连接至 I/O 口。 具体的扫描方式为: 先把P3...

2018-04-30 12:12:48

阅读数 453

评论数 0

初识固件库

1.固件的含义固件(Firmware)就是写入EROM(可擦写只读存储器)或EEPROM(电可擦可编程只读存储器)中的程序,它是软件。固件是指设备内部保存的设备"驱动程序",通过固件,操作系统才能按照标准的设备驱动实现特定机器的运行动作,比如光驱、刻录机等都有内...

2018-04-22 21:57:41

阅读数 772

评论数 1

利用.bat(批处理)来删除KEIL编译生成的无用文件.

1.      利用.bat(批处理)文件可以用来删除KEIL编译生成的无用文件,减少工程的磁盘占有量,方便讲工程发给合作者。2.      程序中已经将编译生成的无用文件存放目录设置为OBJ文件夹。当编译后,会发现OBJ目录下有多个文件,约100多个文件,占空间将近20M。3.      创建k...

2018-03-30 22:10:50

阅读数 302

评论数 1

Linux下的内部命令与外部命令的区别

Linux命令有内部命令(内建命令)和外部命令之分,内部命令和外部命令功能基本相同,但也有些细微差别。内部命令实际上是shell程序的一部分,其中包含的是一些比较简单的linux系统命令,这些命令由shell程序识别并在shell程序内部完成运行,通常在linux系统加载运行时shell就被加载并...

2018-03-26 19:37:13

阅读数 1197

评论数 0

STM32固件库详解

sTM32标准库可以从官网获得,也可以直接从本书的配套资料得到。本书讲解的例程全部采用1.5.1库文件。以下内容请大家打开STM32标准库文件配合阅读。解压库文件后进入其目录:"STM32F4xx_DSP_StdPeriph_Lib_V1.5.1\"软件库各文件...

2018-03-17 18:55:36

阅读数 5499

评论数 0

嵌入式中的BSP---BSP到底是什么?

(1)什么是BSP?    BSP是板级支持包,(board support package)是介于主板硬件和操作系统之间的一层,应该说是属于操作系统 的一部分,主要目的是为了支持操作系统,使之能够更好的运行于硬件主板。BSP是相对于操作系统而言的,不同的操作系统对应于不同定义形式的BSP,例...

2018-02-03 19:29:36

阅读数 1855

评论数 0

const有哪些作用

const有哪些作用 常类型也称为const类型,是指使用类型修饰符const说明的类型。const是C和C++中常见的关键字,在C语言中,它主要用于定义变量为常类型以及修饰函数参数与返回值,而在C++中还可以修饰函数的定义,定义类的成员函数。常类型的变量或对象的值是不能更新的。 一般...

2018-01-30 14:47:28

阅读数 113

评论数 0

const常量与define宏定义的区别

#define RADIUS 100; const  float   RADIUS = 100; (1) 编译器处理方式不同   define宏是在预处理阶段展开。   const常量是编译运行阶段使用。 (2) 类型和安全检查不同   define宏没有类型,不做任何类...

2018-01-30 14:13:59

阅读数 112

评论数 0

Linux网络编程之UDP

一、概述 UDP 是 User Datagram Protocol 的简称, 中文名是用户数据报协议,是一个简单的面向数据报的运输层协议,在网络中用于处理数据包,是一种无连接的协议。UDP 不提供可靠性的传输,它只是把应用程序传给 IP 层的数据报发送出去,但是并不能保证它们能到达目的地。由于 ...

2017-12-06 15:55:31

阅读数 61

评论数 0

Linux网络编程之TCP编程

一.概述 TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。二.TCP 具有以下特点 1.电话系统服务模式的抽象 2.每一次完整的数据传输都要经过建立连接、使用连接、终止连接的过程 3.可靠、出错重传、且...

2017-12-06 15:44:19

阅读数 84

评论数 0

Linux的内核相关问题

1、简述Linux进程内存空间分为哪几个段?作用分别是什么? 主要分为以下5部分: Text:存放可执行的指令操作,其只读不能写; Bss:存放未初始化的全局变量和静态变量; Data:存放初始化的全局变量和静态变量; Stack:存放临时变量,函数参数等; Heap:存放New/...

2017-12-05 17:15:01

阅读数 61

评论数 0

Linux的线程间通信方式总结

Linux系统中的线程间通信方式主要以下几种: *  锁机制:包括互斥锁、条件变量、读写锁和自旋锁。    互斥锁确保同一时间只能有一个线程访问共享资源。当锁被占用时试图对其加锁的线程都进入阻塞状态(释放CPU资源使其由运行状态进入等待状态)。当锁释放时哪个等待线程能获得该锁取决于内核的调度...

2017-12-05 16:06:33

阅读数 1439

评论数 0

Linux进程间通信方式总结

Linux系统中的进程间通信方式主要以下几种: 同一主机上的进程通信方式    * UNIX进程间通信方式: 包括管道(PIPE), 有名管道(FIFO), 和信号(Signal)    * System V进程通信方式:包括信号量(Semaphore), 消息队列(Messag...

2017-12-05 16:05:27

阅读数 73

评论数 0

Linux进程间通信——使用匿名管道

在前面,介绍了一种进程间的通信方式:使用信号,我们创建通知事件,并通过它引起响应,但传递的信息只是一个信号值。这里将介绍另一种进程间通信的方式——匿名管道,通过它进程间可以交换更多有用的数据。 一、什么是管道 如果你使用过Linux的命令,那么对于管道这个名词你一定不会感觉到陌生,因为...

2017-12-04 15:21:40

阅读数 82

评论数 0

Linux进程间通信——使用命名管道

在前一篇文章——Linux进程间通信——使用匿名管道中,我们看到了如何使用匿名管道来在进程之间传递数据,同时也看到了这个方式的一个缺陷,就是这些进程都由一个共同的祖先进程启动,这给我们在不相关的的进程之间交换数据带来了不方便。这里将会介绍进程的另一种通信方式——命名管道,来解决不相关进程间的通信问...

2017-12-04 15:19:59

阅读数 60

评论数 0

Linux进程间通信——使用消息队列

下面来说说如何用不用消息队列来进行进程间的通信,消息队列与命名管道有很多相似之处。有关命名管道的更多内容可以参阅我的另一篇文章:Linux进程间通信——使用命名管道 一、什么是消息队列 消息队列提供了一种从一个进程向另一个进程发送一个数据块的方法。  每个数据块都被认为含有一个类型,接...

2017-12-04 15:18:20

阅读数 47

评论数 0

Linux进程间通信——使用信号量

这篇文章将讲述别一种进程间通信的机制——信号量。注意请不要把它与之前所说的信号混淆起来,信号与信号量是不同的两种事物。有关信号的更多内容,可以阅读我的另一篇文章:Linux进程间通信——使用信号。下面就进入信号量的讲解。 一、什么是信号量 为了防止出现因多个程序同时访问一个共享资源而引...

2017-12-04 15:15:26

阅读数 31

评论数 0

Linux进程间通信——使用共享内存

下面将讲解进程间通信的另一种方式,使用共享内存。 一、什么是共享内存 顾名思义,共享内存就是允许两个不相关的进程访问同一个逻辑内存。共享内存是在两个正在运行的进程之间共享和传递数据的一种非常有效的方式。不同进程之间共享的内存通常安排为同一段物理内存。进程可以将同一段共享内存连接到它们自...

2017-12-04 15:12:29

阅读数 54

评论数 0

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