单片机最小系统设计与调试Word格式文档下载.docx

上传人:b****2 文档编号:15079759 上传时间:2022-10-27 格式:DOCX 页数:11 大小:233.78KB
下载 相关 举报
单片机最小系统设计与调试Word格式文档下载.docx_第1页
第1页 / 共11页
单片机最小系统设计与调试Word格式文档下载.docx_第2页
第2页 / 共11页
单片机最小系统设计与调试Word格式文档下载.docx_第3页
第3页 / 共11页
单片机最小系统设计与调试Word格式文档下载.docx_第4页
第4页 / 共11页
单片机最小系统设计与调试Word格式文档下载.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

单片机最小系统设计与调试Word格式文档下载.docx

《单片机最小系统设计与调试Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《单片机最小系统设计与调试Word格式文档下载.docx(11页珍藏版)》请在冰豆网上搜索。

单片机最小系统设计与调试Word格式文档下载.docx

兼容MCS51指令系统 

• 

4k可反复擦写(〉1000次)Flash 

ROM

32个双向I/O口

8个中断源

三个16位可编程定时/计数器

7-6。

V的宽工作电压范围

时钟频率0—24MHz

•128x8bit内部RAM

五个外部中断源

两个串行中断

可直接驱动LED

两级加密位

低功耗睡眠功能

内置一个模拟比较放大器

可编程UARL通道

软件设置睡眠和唤醒功能

(三)AT89C51高性能8位单片机资料

单片机主要擅长系统控制,而不适合做复杂的数据处理,在设计单片机最小系统时通常选用AT89C5l、AT89C52、AT89S51、AT89S52(S系列芯片支持ISP功能)等型号的8位DIP-40封装的单片机作为MCU,一个典型的单片机最小系统一般由时钟电路、复位电路、键盘电路、显示电路等部分组成,有时也外扩有片外RAM和ROM以及外部扩展接口等电路。

图1为单片机最小系统结构框图.

图1单片机最小系统结构框图

(四)单片机系统结构介绍

1。

系统时钟电路

单片机内部具有一个高增益反相放大器,用于构成振荡器。

通常在引脚XTALl和XTAL2跨接石英晶体和两个补偿电容构成自激振荡器,系统时钟电路结构如图2所示,可以根据情况选择6MHz、8MHz或12MHz等频率的石英晶体,补偿电容通常选择20-30pF左右的瓷片电容。

图2系统时钟电路

2。

复位电路

单片机小系统采用上电自动复位和手动按键复位两种方式实现系统的复位操作。

上电复位要求接通电源后,自动实现复位操作.手动复位要求在电源接通的条件下,在单片机运行期间,用按钮开关操作使单片机复位。

复位电路结构如图3所示.上电自动复位通过电容C3充电来实现.手动按键复位是通过按键将电阻R2与VCC接通来实现。

图3复位电路

3。

键盘电路

系统利用P1口的P1。

0—P1。

3设置了4个独立按键S2~S5,如图4所示,当键按下时,P1口相应的引脚置为低电平,且与此键相连的发光二极管点亮。

此外,通过8279键盘显示控制芯片还可以扩展编码键盘和显示,图5为利用8279扩展的一个2×

8=16键编码键盘及8个LED的电路。

图4独立按键图5扩展键盘和显示

4。

显示电路

系统设置了8个共阳极LED数码管LED1-LED2,单片机P0口提供段码信号,低电平有效,P0口输出端通过限流电阻R00~R07与数码管的段码数据线相连,用来送出LED数码管的段码数据信号。

单片机P2口提供位选信号,当P2口某位输出低电平时,与此相连的开关三极管导通,对应的数码管点亮,使用三极管用来增强信号的驱动能力,如图6.

此外,为了扩展LCD显示,系统设置了两个LCD接口,如图7,一个用于40点矩阵LCD显示,一个用于128×

64点阵式LCD显示。

图6LED显示电路

图7LCD扩展接口

5.其它

系统还扩展了一片2K位串行CMOSE2PROM24C02,P3。

3和P3。

4分别作为24C02串行数据传输的时钟和数据线,由于只有一个24C02,其三个地址输入脚A0、A1、A2接地,如图8。

此外,系统还设置了一个蜂鸣器电路,如图9,通过P3.7输出音频信号,可使蜂鸣器发声。

由于,本最小系统没有外扩其他存储器和I/O,因此,没有用到地址译码和锁存.

图8扩展E2PROM图9蜂鸣器电路

(五)单片机最小系统主要器件如表1所示:

表1单片机最小系统主要器件

标号

型号、规格

封装

功能说明

U1

89C51

DIP40

CPU主器件

U2

24C02

DIP8

2KE2PROM

LED1,LED2

7SEG—4

4位8段共阳极数码管

Q1~Q9

9012

TO-92A

三极管

D1~D12

φ3MM

DIODE0.4

发光二极管

Y

12MHz石英晶振

单片机时钟晶振

