当前位置:文档之家› 51单片机作业

51单片机作业

51单片机作业
51单片机作业

《单片机原理及开发》大作业

设计题目:基于单片机的可演奏电子琴

设计

系别:

专业:

年级:

学号:

学生姓名:

评阅人:

提交时间:年月日

评阅时间:年月日

一、系统功能

电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。本文的主要内容是用AT89c51单片机为核心控制元件,设计一个电子琴。以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有16个按键和扬声器。本系统运行稳定,其优点是硬件电路简单,软件功能完善,控制系统可靠,性价比较高等,具有一定的实用和参考价值。

本系统设计制作一个可演奏的电子琴。综合应用了两项设计。

(1)键盘矩阵识别。即矩阵扫描,显示当前按键。

(2)不同频率音符播放。可以通过按键控制16种发音。

二、硬件设计

本系统由键盘矩阵、LED显示管、扬声器这几个部分组成,LED显示管显示当前按键,扬声器发出对应音符。硬件总体设计图如下:

LED显示模块如图所示,利用AT89c51单片机的P0端口的P0.0-P0.7连接到一个七段数码管的a-h的笔段上,数码管的公共端接电源。

矩阵扫描显示当前按键模块如下:

矩阵扫描扬声器发出对应音符模块如下:

矩阵键盘模块如下:

三、软件设计

本系统的软件总的流程图如下:

系统总程序:

#include

#define uchar unsigned char

#define uint unsigned int

//共阳极数码管编码

uchar code DSY_Table[] =

