0545、STC89C52RC单片机实验板使用手册指导书
收藏
资源目录
压缩包内文档预览:(预览前20页/共82页)
编号:6126922
类型:共享资源
大小:1.43MB
格式:ZIP
上传时间:2017-11-24
上传人:超****计
IP属地:浙江
4.8
积分
- 关 键 词:
-
stc89c52rc
单片机
实验
试验
使用手册
指导书
- 资源描述:
-
0545、STC89C52RC单片机实验板使用手册指导书,stc89c52rc,单片机,实验,试验,使用手册,指导书
- 内容简介:
-
TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 1单片机实验板使用手册TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 2目录TX-1B 单片机实验板使用手册 .11 WAVE 使用说明 .32 KEIL 的使用 .93 STC-ISP 软件的使用。 .174 Easy 51pro 软件使用 .235 TX-1B 单片机实验板各功能实验详解 .265.1 闪烁灯 .285.2 流水灯 .295.3 单键识别 .325.4 矩阵键盘检测 .345.5 利用定时器和蜂鸣器唱歌 .425.6 模数转换 ADC0804 的应用 .465.7 数模转换 DAC0832 的应用 .505.8 DS18B20 温度测量显示实验 .525.9 59 秒计数器 .605.10 1602 字符液晶显示 .635.11 12864 点阵液晶显示实验 .665.12 串口通讯实验 .78联系方式 .82TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 31 WAVE 使用说明目前应用在单片机的编程语言主要有汇编语言和 C 语言,汇编语言相对 C 语言来说执行效率较高,但编程啰嗦烦杂,程序的可移植性较差,也就是说用户对某个芯片或电路编写的驱动程序只在一套电路板上可使用,而当换个电路后用户又要自己重新编写这套驱动程序。这样就在使用的过程中带来了不少麻烦,其次其指令很多,也不方便记忆,因此我建议初学者直接学习用 C 语言给单片机编程就可以,无需学汇编语言。从我个人就两种语言都会的角度来看,无需知道一点汇编知识直接学 C 语言同样完全可以学好单片机。本实验板所配的例程大部分由 C 语言编写成。因此在本手册中的例程讲解大多采用 C 语言,有各别几个用汇编语言。下面首先讲解 WAVE编译器的使用方法.1. 安装 SETUP 文件(建议安装在 C 盘下) 。2. 复制光盘:软件编译器下的 COMP51 整个文件夹到 C 盘目录下。WAVE 编译程序时用的编译器就在这个文件夹里面,这一步务必做。3. 首次启动后,编辑框内会有几个默认的程序加载,大家不用管它,选择“文件-关闭项目”将它们关闭。4. 如果你想用 WAVE 公司标准的建立工程项目的方法建立你的项目,那么请点击“帮助-WAVE6000 使用手册”这里面讲的非常仔细,对于这种标准程序我在这里就不再讲了。TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 45. 但是如果你要用另一种比较简单的方法快速的建立项目呢,可按照我下面的方法来做,我已使用多年,保证没有问题。5.1 关闭所有已打开的项目5.2 如果你没有硬件仿真器,那只能用软件仿真,请这样设置:点击“仿真器-仿真器设置“分别按以下四幅图设置。TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 55.3 点击新建文件图标后会在编译框内出来一个以 NONAME 为标题的空文本,如下图:TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 6此时的保存按钮为灰色,原因是文本框内没任何字符,所以无法保存任何东西,接下来我就 TX-1B 单片机开发板上点亮与单片机 P1.0口相连的一个发光二极管为例,详细介绍 WAVE 的使用方法:在上图新建的 NONAME1 编辑框内输入以下字符:/本程序为点亮与单片机 P1.0 口相连的发光二极管注意:/后面的字符在 C 语言中为注释,不参与编译,在 C 语言中注释有两种方法:一种方法是加“/“,如果有多行注释,每行都需要加/;第二种方法用“/*这里为注释.*/” ,不加双引号,两个*中间为注释。此时再查看保存按钮已变成可点击状态,我们点击保存按钮,弹出如下对话框,你可以自己先建立一个你自己的文件夹,将刚才建立的文件命名为 test1.c,如下图所示。test1 这个名字你可以自己取,但是后面必须要以.c 结束,因为我们写的是 C 语言程序, (汇编语言,以*.asm 为名) 。写好文件名字后点 SAVE 保存文件,此地会发现编译框内的文字颜色发生了变化,这说明此时的文字内容已经变成可以被编译器所识别的字符。TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 75.4 接着在文本框内再输入以下信息#include sbit light1=P10;void main()light1=0;注意:(1)#include 意思是将 reg51.h 头文件的内容全部放到本行处,该文本内容是 51 单片机各引脚地址及其内部寄存器地址定义,若要看详细的内容请打开 C:COMP51 下 reg51.h 文件查看,该文件夹下还有其他常用到的头文件。(2)sbit light1=P10; 把单片机的 P1.0 口定义成 light1,你可以自己随便取你喜欢的名字,但 sbit *=P10;格式不可变。TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 8(3)void main() 无返回值型主函数,如果还不懂那请自己回去看 C 语言吧。(4) light1=0; 将 P1.0 口置为低电平,在单片机的 C 语言中,高电平用“1“来表示,低电平用”0“来表示。输入完上面的文字后点击编译快捷按钮,如果输入没有错误则会在下面的信息窗口中显示若干个对勾,如下图所示:注意:编写程序时必须是严格的 C 语言格式,在编辑框中不能有多余的字符出现,建议初学者从一开始就要差成一个好的编程习惯和自己的编程风格,要及时的为每一模块函数加上注释说明,不该多写的地方不要多写,不能少写的地方不要少写,这样对将来编写大规模程序有会有很好的帮助。TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 9当点击完编译按钮后若出现上图信息窗口中显示的信息,那说明你写的程序已经成功编译,并且已经在你保存文件的目录下面生成了可往单片机内下载的 BIN 和 HEX 文件。2 KEIL 的使用2.1 安装,请自己仔细看配套光盘里的安装说明。2.2 安装成功后,首次启动界面如下图:2.3 我们先新建一个工程文件,点击“Project-New Project”.选择工程文件要存放的路径,并且输入工程文件名,这里我们用test2 作为工程文件名,这里就不用在后面加.c 了。图片如下:TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 102.4 点击 Save 后弹出选择 CPU 及型号的对话框:2.5 由于本实验板所配的单片是 STC 公司的,而 KEIL 中并没有 STC公司的产品,不过 STC 公司的单片机和传统的 51 单片机是兼容的,TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 11所以这里我们就选择 Atmel 公司的 AT89C52。2.6 新建一个 C51 文件,单击左上角的 New File 如下图所示:2.7 保存新建的文件,单击保存按钮。TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 122.8 输入文件名 test2.c,这里必须以*.c 为文件名。2.9 保存好后我们还需要把文件加入到工程项目中,如下图所示在Source Group1 上单击右键,选择 Add Files to Group Source Group1TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 132.10 然后选择刚才建立的 test2.c 文件,单击 Add。这时我们看左边工程信息窗口中的 Source Group1 下面多了test2.c 文件,这说明添加文件成功了。2.11 在编辑框内输入下列字符TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 142.12 接着我们编译工程项目,如下图点击编译如果在下面的信息窗口中显示 0 Error(s),0 Warning(s).则说明没有错误,已经成功编译。2.13 接下来我们生成.HEX 文件,如下图点击 Option for Target.TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 152.14 在下图我们单击 Output 选中 Create HEX File,再单击 OK。2.15 再次点击编译按钮就会在文件目录下生成 test2.hex 文件。到此为止,您已经学会了如何使用 WAVE 和 KEIL 编译文件并生成能够TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 16往单片机中烧写的 BIN 和 HEX 文件了,下面我们讲解如何使用 STC-ISP 和 easy 51 Pro 给单片机下载程序。3 STC-ISP 软件的使用。3.1 安装光盘软件目录下的 stc_isp_3.1 文件夹中的安装文件注意:有些用户无法正常安装此程序,这可能跟你的系统中原来安装的某些程序有冲突,你可以按照以下的方法来安装。1.打开光盘软件目录下的 STC 解压版将里面所有的以 DLL 和 OCX 为后缀名的文件复制到系统 windowssystem32 下面. 替换此目录下原来有的,但大小为 0 的文件.如果没有就直接复制那里.如果复制的时候说*文件正在被使用,那就把电脑重起一下再重新复制一次。 (如果你的系统没有显示后缀名,请先在文件夹选项中选中显示文件后缀名,这我就不教你了) ,如果还不能成功,那最后最绝的一招,重装系统。如下图类似这样的文件即为 DLL 和 OCX 为后缀名的文件1. 然后直接双击该目录下的 STC-ISP V29 Beta5 可执行文件,如图:TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 173.2 安装完软件后,启动,首次设置时只需注意芯片的选择,在左上角下拉框中选择 STC89C52RC,一般的台式机大多只有一个串口,所以 COM 栏就选择 COM1,如果使用别的串口那就选择相应的串口号,其它全部使用默认,不明白时最好不要乱改,不然可能会把芯片锁死,以后就用不了了。总体设置如下图:注意:使用笔记本的用户如果笔记本没有串口,那请你去电子市场购买 USB 转串口线,一般价格是五六十元,但往往便宜的东西总是不太好用,我建议你买的时候向商家问问,要好点的那种,因为STC 公司下载软件对这种虚拟的串口比较挑剔,使用这种线的时候TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 18建议用户把波特率改为 9600.3.3 软件安装设置完后,接下来我们讲如何连接硬件实验板,先看下面的连接图,用手机照的不是非常清楚,清注意下面的讲解。首先要保证实验板上插的是 STC89C52RC 单片机,左上方的 USB数据电缆线一定要与计算机相连,它一方面实现 USB 通信,更重要的是给整块电路板提供电源。当连好 USB 线后,按下左上方的开关,会看到开关右边有个电源指示灯会亮。左下方的九孔串口线与计算机串口相连, (上图板上串口旁边有个指示灯是亮的,但这并不能说明你的计算机串口是好的或是串口线已经成功连接,这个指示灯的作用主要是下载程序的时候指示正在下载,或是单片机与计算机进行双向串行通信的时候小灯会不停的闪烁,告诉用户通信正在进行。若为单向只发送数据或只接收数据,小灯不一定会亮,这里请用户注意)3.4 连接好了硬件也设置好了软件,下面就要下载程序了,TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 19如下图点击软件界面上的 Open File 打开对话框,将刚才我们用 WAVE 编译生成的 test1.hex 文件选择,大家注意下图中选择框内第一个文件没有后缀名,它实际上是 test1.bin,这两个文件是一样的,只是后者比前者要小的多,在下载比较大的程序时我们常用后者。选择好后点击 Open TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 203.5 选择好后,要先把实验板上的电源关掉,因为 STC 的单片机内有引导码,在上电的时候会与计算机自动通讯,检测是否要执行下载命令,所以要等点完下载命令后再给单片机上电。然后点击如下图的 Download/下载钮,接着按下实验板上电源给单片机上电,上电后的图片如下所示:TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 21若也现上述图片,则说明已经给单片机成功下载了程序,并且已经加密,别人无法破解。成功下载程序后实验板如下图所示,注意左上方八个流水灯中最上方那个点亮了。TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 224 Easy 51pro 软件使用这款软件是专门针对产品附件中附带的 AT89S52 单片机下载程序的软件,其实如果你不想用这块片子也可以,STC 的下载软件可在任何一台电脑上使用,可这款软件就没那么乖了,原来设计产品的时候也没想着用 STC 的芯片,后来发现这款芯片非常的好用,就换了这款,AT89S52 也就一起送给用户了,如果你的电脑经过我下面讲的这些步骤后仍然无法使用,你也别难过,这款芯片就这样,反正也是我送你的,你就安心用 STC 单片机吧。4.1 进入电脑主板 BIOS,将并口模式设置为 ECP 模式,如果没有ECP 模式那就不用更改了。确保实验板上的单片机是 AT89S52。4.2 接好 USB 电缆线和 ISP 下载线(电脑端为并口 25 针,单片机实验板上为白色六针插座)这时连不连串口线都没关系。4.3 打开附件光盘中软件目录下的 ISP 下载器文件夹下的 easy 51pro.exe,首次设置如下,每次更改设置后都要把软件关闭,再重新打开更改才能生效。TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 234.4 打开单片机开发板上的电源,如果电源接通电源指示灯会亮,这时有可能连复位指示灯也会亮,这是由计算机并口的电流反窜到实验板上的原因。我们不用理它,对下载程序没有影响,但是当成功下载完程序后最好把实验板上的 ISP 下载线与计算机断开,不然程序可能会运行不正常。点击检测器件,如果你的计算机并口正常,那么会显示如下图所示信息。如果没有检测到器件,那你就省点心,还是使用STC89C52 吧!4.5 在检测到器件的前提下,接下来先擦除器件,再选打开文件,将你用 WAVE 或 KEIL 编译好的 BIN 或 HEX 文件选中,点击写器件,完成烧写。到此为止已经非常详细的讲述了如何用 WAVE、KEIL 编译源程序生成下载文件,如何使用 STC-ISP、Easy 51pro 下载 bin 和 hex 文TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 24件。TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 255 TX-1B 单片机实验板各功能实验详解注意:在我要讲具体实验之前这里有必要先介绍一下本实验板上用到的一些元件的操作方法,对于一个电子制作者或者是爱好者来说学会怎么样搜索自己需要元件的资料是非常重要的,现在市场上各种各样的芯片非常的多,能实现同一个功能的芯片也有很多种,世界各大芯片制造公司(除了中国)都有生产。所以我们不可能把芯片的功能、名称及详细使用方法都记全,也没有这个必要,但是必须要知道在你需要实现某个功能的时候怎么样才能找到合适的芯片,下面先给大家推荐两个搜索网TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 26站:中国最大的搜索网站和世界最大的搜索网站,上面几乎可以搜到你需要的任何信息,大家一定要充分利用身边可利用的资源,问别人是最没有办法的办法,也是最无能的体现。闲谈:我常在 QQ 群里碰到问类似这样问题的人“谁有 AD590的资料?”一看就知道是个非常菜的鸟,遇到这种问题我理解当事人当时的心情,所以很热情的告诉他“上 下载” ,大约半个小时后刚才提问题的那位菜先生又来一句“终于找到了,不过全是英文的,谁有它的中文资料啊?” ,我只好告诉他“什么时候中国能制造自己的芯片了就有中文资料了,你加油吧!”现在可以明确的告诉大家,芯片的资料基本全是英文的,大家学了这么多年英文,现在正是你用它的时候了,对于电子爱好者看芯片的英文介绍就应该达到看汉语一样的水平,建议大家以后装软件全装英文版的,看电影全看国外原声的,最好连自己的电脑操作系统也装英文版的。说正事,给大家介绍两个查芯片资料的网站: 这里的芯片资料相当的全,如果没要找到你要的那请看下面这个网站,这里有世界上所有的芯片资料,并且每天更新一次。 TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 27锁存器(74HC573):顾名思义,就是把输入端的数据锁存(或送)到输出端,请看下图中的 U3 元件,第 11 角(锁存端)为高电平的时候,右边 D0-D7 的输入与左边 Q0-Q7 的输出是直通的,就是说,右边是什么电平,左边就是什么电平,可以把它当作不存在。当第 11 角为低电平的时候,左右两端就被断开了,无论输入端怎么变化,输出端都不会变化,当第 11 角由低电平变为高电平的一瞬间,输入端的数据会被立即送到输出端,如果此时我们再次把第 11 角设置为低电平,那么以后当输入端无论再怎么变化,输出端都不会变化而是保持刚才下降沿时输入端的值,这样就达到了锁存数据的目的,这也就是所谓的总线设计思路,一个 8 位的数据线加一个锁存器后就可以接多个元件,当选通哪个元件的片选,就送数据给那个元件。先说这个元件吧,以后用到别的元件我们再解释。下面开始讲解例程。5.1 闪烁灯实验要求点亮与单片机 P1.0 口相连的发光二极管,延时 0.2S,然后熄灭,延时 0.2S,再点亮,如此循环下去。实验目的初步了解单片机 IO 口输出高低电平的作用,延时函数的时间TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 28估算。硬件电路源代码#include/*上面这行是一个文件包含处理。所谓文件包含是指一个文件将另外一个文件的内容全部包含进来这里的程序虽然只写了一行,但 C 编译器在处理的时候却要处理几十或几百行,这里包含reg51.h 的目的在于本程序要使用 P1 这个符号,而 P1 是在 reg51.h这个头文件中定义的。大家可以在编译器目录下面用记事本打开这个文件看看。*/sbit P1_0=P10; /定义 IO 口这步的目的是让编/ 译器知道 P1_0 代表的就是单片机的P1.0 口void delay02s(void) /延时 0.2 秒子程序TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 29unsigned char i,j,k; /定义 3 个无符号字符型变量。for(i=20;i0;i-) /三个 FOR 循环用来延时,这里为for(j=20;j0;j-) /什么是 0.2S 大家可以用 WAVEfor(k=248;k0;k-); /高断点仿真一下,就可知道大概 /是 0.2S 了。void main(void) /每一个 C 语言程序有且只有一个主函数,while(1) /循环条件永远为真,以下程序一直执行下去。P1_0=0; / I/O 口 P1.0 输出低电平,小灯被点亮。delay02s(); /延时经过 0.2 秒。P1_0=1; / I/O 口 P1.0 输出高电平,小灯熄灭。delay02s(); /延时经过 0.2 秒。5.2 流水灯实验要求单片机 P1 口相连的 8 个发光二极管中的一个循环移位点亮,同时蜂鸣器发出滴滴的响声。蜂鸣器用一 PNP 三极管驱动,集电极( C 极)通过蜂鸣器线圈接 5V 电源,基极(B 极)是控制端,发射极(E 极)接地,当三极管 C,B 极 PN 结正偏时,PN 结导通,即 B 极为低电平时,三极管导通,蜂鸣器响。再不明白去看模电书。实验目的掌握循环移位的工作原理,学会使用封装好的函数库,延时函数的时间估算。TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 30硬件电路源代码/flow light and beep #include #include /后面要用到它里面的_crol_(k ,l)函数/这个函数的意思是把一个字符变量 k 循环左移 l 位,关于它的说明TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 31/请查看安装 KEIL 目录下的 E:Program FilesKeilC51HLP 文件夹/里面的 c51lib,这个文件里面有各种用 C 语言封装好的函数库,我/们在以后使用其中某些函数时可以直接使用而自己不必再写。unsigned char a,b,k,j; /定义四个字符变量sbit beep=P23; / 定义蜂鸣器的接口void delay10ms() /延时字程序,大约延时 10msfor(a=100;a0;a-)for(b=225;b0;b-);void main()k=0xfe; /先给 k 一个初值 11111110 等待移位while(1)delay10ms();beep=0; /打开蜂鸣器delay10ms(); /让它响 10msbeep=1; /关闭蜂鸣器 j=_crol_(k,1); /把 k 循环左移一位k=j; /把移完的值再送给 kP1=j; /同时把值送到 P1 口点亮发光二极管5.3 单键识别实验要求每按一次独立键盘的 S2 键,与 P1 口相连的一个发光二极管往下移动一位。注意:关于按键去抖动的解释,我们在手动按键的时候,由于机械TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 32抖动或是其它一些非人为的因素很有可能会造成误识别,一般手动按下一次键然后接着释放,按键两片金属膜接触的时间大约为 50ms左右,如果我们再首次检测到键被按下后延时 10ms 左右再去检测,这时如果是干扰信号将不会被检测到,如果确实是有键被按下,则可确认。以上为按键识别去抖动的原理。实验目的独立按键的识别。硬件电路源代码#include sbit BY1=P34; /定义按键的输入端 S2 键unsigned char count; /按键计数,每按一下,count 加 1unsigned char temp;unsigned char a,b;void delay10ms(void) /延时程序unsigned char i,j;for(i=20;i0;i-)for(j=248;j0;j-);TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 33key() /按键判断程序if(BY1=0) /判断是否按下键盘,当单片机上电时所有 IO 口为/高电平,S2 键一端接地另一端接 P3.4,所以当键被按下时 P3.4 口/直接接地,此时检测 P3.4 肯定为低电平。delay10ms(); /延时,软件去干扰if(BY1=0) /确认按键按下count+; /按键计数加 1if(count=8) /计 8 次重新计数count=0; /将 count 清零while(BY1=0);/等待按键释放,如果键未释放则一直在此等待。move() /广告灯向下移动移动函数a=temp(8-count);/ _crol_()函数P1=a|b;main()count=0; /初始化参数设置temp=0xfe;P1=0xff;P1=temp;while(1) /永远循环,扫描判断按键是否按下TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 34key(); /调用按键识别函数move(); /调用广告灯移动函数5.4 矩阵键盘检测实验要求依次按下 4*4 矩阵键盘上从第 1 到第 20 个键,同时在六位数码管上依次显示0、1、2、3、4、5、6、7、8、9、A、B、C 、D、E、F。说明:本实验板上数码管为共阴极。静态数码管显示原理:这里就共阴极数码管显示原理进行讲解,一位数码管内一共有 8 个发光二极管,对共阴极来说其 8 个发光二极管的阴极在数码管内部全部接在一起,也就是“共阴”说法的来源,阳极是独立的,设计电路时一般把阴极接地,当我们从外部给任一个阳极加一个高电平时这个发光二极管就亮了,如果想要出一个 8 字,并且把右下角的小数点也点亮的话,那可以给 8 个阳极全总送高电平,想出几就给相对应的发光二极管送高电平,因此我们在显示数字的时候首先做的就是给 0-9 十个数字编好码,在要它亮什么数字的时候直接把这个编码送到它的阳极就行了。另外说一下,一般的数码管每一段亮至少需要 10 个毫安的电流,而单片机的 IO口送不出如此大的电流,所以我们需要加数码管的驱动电路,可以用上拉电阻的方法,也可以使用专门的驱动芯片,本实验板使用的TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 3574HC573,它最大可以输出 500 毫安的电流,足够让数码管点亮了。本实验板上的六位数码管上相同段(段指 a,b,c,d,e,f,g,h)全部是接在一起的,其中每一个位(阴极)是独立的,所以在做静态显示的时候所有的数码管只能显示相同的数字,当然你可以控制显示几位,如果你让它们静态不同的数字那就得给每一个数码管加一套驱动电路了。但这样做是没有必要的,后面我们会讲到关于数码管动态显示原理。下面给出本实验板共阴极数码管数字编码矩阵键盘的四行分别与 P3.0-P3.3 连接,四列分别与 P3.4-P3.7连接。实验目的学会矩阵键盘的检测,掌握数码管静态显示原理。硬件电路键盘电路见 5.3TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 36源代码/4*4 键盘检测程序,按下键后相应的代码显示在数码管上#includesbit beep=P23; /蜂鸣器接口sbit dula=P26; /控制数码管段选的锁存器锁存端sbit wela=P27; /控制数码管位选的锁存器锁存端unsigned char i=100;unsigned char j,k,temp,key;void delay(unsigned char i) /可自定义延时长短的延时函数 /当 i=10 时大约为 10 毫秒for(j=i;j0;j-)for(k=125;k0;k-);TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 37unsigned char code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d, 0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71; / 0-F 编码display(unsigned char num) / 显示子函数P0=tablenum; /将第 num 个显示编码送 P0 口dula=1; /一个下降沿将数据锁存dula=0;P0=0xc0; /位选通全部的数码管wela=1; /一个下降沿将数据锁存wela=0;void main()dula=0; /使两个锁存器不可直通wela=0;while(1) /进入检测总循环P3=0xfe; /给 P3.0 送低电平,其余为高电平temp=P3; /把 P3 口数据读回来temp=temp&0xf0; /把 P3 口与 11110000 相与if(temp!=0xf0) /如果有键按下刚一定不相等,于是进入/ 下一步检测delay(10); /延时去抖动if(temp!=0xf0) /再次判断是否有键按下temp=P3; /判断为有,再次读 P3 口数据switch(temp) /因为我们刚才是将第一行置的低 /在这里再判断是第几列case 0xee: /如果 temp=0xee 则为第一行和第一列key=0; /的交叉点,由此我们知道是矩阵键盘break; /上的第一个键被按下,我们给key=0。case 0xde: /以后依此类推TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 38key=1;break;case 0xbe:key=2;break;case 0x7e:key=3;break;while(temp!=0xf0) /这段程序是检测按键是否被释放temp=P3; /如果没有释放就一直等待并且temp=temp&0xf0;beep=0; /蜂鸣器一直响beep=1; /释放后关闭蜂鸣器display(key); /显示按下相应键值的数据P1=0xfe; /将第一个发光二极管点亮(我写 /程序的时候测试用的)P3=0xfd;temp=P3;temp=temp&0xf0;if(temp!=0xf0)delay(10);if(temp!=0xf0)temp=P3;switch(temp)case 0xed:key=4;break;TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 39case 0xdd:key=5;break;case 0xbd:key=6;break;case 0x7d:key=7;break;while(temp!=0xf0)temp=P3;temp=temp&0xf0;beep=0;beep=1;display(key);P1=0xfc;P3=0xfb;temp=P3;temp=temp&0xf0;if(temp!=0xf0)delay(10);if(temp!=0xf0)temp=P3;switch(temp)case 0xeb:key=8;TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 40break;case 0xdb:key=9;break;case 0xbb:key=10;break;case 0x7b:key=11;break;while(temp!=0xf0)temp=P3;temp=temp&0xf0;beep=0;beep=1;display(key);P1=0xf8;P3=0xf7;temp=P3;temp=temp&0xf0;if(temp!=0xf0)delay(10);if(temp!=0xf0)temp=P3;switch(temp)case 0xe7:TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 41key=12;break;case 0xd7:key=13;break;case 0xb7:key=14;break;case 0x77:key=15;break;while(temp!=0xf0)temp=P3;temp=temp&0xf0;beep=0;beep=1;display(key);P1=0xf0;5.5 利用定时器和蜂鸣器唱歌实验要求用单片机的 P2.3 口输出不同占空比的方波来控制与它相连的蜂鸣器,当方波的占空比不同时蜂鸣器发出的音调就不同,由此根据歌曲的音调编程实现让蜂鸣器唱歌。TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 42占空比:一个周期中,高电平的长度比上总周期的长度的值再乘上100%。标准方波的占空比为 50%.实验目的学会利用单片机的定时器,掌握蜂鸣器的发声操作。硬件电路源代码#include reg51.hunsigned char Count;sbit _Speak =P23 ; /蜂鸣器控制脚unsigned char code SONG = /祝你平安0x26,0x20,0x20,0x20,0x20,0x20,0x26,0x10,0x20,0x10,0x20,0x80,0x26,0x20,0x30,0x20,0x30,0x20,0x39,0x10,0x30,0x10,0x30,0x80,0x26,0x20,0x20,0x20,0x20,0x20,0x1c,0x20,0x20,0x80,0x2b,0x20,0x26,0x20,0x20,0x20,0x2b,0x10,0x26,0x10,0x2b,0x80,0x26,0x20,0x30,0x20,0x30,0x20,0x39,0x10,0x26,0x10,0x26,0x60,0x40,0x10,0x39,0x10,0x26,0x20,0x30,TX-1B 单片机实验板使用手册山东单片机爱好者网 / Email: QQ:88378239 430x20,0x30,0x20,0x39,0x10,0x26,0x10,0x26,0x80,0x26,0x20,0x2b,0x10,0x2b,0x10,0x2b,0x20,0x30,0x10,0x39,0x10,0x26,0x10,0x2b,0x10,0x2b,0x20,0x2b,0x40,0x40,0x20,0x20,0x10,0x20,0x10,0x2b,0x10,0x26,0x30,0x30,0x80,0x18,0x20,0x18,0
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。