表2主要应用接口

连接目标

J1

输入电源插座

主电源

J2

40点矩阵LCD接口

40点矩阵液晶显示模块

128×

64点阵式LCD接口

64点阵液晶显示模块

Jp1

P0口引出接口

单片机P0口

Jp2

P1口引出接口

单片机P1口

Jp3

P2口引出接口

单片机P2口

Jp4

P3口引出接口

单片机P3口

单片机最小系统电原理图

三、实验要求

(一)认识MCS-51的ROM及片外RAM空间:

认识51系列单片机的程序存储器(ROM)的空间范围;

汇编指令编码在ROM中存储形式;

掌握指令编码和指令编码所在地址的概念;

了解51系列单片机的程序存储器(ROM)固定地址的用途。

认识51系列单片机的片外数据存储器(片外RAM)的地址空间范围;

了解51系列单片机的片外数据存储器的用途;

重点掌握片内片外访问存储器的指令.

(二)认识MCS-51片内RAM空间:

认识51系列单片机片内随机存储器(片内RAM)的空间范围;

认识51系列单片机片内随机存储器的区域划分;

掌握字节地址和位地址的概念;

了解R0~R7寄存器与字节地址的关系。

重点掌握MCS-51系列单片机四个口的用法的位操作.

(三)MCS—51汇编语言设计(编码转换):

用MCS-51汇编指令进行程序设计。

将四位BCD码化为十六位二进制数.(或将四位十六进制数转化为BCD码)。

要求:

在PC机上调试,程序可正确运行并上交源程序清单及程序说明.

(四)键盘输入电路设计/动态显示电路设计:

在实训过程中要求设计按键输入电路、设计显示电路,并画出电路图并编写按键输入子程序。

重点掌握硬件电路的设计及通过编程对电路的控制。

(五)单片机最小系统设计:

单片机最小系统的设计是单片机应用系统设计及开发的基础,通过单片机最小系统设计,使学生对所学的单片机原理及应用课程有更深的理解。

提供电路图和程序清单.重点掌握硬件电路的设计及过程控制。

(六)基于单片机的应用系统设计:

设计出实现某控制目的的应用系统是本实训课的最终实训的结果.实训要求中包括单片机最小系统的设计,按键输入电路设计,显示电路的设计,及应用系统的软件编程.

四、实验数据与结果

实验原程序:

#include〈reg51.h〉

#definecharunsignedchar

#defineuintunsignedint

charcodedis_7[]=/*{0x3f,0x06,0x5b,0x4f,

0x66,0x6d,0x7d,0x07,

0x7f,0x6f,0x77,0x7c,

0x39,0x5e,0x79,0x71};

*/

{0xc0,0xf9,0xa4,0xb0,

0x99,0x92,0x82,0xf8,

0x80,0x90,0xbf,0xbf};

charcodescan_con[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};

chardis[]={0x00,0x00,0x0b,0x00,0x00,0x0b,0x00,0x00};

chardatams50=0x00,con=0x00,con1=0x00,con2=0x00;

chardatatimedata[3]={0x00,0x00,0x00};

sbitkey0=P1^0;

sbitkey1=P1^1;

sbitkey2=P1^2;

voiddelay(intt)

{

uintx,y;

for(x=t;

x〉0;

x--)

for(y=50;

y>

0;

y--);

}

/*delay(intt)

inti,j;

for(i=0;

i<

t;

i++)

for(j=0;

j〈120;

j++);

}*/

scan()

chark;

dis[0]=timedata[0]%10;

dis[1]=timedata[0]/10;

dis[3]=timedata[1]%10;

dis[4]=timedata[1]/10;

dis[6]=timedata[2]%10;

dis[7]=timedata[2]/10;

for(k=0;

k〈8;

k++)

{P2=0x00;

P2=scan_con[k];

P0=dis_7[dis[k]];

//P2=scan_con[k];

delay(10);

//P2=0x00;

keyscan()

EA=0;

if(key0==0)

{delay(10);

while(key0==0);

con++;

TR0=0;

ET0=0;

if(con>

=3)

{con=0;

TR0=1;

ET0=1;

}

if(con!

=0)

{if(key1==0)

{delay(10);

while(key1==0);

timedata[con]++;

if(con==2)

con1=24;

elsecon1=60;

if(timedata[con]〉=con1)

{timedata[con]=0;

}}}

if(con!

{if(key2==0)

while(key2==0);

timedata[con]-—;

if(con==2)con2=23;

elsecon2=59;

if(timedata[con]<

{timedata[con]=con2;

}}}

EA=1;

main()

TH0=0x3c;

TL0=0xb0;

TMOD=0x01;

ET0=1;

TR0=1;

EA=1;

while

(1)

scan();

keyscan();

}}

voidtime_intt0(void)interrupt1

{ET0=0;

TL0=0xb0;

ms50++;

if(ms50==20)

{ms50=0x00;

timedata[0]++;

if(ti

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1