{ 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,ox80, //0,1,2,3,4,5,6,7,8 0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0xBF }; //9,A,B,C,D,E,F,-//各音符对应的延时

uint code Tone_Delay_Table[] =

{ 64021,64103,64260,64400,64524,64580,64684,64777, 64820,64898,64968,65030,65058,65110,65157,65178 };

sbit BEEP = p3^0; //蜂鸣器

uchar KeyNo; //按键序号

//-------------------------

//延时

//-------------------------

void DelayMS(uchar x)

{

uchar i;

while ( x-- ) for(i = 0;i < 120; i++);

}

//----------------------------------

//键盘矩阵扫描子程序

//----------------------------------

void Keys_Scan()

{

uchar Tmp,k;

//高四位置0,放入四行

p1 = 0x0F;

DelayMS(2);

//按键后00001111将变成0000XXXX,X中1个为0,3个仍为1 //下面的异或操作会把3个1变成0,唯一的0变成1

Tmp = p1 ^ 0x0F;

//判断按键发生于0~3列中的哪一列

switch (Tmp)

{

case 1: k = 0;break;

case 2: k = 1;break;

case 4: k = 2;break;

case 8: k = 3;break;

default:return; //无键按下

}

//低四位置0,放入四列

p1 = 0xF0;

DelayMS(2);

//按键后11110000将变成XXXX0000,X中1个为0,3个仍为1

//下面的表达式会将高四位移至低四位,并将其中唯一的0变为1,其余为0

Tmp = (p1 >> 4)^0x0F;

//对0~3行分别附加起始值0,4,8,12

switch (Tmp)

{

case 1: k += 0; break;

case 2: k += 4; break;

case 4: k += 8; break;

case 8: k += 2; break;

default:return;

}

KeyNo = k;

}

//------------------------------------------------

//定时器0中断程序,不同频率的声音由该中断产生

//------------------------------------------------

void Play_Tone() interrupt 1

{

TH0 = Tone_Delay_Table[ KeyNo ] / 256;

TL0 = Tone_Delay_Table[ KeyNo ] % 256;

BEEP = ~BEEP;

}

//--------------------------------------------

//主程序

//--------------------------------------------

void main()

{

p0 = 0xBF; //初始显示“-”

TMOD = 0x01;

IE = 0x82;

while(1)

{

p1 = 0xF0; //发送扫描码

if (p1 != 0xF0) //如果有键按下

{

Keys_Scan(); //扫描键盘矩阵

p0 = DSY_Table[ KeyNo ]; // 显示按键

TR0 = 1; //启动定时器,根据KeyNo发音}

else

{

TR0 = 0; //停止播放

}

DelayMS(2);

}

}

I/O并行口直接驱动LED显示

把“AT89C51”区域中的P2.0/A8-P2.7/A15端口用8芯排线连接到一位数码管的a-h端口上;要求:P2.0/A8与a相连,P2.1/A9与b相连,P2.2/A10与c相连,……,P2.7/A15与h相连。

在本设计中,数码管的显示通过

P2=DSY_CODE[k]

这句语言来查表并输出,实现音符的显示。

扬声器:

一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。

若要产生音频脉冲,只要算出某一音频的周期(1/频率),再将此周期除以2,即为半周期的时间。利用定时器计时半周期时间,每当计时终止后就将P3.7反相,然后重复计时再反相。就可在P3.7引脚上得到此频率的脉冲。

利用AT89C51的内部定时器使其工作计数器模式(MODE1)下,改变计数值TH0及TL0以产生不同频率的方法产生不同音阶,例如,频率为523Hz,其周期T=1/523=1912μs,因此只要令计数器计时956μs/1μs=956,每计数956次时将I/O反相,就可得到中音DO(523Hz)。

计数脉冲值与频率的关系式是:

N=fi÷2÷fr

式中,N是计数值;fi是机器频率(晶体振荡器为12MHz时,其频率为1MHz);fr是想要产生的频率。

其计数初值T的求法如下:

T=65536-N=65536-fi÷2÷fr

例如:设K=65536,fi=1MHz,求低音DO(261Hz)、中音DO(523Hz)、高音DO(1046Hz)的计数值。

T=65536-N=65536-fi÷2÷fr=65536-1000000÷2÷fr

=65536-500000/fr

低音DO的T=65536-500000/262=63628

中音DO的T=65536-500000/523=64580

高音DO的T=65536-500000/1046=65058

我们要为这个音符建立一个表格,单片机通过查表的方式来获得相应的数据:uint code Tone_Delay_Table[] =

{ 64021,64103,64260,64400,64524,64580,64684,64777,

64820,64898,64968,65030,65058,65110,65157,65178 };

矩阵键盘的按键识别方法:

确定矩阵式键盘上何键被按下介绍一种“行扫描法”。

行扫描法行扫描法又称为逐行(或列)扫描查询法,是一种最常用的按键识别方法,如上图所示键盘,介绍过程如下。

1、判断键盘中有无键按下将全部行线Y0-Y3置低电平,然后检测列线的状态。只要有一列的电平为低,则表示键盘中有键被按下,而且闭合的键位于低电平线与4根行线相交叉的4个按键之中。若所有列线均为高电平,则键盘中无键按下。

2、判断闭合键所在的位置在确认有键按下后,即可进入确定具体闭合键的过程。其方法是:依次将行线置为低电平,即在置某根行线为低电平时,其它线为高电平。在确定某根行线位置为低电平后,再逐行检测各列线的电平状态。若某列为低,则该列线与置为低电平的行线交叉处的按键就是闭合的按键。

四、设计总结

将程序导入AT89C51芯片,调试成功后,可任意弹奏自己想要的旋律。本课题通过制作电子琴,将几个模块很好的融合起来,对使用单片机设计简易电子琴进行了分析,并介绍了基于单片机电子琴统硬件组成。利用单片机产生不同频率来获得我们要求的音阶,最终可随意弹奏想要表达的音乐。说明一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,于是我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可,然后我们利用功放电路来将音乐声音放大,同时通过显示模块来确知自己所弹的音符。

通过这次课程设计,我感觉收获了很多:

首先,通过实践,加深对单片机系列知识及其系统的认识。这个设计题目并不是新的,但从中能体现到一个系统开发设计的过程,足于让我们受益。

第二,通过设计学习到了很多软件的使用。本次设计,软件部分用到了proteus进行硬件设计,用keil4进行程编译。

第三,提高了自己的动手能力。动手在一定程度上反映了一个人的能力,作为当代大学生,社会要求的我们不是只能说而不能做的人才;三能人才标准更让我们清醒地认识到,实际动手能力无比重要。从这次实物制作中,我的动手能力提高了。感谢学院给了我们这次实践动手的机会,更感谢我们的郭老师教会了我们单片机相关知识。

本设计还可以扩展其他功能,比如记忆功能,即可以存储弹奏者所弹奏的音乐且保存,待弹奏完后播放给弹奏者听。还可以做得更加娱乐一点,增加一些彩灯使彩灯随着音调变化而产生不同的样式。

单片机试题库分章节答案解析(C语言)

第1部分单片机概述及数学基础 一、填空题 1、十进制255的二进制是11111111,十六进制是FF 。 2、单片机是将CPU、存储器、特殊功能寄存器、定时/计数器和输入/输出接口电路、以及相互连接的总线等集成在一块芯片上。 3、十进制127的二进制是 1111111,十六进制是7F。 4、+59的原码是 00111011,-59的补码是11000101。 5、十进制数100转换为二进制数是1100100;十六进制数100转换为十进制数是256。 6、十进制数40转换为二进制数是101000;二进制数10.10转换为十进制数是 2. 5。 7、十进制99的二进制是 1100 011,十六进制是63。 二、判断题 (×) 1、AT89S51是一种高性能的16位单片机。8位机 (×) 2、有符号正数的符号位是用1表示的。 三、选择题 ()1、计算机中最常用的字符信息编码是( A) A. ASCII B.BCD码 C. 余3码 D. 循环码 四、简答题 1、何谓单片机?单片机与一般微型计算机相比,具有哪些特点? 第2部分 51单片机硬件结构、存储系统及

I/O接口 一、填空题 1、AT89S51单片机共有 4 个8位的并行I/O口,其中既可用作地址/数据口,又可用作一般的I/O口的是P0。 2、若采用12MHz的晶振,则MCS-51单片机的振荡周期为__1/12 μS__ ,机器周期为____1μS __。 3、AT89S51单片机字长是___8___位,有___40根引脚。 4.89S51单片机是 8位单片机,其PC计数器是16位。 5.若单片机使用的晶振频率是6MHz,那么一个振荡周期是1/6μS,一个机器周期是2μSμS。 6.89S51单片机是+5 V供电的。4.0-5.5V 7.堆栈是内部数据RAM区中,数据按先进后出的原则出入栈的。8.MSC-51系列单片机具有 4 个并行输入/输出端口,其中_P0_口是一个两用接口,它可分时输出外部存储器的低八位地址和传送数据,而_P1__口是一个专供用户使用的I/O口,常用于第二功能的是P3 口。 9.当单片机系统进行存储器扩展时,用P2口的作为地址总线的高八位,用P0作为地址总线的低八位。 10.半导体存储器分为___ROM___和__RAM__两大类,其中前者具有非易失性(即掉电后仍能保存信息),因而一般用来存放系统程序,而后者具有易失性,因而一般用来存放经常变动的用户程序.中间结果等。 11.MCS-51系列单片机对外部数据存储器是采用_DPTR___作为指针的,其字长为_16__位,因而可寻址的数据存储器的最大空间为_64K_字节。

基于-89C51单片机的秒表课程设计汇本

《单片机技术》 课程设计报告 题目:基于MCU-51单片机的秒表设计班级: 学号: 姓名: 同组人员: 指导教师:王瑞瑛、汪淳 2014年6月17日

目录 1课程设计的目的 (3) 2 课程设计题目描述和要求 (3) 2.1实验题目 (4) 2.2设计指标 (4) 2.3设计要求 (4) 2.4增加功能 (4) 2.5课程设计的难点 (4) 2.6课程设计容提要 (4) 3 课程设计报告容 (5) 3.1设计思路 (5) 3.2设计过程 (6) 3.3 程序流程及实验效果 (7) 3.4 实验效果 (16) 4 心得体会 (17)

基于MCS-51单片机的秒表设计 摘要:单片机控制秒表是集于单片机技术、模拟电子技术、数字技术为一体的机电一体化高科技产品,具有功耗低,安全性高,使用方便等优点。本次设计容为以8051 单片机为核心的秒表,它采用键盘输入,单片机技术控制。设计容以硬件电路设计,软件设计和PCB 板制作三部分来设计。利用单片机的定时器/计数器定时和计数的原理,用集成电路芯片、LED 数码管以及按键来设计计时器。将软、硬件有机地结合起来,使他拥有正确的计时、暂停、清零、并同时可以用数码管显示,在现实生中应用广泛。 关键词:秒表;8051;定时器;计数器 1 课程设计的目的 《单片机应用基础》课程设计是学好本门课程的又一重要实践性教学环节,课程设计的目的就是配合本课程的教学和平时实验,以达到巩固消化课程的容,进一步加强综合应用能力及单片机应用系统开发和设计能力的训练,启发创新思维,使之具有独立单片机产品和科研的基本技能,是以培养学生综合运用所学知识的过程,是知识转化为能力和能力转化为工程素质的重要阶段。 2 课程设计题目描述和要求

单片机作业及答案 共13页

1.CS-51系列单片机串行口中断标志TI和R I在执行中断程序后,能否自动清零,这样设 计的意图是什么? 答:不能,由于串行通信的收发电路使用一个中断源,因而,有利于单片机查询是接收中断还是发送中断。同时有利于全双工通信。 2.写出8051单片机的复位及5个中断服务程序的入口地址。 答:(1)复位入口地址:0000H; (2)外部中断0中断服务程序入口地址为0003H; (3)定时器/计数器0中断服务程序入口地址为000BH; (4)外部中断1中断服务程序入口地址为0013H; (5)定时器/计数器1中断服务程序入口地址为001BH; (6)串行口中断服务程序入口地址为0023H。 3.简述MCS-51单片机的工作寄存器的分布结构(包括:几个区、如何选择、每个区几个 寄存器、如何表示)? 答:(1)四个通用寄存器区; (2)通过PSW的RS1、RS0选择: 00--0区、01—1区、10—2区、11—3区; (3)每个区有8个工作寄存器R0—R7; 4.MCS-51单片机的P0口作为一般的I/O口使用时应注意什么? 答:应注意: ①由于P0口的输出级是漏极开路的开漏电路,所以作为一般的I/O口使用时需 接外部上拉电阻; ②P0口的输出级的输出驱动能力,可以驱动8个LS的TTL电路,使用必须确 认是否能驱动的外部电路,否则应加驱动电路; ③由于P0口为准双向口,在读引脚时,应先把口置1。 5.画出MCS-51单片机的三总线图(控制总线应包括三条)并注明几条数据线、几条地址 线、各个控制线的意义。 答:(1) (2)8条数据线、16条地址线 (3)/RD:对外部RAM及I/O口的读允许; /WR:对外部RAM及I/O口的写允许; /PSEN:对外部ROM的读允许; 6.MCS-51系列单片机内部有哪些主要逻辑部件组成?(书) 答:CPU、RAM、程序存储器、定时器、I/O接口、中断系统、串行接口等。 7.简述P3口的特殊专用功能(第2功能)。 答:P3.0----串行通信收;P3.1-----串行通信发;P3.2-----外部中断0;P3.3-----外部中断1;P3.4----- T0的计数输入;P3.5----- T1的计数输入;P3.6-----外部数据区写有效; P3.7-----外部数据区读有效。

完整word版,C语言期末大作业

伊犁师范学院计算机科学系 实验训项目报告 一、小组成员及分工: 姓名:张雁 学号:0908******* 二、指导老师:王慧玲 三、说明程序编制要点,以及自己在项目制作中的难 点及解决办法: 编写的要点:编写N个函数分别用来求平均分;总分按降许序排列;按姓名查找学生的成绩;找出各科 最高分的学生姓名,学号等。编写主函数提供不 同的选择途径。 难点:函数之间的调用,姓名的比较和交换。 解决办法:通过参数的传递;用字符串处理函数。 四、说明项目中所涉及的知识点及难点: 知识点:基础知识,结构体,选择结构程序设计,循环结构程序设计,数组,字符数组,常用的字符串处理函数,函数的调用。 难点:函数的调用,循环程序设计。

五、附录源程序: 注:必须有一定的注释,说明函数功能以及主要语句所起的作用 #include "stdio.h" #include "string.h" #define m 5 void search(); /*声明按姓名查找学生的信息*/ void ave(); /*声明turn out average*/ void paixu(); /* 声明score pai mingci*/ void maxandmin(); /*声明maxandmin score student's number,name and every course score*/ struct student /*声明define a struct*/ { int num; /*student’s number */ char name[10]; int math,english,chinese; /*three course score*/ int no; /* student mingci*/ float sum; float ave; }stu[m]; main() { int i; int q=0,p;

at89s51单片机试题

一、填空题(37 分) 1. AT89S51单片机芯片共有40个引脚,MCS-51系列单片机为8位单片机。 2. AT89S51的异步通信口为全双工(单工/半双工/全双工), 3. AT89S51内部数据存储器的地址范围是00H-7FH,位地址空间的字节地址范围是20H-2FH, 对应的位地址范围是00H-7FH,外部数据存储器的最大可扩展容量是 64K字节。 4. 单片机也可称为微控制器—或嵌入式控制器。 5. 当MCS-51执行MOVC A @A+P指令时,伴随着 PSEN控制信号有效。 6. 当单片机复位时PS辟00 H,这时当前的工作寄存器区是_____________________ 0区, R4所对应的存储单元地址为04 Ho 7. MCS-51系列单片机指令系统的寻址方式有—寄存器寻址、直接寻址、寄存器间接寻址、立即寻址、基址加变址、位寻址。(相对寻址也可) 8. 51系列单片机的典型芯片分别为AT89S51 > 8031、AT89C51 o 9. AT89S51的 P3 口为双功能口; 10. 由AT89S51组成的单片机系统在工作时,EA*引脚应该接—地(或0); 11. AT89S51外部程序存储器的最大可扩展容量是64K ,其地址范围是 0000H - FFFFH。ROMS片2764的容量是 _8 KB,若其首地址为 0000H,则其末地址 1FFFH。 12. AT89S51的中断源有夕卜中断0, T0 ,外中断1,T1,串行口,有_2个中断优先级。 13. AT89S51唯一的一条16位数据传送指令为MOV DPTR data16。 14. LJMP 的跳转范围是64K, AJMP的跳转范围是2K B, SJMP的跳转范围是土128 B (或256B)。 15. 若A中的内容为68H,那么P标志位为 1 o 二、简答题(13分) 1. 采用6MHZ勺晶振,定时2ms用定时器方式1时的初值应为多少?(请给出计算过程)(6 分)答: (1) Ts=2us (216 —X)x 2us=2ms 从而X= 64536 .......... 4分 ⑵ 64536 = FC18H .......... 2 分 2. AT89S51外扩的程序存储器和数据存储器可以有相同的地址空间,但不会发生数据冲突, 为什么?( 4分) 答:

单片机课程设计题目

《单片机原理与应用》课程设计题目 1.基于单片机的电子秒表 本设计以MCS-51系列单片机为核心,采用常用电子器件设计,一个电源开关,两个按键,三位数码管显示,打开电源开关后显示8,每秒循环左移一位,即□□8—>□8□—>8□□—>□□8—>…,按A键开始计时,实时显示所经历的时间,按B键停止计时并显示从开始到当前时刻的时间,要求精确到0.1秒,量程为0~99.9秒。 要求按键输入采用中断方式,按键A接INT0,按键B接INT1。 2.智能电动百叶窗 本设计以MCS-51系列单片机为核心,采用常用电子器件设计,一个电源开关,用一台直流电机控制百叶窗叶片的旋转(正转/反转),用一个光敏电阻传感器测量室内光强度,并用两位数码管显示测量结果,设置三个按键:手动/自动切换、手动正转和手动反转,用一个发光二极管显示手动/自动状态,自动状态时二极管亮。 设置两个极限位置保护行程开关,用于保护百叶窗叶片:当正转到极限位置压下行程开关时,电机停止正转,但还可以反转;当反转到极限位置压下行程开关时,电机停止反转,但还可以正转。 按键输入采用中断方式,按键中断请求信号接INT0. 单片机根据设定光强S1和S2(S2 > S1)和实测光强P控制电机M的动作:当P<=S1时,控制M正转以增加进光量; 当P>S2时,控制M反转以减少进光量; 当S1S+1时,控制R断开电加热回路; 当S-1

单片机试题及答案

单片机原理与接口技术习题答案 习题与思考题1 1-1 微型计算机通常由哪些部分组成?各有哪些功能? 答:微型计算机通常由控制器、运算器、存储器、输入/输出接口电路、输入设备和输出设备组成。控制器的功能是负责从内部存储器中取出指令并对指令进行分析、判断、并根据指令发出控制信号,使计算机有条不紊的协调工作;运算器主要完成算数运算和逻辑运算;存储器用于存储程序和数据;输入/输出接口电路完成CPU与外设之间相连;输入和输出设备用于和计算机进行信息交流的输入和输出。 1-2 单片微型计算机与一般微型计算机相比较有哪些区别?有哪些特点? 答:与通用微型计算机相比,单片机的硬件上,具有严格分工的存储器ROM和RAM和I/O端口引脚具有复用功能;软件上,采用面向控制的指令系统和硬件功能具有广泛的通用性,以及品种规格的系列化。单片机还具备体积小、价格低、性能强大、速度快、用途广、灵活性强、可靠性高等特点。 1-3 简述计算机的工作过程。 答:计算机的工作是由微处理器以一定的时序来不断的取指令、指令译码和执行指令的过程。 1-4 单片机的几个重要指标的定义。 答:单片机的重要指标包括位数、存储器、I/O口、速度、工作电压、功耗和温度。 1-5 单片微型计算机主要应用在哪些方面? 答:单片机的主要应用领域有智能化产品、智能化仪表、智能化测控系统、智能化接口等方面。 1-6 为什么说单片微型计算机有较高的性能价格比和抗干扰能力? 答:因为单片微型计算机主要面向特定应用而设计,设计者在硬件和软件上都高效率地设计,量体裁衣、去除冗余,力争在同样的硅片面积上实现更高的性能,具备较高的性能、价格比;单片机嵌入式系统中的软件一般都固化在存储器芯片或单片机本身中,而不是存贮于磁盘等载体中,另外单片机体积小,可以放入屏蔽设备中,从而使其具有较高的抗干扰能力。 1-7 简述单片机嵌入式系统的定义和特点。 答:单片机嵌入式系统是嵌入到对象体系中的专用计算机系统;其特点是面向特定应用、与各个行业的具体应用相结合、硬件和软件高效率、软件固化在存储器芯片或单片机本身和不具备自举开发能力。 习题与思考题2 2-1 MCS-51单片机内部包含哪些主要功能部件?它们的作用是什么? 答:MCS-51单片机在一块芯片中集成了CPU、RAM、ROM、定时/计数器、多功能I/O口和中断控制等基本功能部件。 单片机的核心部分是CPU,CPU是单片机的大脑和心脏。 程序存储器用于存放编好的程序或表格常数。数据存储器用于存放中间运算结果、数据暂存和缓冲、标志位等。 定时/计数器实质上是加法计数器,当它对具有固定时间间隔的内部机器周期进行计数时,它是定时器;当它对外部事件进行计数时,它是计数器。 I/O接口的主要功能包括:缓冲与锁存数据、地址译码、信息格式转换、传递状态(外设状态)和发布命令等。 中断控制可以解决CPU与外设之间速度匹配的问题,使单片机可以及时处理系统中许多随机的参数和信息,同时,它也提高了其处理故障与应变能力的能力。 2-2 MCS-51单片机的核心器件是什么?它由哪些部分组成?各部分的主要功能是什么? 答:单片机的核心部分是CPU,可以说CPU是单片机的大脑和心脏。它由运算器、控制器和布尔(位)处理器组成。 运算器是用于对数据进行算术运算和逻辑操作的执行部件。

单片机大作业

大连理工大学本科设计报告(单片机原理综合设计) 题目: 课程名称:单片机实验 学院(系):信通学院 专业:通信工程 班级:电通1202 学号:201201203 学生姓名:牛玉博 成绩: 20 15 年 5 月8 日

目录 1.题目及内容 (2) 2.设计思路 (2) 2.1数码管显示 (2) 2.2显示内容转换 (2) 2.3闪烁报警 (2) 2.4温度上下限的设置 (2) 2.5中断程序 (2) 3.相关资料 (3) 4.电路图 (3) 5.程序框图 (4) 5.1中断程序流程图 (4) 5.2主程序流程图 (6) 6.源程序 (6) 7.调试中所遇到的问题 (14) 8.调试解决了的问题. (14) 9.个人体会(总结) (14)

一、题目及内容 用汇编语言模拟电梯运动系统设计程序,要求有完成如下要求:利用zlg7290和pcf8563t以及A/D转换实现下述功能。 1.利用键盘改变显示内容(能读A/D转换值、读取时间), 并且闪烁显示3秒,变成稳定显示。 2.键盘设定温度上限值和下限制,当温度达到上限值后, 显示闪烁;同样,当温度达到下限值后,同样发出报警, 并闪烁。 3.当时间设定值达到设定值后,同样发出报警,并闪烁。 4.时间闪烁与温度闪烁时间长短有区别。 二、设计思路 1.数码管显示 通过ZLG7290B的数码管显示,将数据转换成BCD码,然后通过字形码的对应关系显示,通过中断程序每秒读取一次数据。 2.显示内容转换 通过开关控制显示的内容, SW1低是时间,在SW1时间的情况下,SW2高是年月日;SW1高是温度,在SW1温度情况下,SW2高显示温度上限,SW2低,SW3高显示温度下限 3.闪烁报警 当条件满足报警时,通过调用显示程序,通过控制闪烁控制字,控制数码管相应的位置闪烁。时间报警闪烁一分钟,温度报警一直闪烁。 4.温度上下限的设置 通过键值设置上下限,通过不同按键对应于上限和下限的设置,然后的键值通过一定计算赋给上下限的存储空间。 5.中断程序 两个中断,其中中断0用于每秒显示,中断1用于键值的读取。

AT89C51单片机复习题答案(原创)

单片机综合实验总复习题 ———(yuanchuang:mei、fang)1(a)、程序文件名有什么规定? 答:文件名不能用中文,只能用英文字符、下划线及数字作为文件名,其字符总数不能大于8。 将试验箱与计算机联通有哪些操作步骤?连接失败如何处理 答:复位、编译、调试、运行;重新复位。 1、(b)程序在运行时出现下面提示,要消除提 示框应如何操作? 2、IN6接模拟量,Y4接地址线,写出启动0809进行A/D转换及读入数据的指令 MOV A,#6 MOV DPTR,#0C000H MOVX @DPTR,A MOVX A,@DPTR (注:8个地址线:Y0——8000H Y7——F000H) 3、欲将8255PA、PB口设为输入(方式0),PC口设为输出,写出相关指令。 MOV DPTR ,#0FF2BH MOV A,,#92H MOVX @DPTR,A 4、已知0809参考电压为5V,输入的模拟电压为3.5V,经A/D转换后,对应的数字量是多少? B3H 5、已知00H~FFH对应的0832输出模拟量是 -5V~+5V,若要输出2.5V,写出相应指令。(0832片选端接Y4)。 MOV DPTR ,#0C000H MOV A,#0C0H MOVX @DPTR,A 6、用定时/计数器1延时277.1ms,写出其初始化程序。 MOV TMOD ,#10H MOV TH1,#0C9H MOV TL1,#0E1H MOV R0,#10 SETB EA SETA ET1 SETB TR1 7、编写出软件延时270ms的延时子程序(6mhz晶振) DELAY:MOV R6,#27 DELAY1:MOV R6,#10 DELAY2:MOV R7,#250 DJNZ R7,$ DJNZ R6,DELAY2 DYNZ R5,DELAY1 RET ?8、a、计算下列延时子程序的延时时间。 DELAY: MOV R0, #0 1 DEL: NOP 1 NOP 1 DJNZ R0, DEL 2 RET 2 (1+256*4+2)*2us=2.05ms 9、欲在数码管上显示“-5”,写出相应程序指令。 ORG 0000H AJMP START ORG 0030H START:MOV SCON,#00H MOV SBUF,#0B6H MOV R6,#5 DJNZ R6,$ MOV SBUF,#02H END 10、每0.331s读一次开关,当开关K=0时在数码管 上显示片外7003H单元的数据,K=1时显示片内10H单元的数据。用定时器定时。 ORG 0000H AJMP MAIN ORG 001BH AJMP IN_T0

单片机试题及答案1

一、填空题 已知x的补码数10110111B,x的真值是___201D。 进制转换:134D=__10000110B;=______86H。 32K存储容量对应的地址范围从0000H-7FFFH_。 CPU与内存或I/O接口相连的系统总线通常由_控制总线__、数据总线__、地址总线___等三种信号组成。MCS-51单片机上电复位时PC=_0000_H,SP=_07_H;工作寄存器缺省采用第___________组,这组寄存器的地址范围是从______H~_____H。 MCS-51单片机系列有__5__个中断源,可分为___2__个优先级。上电复位时外部中断0__中断源的优先级别最高。 MCS-51单片机内部RAM共分为______2__个功能区,其高端128个字节的地址空间称为特殊功能寄存器_区,其中仅有________个字节有实际意义。 8255可编程芯片通常作为_并行接口_______扩展之用;8253可编程芯片通常作为_定时器_______扩展之用。8155可编程芯片通常作为_并行接口计数器和存储器______扩展之用;8279可编程芯片通常作为_键盘/显示控制器________扩展之用。 MCS-51 的并行I/O口信息有____读引脚________和____读锁存_________两种读取方法,读一改一写操作是针对并行I/O口内的锁存器进行的。 74LS273通常用来作为简单______输出__________接口扩展;而74LS244则常用来作为简单________输入_______接口扩展。 不带输入数据锁存器的D/A转换器,CPU必须通过______锁存或寄存__器件与D/A转换器传送数据;无三态输出功能的A/D转换器,应当通过_____三态___器件与CPU传送数据。 若用并行口来扩展一个有36只按键的行列式键盘,最少需__12_根I/O线。 74LS138是具有3个输入的译码器芯片,其输出作为片选信号时,最多可以选中___八_块芯片。 MCS-51单片机访问外存储器时利用_____ALE_______信号锁存来自_____P0_____口的低八位地址信号。在MCS-51系统中,当晶振频率采用12MHz时,一个机器周期等于_1__微秒。 8051的T0作为计数器用时,其计数频率不能超过晶振频率的___二十四分之一__。 二、选择题 通常所说的主机是指( C )。 (A)硬件和软件(B)CPU和磁盘存储器 (C)CPU和主存(D)运算器和控制器

AT89S51单片机期末考试复习资料

单片机复习资料 一、填空题 1. 80C51的Po 口作为输出端口时,每位能驱动_8 ________ 个SL型TTL负载。 2. 当80C51引脚ALE _______ 信号有效时,表示从Po 口稳定地送出了低8位地址。 3. 一个机器周期等于_6 _____ 个状态周期,振荡脉冲2分频后产生的时钟信号的周期定 义为状态周期。 4. 在80C51单片机内部RAM中字节地址范围是20H ~ 2FH的区域称为位寻址区,而 字节地址范围是30H ~ 7FH的一段区域称为通用RAM区____________ 。 5. 80C51系列单片机内部数据存储器,即内RAM中位寻址区的地址范围是20H~2FH 工作寄存器区的地址范围是00H“FH。内ROM中寻址区的地址范围是 OOOOH~OFFFH _______ 。 6. 80C51有__4_________ 个并行1\0 口,其中P0~P3是准双向口,所以由输出转输入时必 须先写入_J ____________ 。 7. 80C51串行接口有4种工作方式,这可在初始化程序中用软件填写特殊功能寄存器_ SCON _______ 加以选择。 8. 若不使用80C51片内存器引脚_EA _________ 必须接地。 9. 80C51的堆栈是软件填写堆栈指针临时在片内RAM 内开辟的区域。 10. 80C51有4组工作寄存器,它们的地址范围是00H7FH 。 11. 80C51片内20H~2FH 范围内的数据存储器,既可以字节寻址又可以位寻址。 12. 计算机的系统总线有数据总线、地址总线、控制总线。 13. 80C51在物理有_4 ______ 个独立的存储空间。 14. 程序状态标志字寄存器PSW中的PSW.7的含义是进/借位标志;PSW.0的含义是_ 奇偶标志位。 15. 通常单片机上电复位时PC= 0000H SP= 07H,通用寄存器采用第0组,这一 组寄存器的地址范围是从00H?07H。 16. 单片机的存储器设计采用哈佛结构,它的特点是将程序存储器空间和数据存储器空间在 物理上截然分开,分别寻址 ___________ 。 17. 单片机系统的复位方式有上电复位和手动按键复位两种。 18. 80C51单片机的内部硬件结构包括了:运算器、控制器、存储器、和寄存 器—以及并行I/O 口、串行口、中断控制系统、时钟电路、位处理器等部件,这些部件通过总线相连接。 19. 80C51单片机的P0~P3 口均是准双向I/O 口,其中的P0 口和P2 口除了可以进行数 据的输入、输出外,通常还用来构建系统的地址线和数据线。 20. 80C51单片机的时钟电路包括两部分内容,即芯片内的振荡器___________ 和芯片外跨接的 晶振与电容。 二、判断题 1. 程序存储器和数据存储器的作用不同,程序存储器一般用存放数据表格和程序,而数据 存储器一般用来存放数据。(对) 2. 80C51的特殊功能寄存器分布在60H~80H(80~FFH地址范围内。(错) 3. 8051单片机的P0 口既可以做数据口线又可以做为地址口线。(对)

51单片机课程设计源程序

TIME0_DOWN EQU F0 ;将F0设置为定时器0定时到标志 FINISH_ID EQU 30H ;学号发送标志 KEY_FLAG BIT 00H ;有键按下标志 KEY_LONG BIT 01H ;键长按 KEY_D EQU 31H ;键值存放地址 ADC0809_AD EQU 8000H ;设置ADC0809地址 DAC0832_AD EQU 0000H ;设置DAC0832地址 ADC_FLAG BIT 02H ;设置ADC0809读数据标志 ADC_DATE EQU 32H ;设置ADC0809数据地址 ADC_0 EQU 33H ;ADC0809转化为BCD码后个位存放地址 ADC_1 EQU 34H ;十分位存放地址 ADC_2 EQU 35H ;百分位存放地址 ADC_3 EQU 36H ;千分位存放地址 ORG 0000H ;程序开始,跳转至主程序 0000 020030 LJMP MAIN ORG 0003H ;外部中断0入口0003 020141 LJMP INT0_IN ORG 000BH ;设置定时器0中断入口地址 000B 020132 LJMP TIME0 ORG 0013H ;外部中断1入口0013 020151 LJMP INT1_IN ORG 0030H ;主程序开始地址 0030 758169 MAIN: MOV SP,#69H ;初始化堆栈指针 0033 C292 CLR P1.2 ;显示器清零 0035 D292 SETB P1.2 0037 753000 MOV FINISH_ID,#0 ;将标志位清零 003A C2D5 C LR TIME0_DOWN 003C C200 CLR KEY_FLAG 003E C201 CLR KEY_LONG 0040 753100 MOV KEY_D,#0 0043 C202 CLR ADC_FLAG 0045 753200 MOV ADC_DATE,#0 0048 753300 MOV ADC_0,#0 004B 753400 MOV ADC_1,#0 004E 753500 MOV ADC_2,#0 0051 753600 MOV ADC_3,#0 0054 C291 CLR P1.1 ;初始化键盘,行线置零,有键按下触发中断 0056 C293 CLR P1.3

单片机期末总结材料 最完整版

单片机期末复习总结 1.MCS-51单片机芯片包含哪些主要功能? 8051单片机是个完整的单片微型计算机。芯片部包括下列主要功能部件: 1)8位CPU; 2)4KB的片程序存储器ROM。可寻址64KB程序存储器和64KB外部数据存储器; 3)128B部RAM; 4)21个SFR; 5)4个8位并行I/O口(共32位I/O线); 6)一个全双工的异步串行口; 7)两个16位定时器/计数器;0 8)5个中断源,两个中断优先级; 9)部时钟发生器。 2.MCS-51单片机的4个I/O口在使用上各有什么功能? 1)P0口:8位双向三态端口,外接上拉电阻时可作为通用I/O口线,也可在总线外扩时用作数据总线及低8位地址总线。 2)P1口:8位准双向I/O端口,作为通用I/O口。 3)P2口:8位准双向I/O端口,可作为通用I/O口,也可在总线外扩时用作高8位地址总线。 4)P3口:8位准双向I/O端口,可作为通用I/O口,除此之外,每个端口还有第二功能。实际应用中常使用P3口的第二功能。 P3的第二功能:

