10矩阵按键实验
矩阵按键介绍
独立按键与单片机连接时,每一个按键都需要单片机的一个 I/O 口,若某单片机系统需较多按键,如果用独立按键便会占用过多的 I/O 口资源。单片机系统中 I/O 口资源往往比较宝贵,当用到多个按键时为了减少 I/O 口引脚,引入了矩阵按键。
无论是独立键盘还是矩阵键盘,单片机检测其是否被按下的依据都是一样的,也就是检测与该键对应的 I/O 口是否为低电平。独立键盘有一端固定为低电平,此种方式编程比较简单。而矩阵键盘两端都与单片机 I/O 口相连,因此在检测时需编程通过单片机 I/O 口送出低电平。检测方法有多种,最常用的是行列扫描和线翻转法。
行列扫描法:先送一列为低电平,其余几列全为高电平(此时我们确定了列数),然后立即轮流检测一次各行是否有低电平,若检测到某一行为低电平(这时我们又确定了行数),则我们便可确认当前被按下的键是哪一行哪一列的,用同样方法轮流送各列一次低电平,再轮流检测一次各行是否变为低电平,这样即可检测完所有的按键,当有键被按下时便可判断出按下的键是哪一个键。当然我们也可以将行线置低电平,扫描列是否有低电平。从而达到整个键盘的检测。
线翻转法: ...
09独立按键实验
按键介绍
按键是一种电子开关,使用时轻轻按开关按钮就可使开关接通,当松开手时,开关断开。开发板上使用的按键及内部简易图如下图所示
按键管脚两端距离长的表示默认是导通状态,距离短的默认是断开状态,如果按键按下,初始导通状态变为断开,初始断开状态变为导通。
通常的按键所用开关为机械弹性开关,当机械触点断开、闭合时,电压信号如下图所示
由于机械点的弹性作用,按键开关在闭合时不会马上稳定的接通,在断开时也不会一下子断开,因而在闭合和断开的瞬间均伴随着一连串的抖动。抖动时间的长短由按键的机械特性决定的,一般为 5ms 到 10ms。按键稳定闭合时间的长短则由操作人员的按键动作决定的,一般为零点几秒至数秒。按键抖动会引起按键被误读多次。为了确保 CPU 对按键的一次闭合仅作一次处理,必须进行消抖。
按键消抖有两种方式:
硬件消抖
RS触发器,图中两个“与非”门构成一个RS触发器。当按键未按下时,输出为0;当键按下时,输出为1。此时即使用按键的机械性能,使按键因弹性抖动而产生瞬时断开(抖动跳开B),只要按键不返回原始状态A,双稳态电路的状态不改变,输出保持为0,不会产生抖 ...
08动态数码管实验
数码管介绍
多位数码管简介
多位数码管,即两个或两个以上单个数码管并列集中在一起形成一体的数码管。当多位一体时,它们内部的公共端是独立的,而负责显示什么数字的段线(a-dp)全部是连接在一起的,独立的公共端可以控制多位一体中的哪一位数码管点亮,而连接在一起的段线可以控制这个能点亮数码管亮什么数字,通常我们把公共端叫做“位选线”,连接在一起的段线叫做“段选线”,有了这两个线后,通过单片机及外部驱动电路就可以控制任意的数码管显示任意的数字了。
数码管动态显示原理
多位数码管依然可以静态显示,但是显示时要么只显示一位数码管,要么多位同时显示相同内容。当多位数码管应用于某一系统时,它们的“位选”是可独立控制的,而“段选”是连接在一起的,我们可以通过位选信号控制哪几个数码管亮,而在同一时刻,位选选通的所有数码管上显示的数字始终都是一样的,因为它们的段选是连接在一起的,送入所有数码管的段选信号都是相同的,所以它们显示的数字必定一样,数码管的这种显示方法叫做静态显示。
而动态显示,就是利用减少段选线,分开位选线,利用位选线不同时选择通断,改变段选数据来实现的。比如在第一次选中第一位数码管 ...
07静态数码管实验
数码管介绍
数码管简介
**数码管是一种半导体发光器件,其基本单元是发光二极管。**数码管也称 LED数码管,不同行业人士对数码管的称呼不一样,其实都是同样的产品。数码管按段数可分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元,也就是多一个小数点(DP),这个小数点可以更精确的表示数码管想要显示的内容;按能显示多少个(8)可分为 1 位、2 位、3 位、4 位、5 位、6 位、7 位等数码管。按发光二极管单元连接方式可分为共阳极数码管和共阴极数码管。
共阳极数码管:是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管,共阳数码管在应用时应将公共极COM 接到+5V,当某一字段发光二极管的不亮。阴极为低电平时,相应字段就点亮,当某一字段的阴极为高电平时,相应字段就不亮
共阴极数码管:是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管,共阴数码管在应用时应将公共极 COM 接到地线 GND 上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮,当某一字段的阳极为低电平时,相应字段就不亮。
数码管实物图
数码管显示原理
不管将 ...
06蜂鸣器实验
蜂鸣器介绍
蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。
压电式蜂鸣器: 主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等组成。多谐振荡器 由晶体管或集成电路构成,当接通电源后(1.5-15V直流工作电压),多谐振荡器起振,输出1.5-5kHZ的音频信号,阻抗匹配器推动压电蜂鸣片发声。
电磁式蜂鸣器:由振荡器、电磁线圈、磁铁、振动膜片及外壳等组成。接通电源后,振荡器产生的音频信号电流通过电磁线圈,使电磁线圈产生磁场,振动膜片在电磁线圈和磁铁的相互作用下,周期性地振动发声。
压电式蜂鸣器发声,需提供一定频率的脉冲信号;电磁式蜂鸣器发声只需提供电源即可
当前开发板上使用的蜂鸣器是无源蜂鸣器,属于压电式蜂鸣器类型。**这里说的有源和无源,并不是指电源的意思,而是指蜂鸣器内部是否含有振荡电路,有源蜂鸣器内部自带振荡电路,只需提供电源即可发声,而无源蜂鸣器则需提供一定频率的脉冲信号才能发声,频率大小通常在 1.5 ...
51单片机 - 05LED实验
51单片机GPIO介绍
51单片机4类GPIO口特点说明:
P0口是漏极开路,要使其输出高电平,必须外接上拉电阻,通常选择4.7K~10K阻值
P0、P1、P2几乎都用做普通I/O口使用,即可作为输入,有课作为输出
P3口即可用作普通I/O口,又可作为第二功能使用,比如窗口、外部中断、计数器等
GPIO概念
GPIO(general purpose intput output)是通用输入输出端口的简称,可以通过软件来控制其输入和输出。51单片机芯片的GPIO引脚与外部设备连接起来,从而实现与外部通讯、控制以及数据采集的功能。不过 GPIO 最简单的应用还属点亮 LED 灯了,只需通过软件控制 GPIO 输出高低电平即可。当然 GPIO还可以作为输入控制,比如在引脚上接入一个按键,通过电平的高低判断按键是否按下。
GPIO引脚图中带有Px.x等字样的均属于GPIO引脚。从引脚图可以看出,GPIO占用了芯片大部分的引脚,共达32个,分为4组,P0、P1、P2、P3,每组为8可IO,而且在P3组中每个IO都具备额外功能,只要通过相应的寄存器设置即可配置对应的附加功能,同一时刻 ...
51单片机 - 04单片机工程模板创建
51单片机工程模板创建
新建工程
创建项目
打开Keil软件,新建一个工程
在保存项目文件窗口,手动创建一个项目目录,例如Teample
选择CPU型号
根据开发板的CPU具体的型号来选择,我们开发板使用的是STC89C52或STC89C516芯片。在Keil软件内找不到这种型号的单片机,因为51内核单片机具有通用性,所以在这里可以任选一款89C52就行,Keil软件的关键是程序代码的编写,而非用户选择什么硬件,在这里我们选择Microchip的AT89C52来说明。具体操作如下:
点击OK键后,弹出如下对话框:
看对话框内容是提示我们是否要将8051启动文件添加到工程中,这里我们选择“否”,原因是Keil C51内已经帮我们完成了启动,所以只需要编写应用程序即可。选择“否”后界面如下:
给工程添加文件
选择**File/New…**或者使用工具栏的图标 来新建一个文件后点击保存,系统会自动定位到我们工程目录,只需要在文件名栏输入新建的文件名即可,一个51单片机工程必须还有且仅有一个main函数,因此将新建的文件命名为main.c(当然也可以 ...
51单片机 - 03单片机最小系统
单片机最小系统构成
若要使系统正常运行,必须确保单片机的最小系统稳定工作。51单片机的最小系统由以下几部分组成:
晶振电路
复位电路
电源电路
晶振电路提供时钟给单片机工作,犹如人的心脏。复位电路提供系统复位操作,当系统出现运行不正常或者死机等情况时,可以通过复位按键重新启动系统电源电路也是非常关键的一个部分,因为单片机对供电电压是有要求的,如果电压过大将烧坏芯片,如果电压过小系统将运行不了。所以选择一个合适稳定的电源电路是非常关键的。
晶振电路
由于单片机正常工作需要一个时钟,因此就需要在其品振引脚上外接晶振(我们使用的 STC89CXX 单片机晶振引脚是18和 19 脚),至于需要多大晶振这就取决于你所使用的单片机,由于我们使用的是51单片机,其时钟频率可在0-40MHZ上运行,一般情况下我们建议选择12M(适合计算延时时间)或者是11.0592M(适合串口通信)。若直接将此晶振接入单片机品振引脚,会发现系统工作不稳定,这是因为品振起振的一瞬间会产生一些电感,为了消除这个电感所带来的于扰,可以在此晶振两端分别加上一个电容,电容的选取需要无极性的,另一端需要共地。根据 ...
51单片机 - 02_51单片机介绍
单片机介绍
单片机简介
一台能够工作的计算机要有这几个部件构成:CPU(进行运算、控制)、RAM(数据存储)、ROM(程序存储)、输入/输出设备,而字啊单片机中,这些部件全部被做到一块集成电路芯片中,所以就称为单片机(也称为微控制器MCU)
51单片机时对所有兼容Intel 8031指令系统的单片机的统称
Intel(英特尔) :i80C31、i80C51、i87C51、i80C32、i80C52、i87C52等
ATMEL(艾德梅尔) :AT89C51、AT89C52、AT89C2051、AT89S51(RC)、AT89S52(RC)等
STC(国产宏晶) :STC89C51、STC89C52、STC89C516、STC90C516等
51单片机引脚图
8051内部结构
STC89CXX芯片介绍
命名规则
STC: 前缀,表示芯片为STC公司生产的产品。其他前缀还有如:AT,I,Winbond,SST等。
8: 表示该芯片为8051内核芯片。
9:表示内部含 FlashE²PROM 寄存器。还有如80C51中0表示内部含有 Mask Rom(掩模ROM)存储器;又 ...