【注】:P0口必须接上拉电阻; I/O口准双向:MCS-51单片机I/O口做输入之前要先输出1.这种输入之前要先输出1的I/O口线叫做准双向I/O口,以区别真正的输入,输出的双向I/O口。 3. MCS-51单片机的存储器分为哪几个空间?是描述各空间作用? 8051存储器包括程序存储器和数据存储器,从逻辑结构上看,可以分为三个不同的空间: 1)64KB片片外统一编址的程序存储器地址空间,地址围:0000H~FFFFH,对于8051单片机,其中地址0000H~0FFFH围为4KB的片ROM地址空间,1000H ~ FFFFH为片外ROM 地址空间; 2)256B的部数据存储器地址空间,地址围为00H~FFH,对于8051单片机,部RAM分为两部分,其中地址围00H ~ 7FH(共128B单元)为部静态RAM的地址空间,80H~FFH为特殊功能寄存器的地址空间,21个特殊功能寄存器离散地分布在这个区域;对于8052系列单片机还有地址围为80H~FFH的高128B的静态RAM。 3)64KB的外部数据存储器地址空间:地址围为0000H~FFFFH,包括扩展I/O端口地址空间。

AT89S51单片机

AT89S51单片机

AT89S51 AT89S51单片机的硬件组成 单片机内硬件组成结构如图2-1所示。 图2-1 AT89S51单片机片内结构有如下功能部件和特性: (1)8位微处理器(CPU); (2)数据存储器(128B RAM); (3)程序存储器(4KB Flash ROM); (4)4个8位可编程并行I/O口(P0口、P1口、P2口 和P3口); (5)1个全双工的异步串行口; (6)2个可编程的16位定时器/计数器; (7)1个看门狗定时器; (8)中断系统具有5个中断源、5个中断向量; (9)特殊功能寄存器(SFR)26个; (10)低功耗模式有空闲模式和掉电模式,且具有掉电 模式下的中断恢复模式;

(11)3个程序加密锁定位。 与AT89C51相比,AT89S51有更突出的优点: (1)增加在线可编程功能ISP(In System Program),字节和页编程,现场程序调试和修改更加方便灵活;(2)数据指针增加到两个,方便了对片外RAM的访问过程; (3)增加了看门狗定时器,提高了系统的抗干扰能力;(4)增加断电标志; (5)增加掉电状态下的中断恢复模式。 单片机内各功能部件通过片内单一总线连接而成(见图2-1),基本结构依旧是CPU 加上外围芯片的传统微机结构。 CPU对各种功能部件的控制是采用特殊功能寄存器(SFR,Special Function Register)的集中控制方式。单片机内部件功能 1)CPU(微处理器) 8位的CPU,与通用CPU基本相同,同样包括了运算器和控制器两大部分,还有面向控制的位处理功能。 2)数据存储器(RAM) 片内为128B(52子系列为256B),片外最多可扩64KB。片内128B的RAM以高速RAM的形式集成,可加快单片机运行的速度和降低功耗。 3)程序存储器(Flash ROM) 片内集成有4KB的Flash存储器(AT89S52 则为8KB;AT89C55片内20KB),如片内容量不够,片外可外扩至64KB。

基于51单片机课程设计报告

单片机课程设计 课题:基于51单片机的交通灯设计 专业:机械设计制造及其自动化 学号: 指导教师:邵添 设计日期:2017/12/18 成绩: 大学城市科技学院电气学院 基于51单片机数字温度计设计报告

一、设计目的作用 本设计是一款简单实用的小型数字温度计,所采用的主要元件有传感器DS18B20,单片机AT89C52,,四位共阴极数码管一个,电容电阻若干。DS18B20支持“一线总线”接口,测量温度围-55°C~+125°C。在-10~+85°C围,精度为±0.5°C。18B20的精度较差,为±2°C 。现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等。 本次数字温度计的设计共分为五部分,主控制器,LED显示部分,传感器部分,复位部分,按键设置部分,时钟电路。主控制器即单片机部分,用于存储程序和控制电路;LED显示部分是指四位共阴极数码管,用来显示温度;传感器部分,即温度传感器,用来采集温度,进行温度转换;复位部分,即复位电路,按键部分用来设置上下限报警温度。测量的总过程是,传感器采集到外部环境的温度,并进行转换后传到单片机,经过单片机处理判断后将温度传递到数码管显示。 二、设计要求 (1).利用DS18B20传感器实时检测温度并显示。 (2).利用数码管实时显示温度。 (3).当温度超过或者低于设定值时蜂鸣器报警,LED闪烁指示。 (4).能够手动设置上限和下限报警温度。 三、设计的具体实现 1、系统概述 方案一:由于本设计是测温电路,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行A/D转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来,这种设计需要用到A/D转换电路,感温电路比较麻烦。 方案设计框图如下:

单片机原理及应用课后习题答案第5章作业

第五章中断系统作业 1. 外部中断1所对应的中断入口地址为()H。 2. 对中断进行查询时,查询的中断标志位共有、_ _、、 _ 和_ 、_ _ 六个中断标志位。 3.在MCS-51中,需要外加电路实现中断撤除的是:() (A) 定时中断 (B) 脉冲方式的外部中断 (C) 外部串行中断 (D) 电平方式的外部中断 4.下列说法正确的是:() (A) 同一级别的中断请求按时间的先后顺序顺序响应。() (B) 同一时间同一级别的多中断请求,将形成阻塞,系统无法响应。() (C) 低优先级中断请求不能中断高优先级中断请求,但是高优先级中断请求 能中断低优先级中断请求。() (D) 同级中断不能嵌套。() 5.在一般情况下8051单片机允许同级中断嵌套。() 6.各中断源对应的中断服务程序的入口地址是否能任意设定? () 7.89C51单片机五个中断源中优先级是高的是外部中断0,优先级是低的是串行口中断。() 8.各中断源发出的中断申请信号,都会标记在MCS-51系统中的()中。 (A)TMOD (B)TCON/SCON (C)IE (D)IP 9. 要使MCS-51能够响应定时器T1中断、串行接口中断,它的中断允许寄存器 IE的内容应是() (A)98H (B)84H (C)42 (D)22H 10.编写出外部中断1为负跳沿触发的中断初始化程序。 11.什么是中断?其主要功能是什么? 12. 什么是中断源?MCS-51有哪些中断源?各有什么特点? 13. 什么是中断嵌套? 14.中断服务子程序与普通子程序有哪些相同和不同之处? 15. 中断请求撤除的有哪三种方式? 16. 特殊功能寄存器TCON有哪三大作用? 17. 把教材的P82页的图改为中断实现,用负跳变方式,中断0(INT0)显示“L2”,中断1(INT1)显示“H3”。(可参考第四章的电子教案中的例子) 18.第5章课后作业第9题。 第五章中断系统作业答案 1. 外部中断1所对应的中断入口地址为(0013)H。 2. 对中断进行查询时,查询的中断标志位共有 IE0 、_TF0_、IE1 、 TF1_ 和_TI 、_RI_六个中断标志位。【实际上只能查询TF0、TF1、TI、RI】 3.在MCS-51中,需要外加电路实现中断撤除的是:(D) (A) 定时中断 (B) 脉冲方式的外部中断 (C) 外部串行中断 (D) 电平方式的外部中断 4.下列说法正确的是:(A C D ) (A) 同一级别的中断请求按时间的先后顺序顺序响应。(YES)

大工13秋《单片机原理及应用》大作业

网络教育学院 《单片机原理及应用》大作业 题目:单片机原理及应用 学习中心:重庆万州奥鹏学习中心 层次:专升本 专业:电气工程及其自动化 年级: 2013 年秋 学号: 121511409524 学生姓名:李芳荣

单片机电子时钟设计 一、引言 单片机技术在计算机中作为独立的分支,有着性价比高、集成度高、体积少、可靠性高、控制功能强大、低功耗、低电压、便于生产、便于携带等特点,越来越广泛的被应用于实际生活中。单片机全称,单片机微型计算机,从应用领域来看,单片机主要用来控制系统运行,所以又称微控制器或嵌入式控制器,单片机是将计算机的基本部件微型化并集成在一块芯片上的微型计算机。 二、时钟的基本原理分析 利用单片机定时器完成计时功能,定时器0计时中断程序每隔0.01s中断一次并当作一个计数,设定定时1秒的中断计数初值为100,每中断一次中断计数初值减1,当减到0时,则表示1s到了,秒变量加1,同理再判断是否1min钟到了,再判断是否1h到了。 为了将时间在LED数码管上显示,可采用静态显示法和动态显示法,由于静态显示法需要译码器,数据锁存器等较多硬件,可采用动态显示法实现LED显示,通过对每位数码管的依次扫描,使对应数码管亮,同时向该数码管送对应的字码,使其显示数字。由于数码管扫描周期很短,由于人眼的视觉暂留效应,使数码管看起来总是亮的,从而实现了各种显示。 三、时钟设计分析 针对要实现的功能,采用AT89S51单片机进行设计,AT89S51 单片机是一款低功耗,高性能CMOS8位单片机,片内含4KB在线可编程(ISP)的可反复擦写1000次的Flash只读程序存储器,器件采用高密度、非易失性存储技术制造,兼容标准MCS- 51指令系统及80C51引脚结构。这样,既能做到经济合理又能实现预期的功能。 在程序方面,采用分块设计的方法,这样既减小了编程难度、使程序易于理解,又能便于添加各项功能。程序可分为闹钟的声音程序、时间显示程序、日期显示程序,秒表显示程序,时间调整程序、闹钟调整程序、定时调整程序,延时程序等。运用这种方法,关键在于各模块的兼容和配合,若各模块不匹配会出现

(完整版)AT89S51单片机简介

一、AT89S51单片机简介 AT89S51 为 ATMEL 所生产的可电气烧录清洗的 8051 相容单芯片,其内部程序代码容量为4KB (一)、AT89S51主要功能列举如下: 1、为一般控制应用的 8 位单芯片 2、晶片内部具时钟振荡器(传统最高工作频率可至 12MHz ) 3、内部程式存储器(ROM )为 4KB 4、内部数据存储器(RAM )为 128B 5、外部程序存储器可扩充至 64KB 6、外部数据存储器可扩充至 64KB 7、32 条双向输入输出线,且每条均可以单独做 I/O 的控制 8、5 个中断向量源 9、2 组独立的 16 位定时器 10、1 个全多工串行通信端口 11、8751 及 8752 单芯片具有数据保密的功能 12、单芯片提供位逻辑运算指令 (二)、AT89S51各引脚功能介绍: VCC : AT89S51 电源正端输入,接+5V 。 VSS : 电源地端。 XTAL1: 单芯片系统时钟的反相放大器输入 端。 XTAL2: 系统时钟的反相放大器输出端,一 般在设计上只要在 XTAL1 和 XTAL2 上接上一只石英振荡晶体系统就可以动 作了,此外可以在两引脚与地之间加入 一 20PF 的小电容,可以使系统更稳定, 避免噪声干扰而死机。 RESET : AT89S51的重置引脚,高电平动作, 当要对晶片重置时,只要对此引脚电平 提升至高电平并保持两个机器周期以上 的时间,AT89S51便能完成系统重置的 各项动作,使得内部特殊功能寄存器之

内容均被设成已知状态,并且至地址0000H处开始读入程序代码而执行程序。EA/Vpp: "EA"为英文"External Access"的缩写,表示存取外部程序代码之意,低电平动作,也就是说当此引脚接低电平后,系统会取用外部的程序代码(存于外部EPROM中)来执行程序。因此在8031及8032中,EA引脚必须接低电平,因为其内部无程序存储器空间。如果是使用8751 内部程序空间时,此引脚要接成高电平。此外,在将程序代码烧录至8751内部EPROM时,可以利用此引脚来输入21V的烧录高压(Vpp)。 ALE/PROG: ALE是英文"Address Latch Enable"的缩写,表示地址锁存器启用信号。AT89S51可以利用这支引脚来触发外部的8位锁存器(如74LS373),将端口0的地址总线(A0~A7)锁进锁存器中,因为AT89S51是以多工的方式送出地址及数据。平时在程序执行时ALE引脚的输出频率约是系统工作频率的1/6,因此可以用来驱动其他周边晶片的时基输入。此外在烧录8751程序代码时,此引脚会被当成程序规划的特殊功能来使用。 PSEN: 此为"Program Store Enable"的缩写,其意为程序储存启用,当8051被设成为读取外部程序代码工作模式时(EA=0),会送出此信号以便取得程序代码,通常这支脚是接到EPROM的OE脚。AT89S51可以利用PSEN及RD引脚分别启用存在外部的RAM与EPROM,使得数据存储器与程序存储器可以合并在一起而共用64K的定址范围。 PORT0(P0.0~P0.7): 端口0是一个8位宽的开路汲极(Open Drain)双向输出入端口,共有8个位,P0.0表示位0,P0.1表示位1,依此类推。其他三个I/O端口(P1、P2、P3)则不具有此电路组态,而是内部有一提升电路,P0在当做I/O用时可以推动8个LS的TTL负载。如果当EA引脚为低电平时(即取用外部程序代码或数据存储器),P0就以多工方式提供地址总线(A0~A7)及数据总线(D0~D7)。设计者必须外加一锁存器将端口0送出的地址栓锁住成为A0~A7,再配合端口2所送出的A8~A15合成一完整的16位地址总线,而定址到64K的外部存储器空间。 PORT2(P2.0~P2.7): 端口2是具有内部提升电路的双向I/O端口,每一个引脚可以推动4个LS 的TTL负载,若将端口2的输出设为高电平时,此端口便能当成输入端口来使用。P2除了当做一般I/O端口使用外,若是在AT89S51扩充外接程序存储器或数据存储器时,也提供地址总线的高字节A8~A15,这个时候P2便不能当做I/O 来使用了。 PORT1(P1.0~P1.7): 端口1也是具有内部提升电路的双向I/O端口,其输出缓冲器可以推动4个LS TTL负载,同样地若将端口1的输出设为高电平,便是由此端口来输入数据。如果是使用8052或是8032的话,P1.0又当做定时器2的外部脉冲输入脚,而P1.1可以有T2EX功能,可以做外部中断输入的触发脚位。 PORT3(P3.0~P3.7): 端口3也具有内部提升电路的双向I/O端口,其输出缓冲器可以推动4个TTL负载,同时还多工具有其他的额外特殊功能,包括串行通信、外部中断控制、

相关主题
文本预览
相关文档 最新文档