AD转换及数码管显示单片机课程设计说明书.docx

上传人:b****6 文档编号:8117709 上传时间:2023-01-28 格式:DOCX 页数:18 大小:486.69KB
下载 相关 举报
AD转换及数码管显示单片机课程设计说明书.docx_第1页
第1页 / 共18页
AD转换及数码管显示单片机课程设计说明书.docx_第2页
第2页 / 共18页
AD转换及数码管显示单片机课程设计说明书.docx_第3页
第3页 / 共18页
AD转换及数码管显示单片机课程设计说明书.docx_第4页
第4页 / 共18页
AD转换及数码管显示单片机课程设计说明书.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

AD转换及数码管显示单片机课程设计说明书.docx

《AD转换及数码管显示单片机课程设计说明书.docx》由会员分享,可在线阅读,更多相关《AD转换及数码管显示单片机课程设计说明书.docx(18页珍藏版)》请在冰豆网上搜索。

AD转换及数码管显示单片机课程设计说明书.docx

AD转换及数码管显示单片机课程设计说明书

题目及要求………………………………………………………1

第1章单片机最小系统……………………………………2

1.1STC89C51RC单片机…………………………………………………2

1.2电源电路………………………………………………………2

1.3时钟电路………………………………………………………2

1.4复位电路………………………………………………………2

第2章硬件设计………………………………………………5

2.1数码管…………………………………………………5

2.2A/D转换器…………………………………………………5

2.3电路设计…………………………………………………5

第3章软件设计………………………………………………5

3.1程序流程图…………………………………………………5

3.2程序设计………………………………………………………5

第4章应用系统实现………………………………………………5

4.1硬件连接…………………………………………………5

4.2程序下载………………………………………………………5

参考文献…………………………………………………………6

题目及要求

 

题目:

AD转换及数码管显示

要求:

使用C语言编程;

使用ADC0809通道4,将电位计输入的模拟量转换为数字量;

并将转换后的数字量显示在三位数码管上。

 

第1章单片机最小系统

1.1STC89C51RC单片机

STC89C51RC/RD+系列单片机是宏景科技推出的新一代超强抗干扰、高速、低功耗的单片机,指令代码完全兼容传统8051单片机,12时钟机器周期和6时钟机器周期可任意选择,最新的D版内部集成MAX810专用复位电路。

特点:

(1).增强型6时钟机器周期和12时钟机器周期8051CPU

(2).工作电压:

5.5V—3.4V(5V单片机)

(3).工作频率范围:

0—40MHz,相当于普通8051的0—80MHz.实际工作频率可达48MHz.

(4).用户应用程序空间4K/8K/16K/16K/20K/32K/64K字节

(5).片上集成1280字节、512字节RAM

(6).通用I/O口(32、36个),复位后:

P1/P2/P3/P4是准双向口/弱上拉(普通8051传统I/O口)P0口是开漏输出,作为总线扩展用时,不用加上拉电阻,作为I/O口用时,需加上拉电阻。

(7).EEPROM功能

(8).看门狗

(9).内部集成MAX810专用复位电路(D版才有),外部晶振20M以下时,可省外部复位电路

(10).共3个16位定时器/计数器,其中定时器0还可以当成2个8位定时器使用

(11).外部中断4路,下降沿中断或低电平触发中断,PowerDown模式可由外部中断低电平触发中断方式唤醒

(12).通用异步串行口(UART),还可用定时器软件实现多个UART

(13).工作温度范围:

0—7℃/—40~+85℃

 

图1-1STC89C51RC/RD单片机

1.2电源电路

本例在Vcc端加载+5V电源。

1.3时钟电路

时钟电路的两端接到单片机的18(XTAL2)和19(XTAL1)引脚,晶振采用12MHZ,两端各接一个30pF的电容。

如图1—3所示

图1-3时钟电路

1.4复位电路

复位电路复位电路有两种:

上电自动复位和上电/按键手动复位。

在这里我采用上电自动复位,如图所示一般R1选10K欧姆,C3选10uF,C3另一端施加+5V电源。

图1-4复位电路

第2章硬件设计

2.1数码管

本题用的是四位一体8段共阳极数码管。

其中引脚12、9、8、6为共阳端;11、7、4、2、1、10、5、3、分别控制A、B、C、D、E、F、G、DP的二极管的亮灭。

如图所示

图2-1四位一体8段共阳极数码管

2.2A/D转换器

ADC0809是带有8位A/D转换器、8路多路开关以及微处理机兼容的控制逻辑的CMOS组件。

它是逐次逼近式A/D转换器,可以和单片机直接接口。

1.ADC0809的内部逻辑结构

由下图可知,ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个A/D转换器和一个三态输出锁存器组成。

多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用A/D转换器进行转换。

三态输出锁器用于锁存A/D转换完的数字量,当OE端为高电平时,才可以从三态输出锁存器取走转换完的数据。

 

图2-2-1ADC0809的内部逻辑结构

2.ADC0809引脚结构如图2-2-2

ADC0809各脚功能如下:

D7-D0:

8位数字量输出引脚。

IN0-IN7:

8位模拟量输入引脚。

VCC:

+5V工作电压。

GND:

地。

REF(+):

参考电压正端。

REF(-):

参考电压负端。

START:

A/D转换启动信号输入端。

ALE:

地址锁存允许信号输入端。

(以上两种信号用于启动A/D转换).

EOC:

转换结束信号输出引脚,开始转换时为低电平,当转换结束时为高电平。

OE:

输出允许控制端,用以打开三态数据输出锁存器。

CLK:

时钟信号输入端(一般为500KHz)。

A、B、C:

地址输入线。

图2-2-2ADC0809的引脚结构

3.ADC0809应用说明

(1).ADC0809内部带有输出锁存器,可以与AT89S51单片机直接相连。

(2).初始化时,使ST和OE信号全为低电平。

(3).送要转换的哪一通道的地址到A,B,C端口上。

(4).在ST端给出一个至少有100ns宽的正脉冲信号。

(5).是否转换完毕,我们根据EOC信号来判断。

(6).当EOC变为高电平时,这时给OE为高电平,转换的数据就输出给单片机了。

2.2.1电路设计

本设计采用8位A/D转换芯片ADC0809,通道4输入模拟信号。

经A/D转换后由P1口输入单片机,再通过P0口输出、数码管显示。

数码管共阳端则由P2口控制显示。

为了防止电流过大烧毁数码管,故在P0口处接入A331G9引脚型号的排阻。

 

图1-1ADC0/809模数转换与显示电路

第3章软件设计

3.1程序流程图

 

 

 

 

 

 

 

3.2程序设计:

本例使用KeiluVision2进行C语言编译。

KeiluVision2是德国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统,使用接近于传统c语言的语法来开发,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用,而且大大的提高了工作效率和项目开发周期,他还能嵌入汇编,您可以在关键的位置嵌入,使程序达到接近于汇编的工作效率。

KEILC51标准C编译器为8051微控制器的软件开发提供了C语言环境,同时保留了汇编代码高效,快速的特点。

C51编译器的功能不断增强,使你可以更加贴近CPU本身,及其它的衍生产品。

C51已被完全集成到uVision2的集成开发环境中,这个集成开发环境包含:

编译器,汇编器,实时操作系统,项目管理器,调试器。

uVision2IDE可为它们提供单一而灵活的开发环境。

C语言代码:

//名称:

ADC0809模数转换与显示

//说明:

ADC0809采用通道4输入的模拟量,转换后的结果显示在数码管上。

/#include

#defineuintunsignedint

#defineucharunsignedchar

//数码管段定义

ucharcodeLEDData[]=

{

0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f

};

//ADC0809引脚定义

sbitOE=P1^0;

sbitEOC=P1^1;

sbitST=P1^2;

sbitCLK=P1^3;

//延时子程序

voidDelayMS(uintms)

{

uchari;

while(ms--)

{

for(i=0;i<120;i++);

}

}

//显示结果

voidDisplay_Result(uchard)

{

P2=0x08;//第4只管显示个位数

P0=~LEDData[d%10];

DelayMS(5);

P2=0x07;//第3只管显示十位数

P0=~LEDData[d%100/10];

DelayMS(5);

P2=0x02;//第2只管显示百位数

P0=~LEDData[d/100];

DelayMS(5);

}

voidmain()

{

TMOD=0x02;

TH0=0x14;

TL0=0x00;

IE=0x82;

TR0=1;

P1=0x4f;//选择ADC0809的通道4

while

(1)

{

ST=0;

ST=1;

ST=0;//启动转换

while(EOC==0);//等待转换结束

OE=1;//允许输出

Display_Result(P3);//显示A/D转换结果

OE=0;//关闭输出

}

}

//T0定时器中断给ADC0809提供时钟信号

voidTimer0_INT()interrupt1

{

CLK=!

CLK;//ADC0809时钟信号

}

第4章应用系统实现

4.1硬件连接

4.1.1单片机最小系统连接

将STC89C51RC单片机安装在面包板合适位置,然后依次连接好单片机最小系统个硬件。

4.1.2ADC0809模数转换器的连接

首先用导线依次将P0口与ADC0809上的OE、EIOC、START(ALE与其短接)、OLK、ADDA、ADDB、ADDC接口相连接;再将P3引脚依次与OUT1~OUT8引脚相连接。

最后Vcc与Ref(+)引脚接+5V电压,GND与Ref(—)引脚接地。

再次检查确保线路连接无误。

4.1.3四位一体8段共阳极数码管的连接

先将排阻共阳端接入+5V电源,再将剩余8只引脚依次与P0口引脚相连,然后把数码管上A、B、C、D、E、F、G、DP的LED灯对应的引脚(编号为11、7、4、2、1、10、5、3)依次通过导线与P0口引脚相连。

数码管的共阳端9、8、6号引脚则通过导线与P2.1、P2.2、P2.3引脚相连。

4.1.4电位器的连接

将三脚电位器的两端分别接电源和接地线,中间引脚则通过导线与模数转换器IN4引脚相连。

4.2程序下载

本题通过USB—TTL/USBSTCISP将程序烧录到单片机内。

4.2.1产品介绍

自主开发的USB-TTL/STC-ISP在线编程器使用USB接口,为笔记本电脑用户

解决没有串口而不方便编程STC系列单片机的问题,本下载器低价格、高性能,是工厂、学

校、个人等开发STC系列单片机的首选优秀工具。

特点:

1.支持USB1.1或USB2.0通信;

2.全面支持WIN98、WINME、WIN2000、WINXP、VISTA、WIN7等操作系统;

3.采用USB口供电,板内带有500mA自恢复保险丝或保险电阻,保护电脑主板不被意

外烧毁;

4.在对芯片编程时可以使用目标系统本身电源,也可以使用编程器从USB口取电供给

目标板,但应保证目标标电流不大于500mA,以免不能正常编程;

5.编程完成不影响目标板的程序运行;

6.支持STC全系列芯片烧录;

7.编程器提供3.3V与5V的电压输出接口;

8.速度比并口编程更快更稳定,更方便笔记本电脑用户使用;

9.采用进口原装芯片,能进行高速稳定编程;

4.2.2驱动安装及硬件连接

1.解压USB-TTL客户包,首先安装驱动程序,XP用户安装“PL-2303WinXPDriver

Installer”,Vista或Win7用户安装“PL-2303Vista&Win7DriverInstaller”;

双击相应的驱动程序进入安装过程,所有选项全部默认直接下一步直到安装完成;

 

2.安装完驱动程序后,将USB-TTL插入电脑,电脑会提示发现新硬件,此时别动电脑,电

脑会自动安装完驱动程序并提示安装完成;

3.此时电脑设备管理器中会出现相应的串口设备,注意记住COM号,下图例为COM4,如果

电脑自动分配超过COM9,应手动将其改回COM9以下,手动更改右击这个串口设备在属

性里面可以找到更改串口号的地方;

4.至此驱动程序安装完成。

4.2.3上位机软件

从客户包中可以找到相应的STC烧录软件,其分为中文版及英文版两种,自行选择使用:

选择相应的软选,双击将其解压至指定文件夹后,打开相应文件夹,找到“STC_ISP_V483”,

双击将其运行:

运行软件界面如下:

4.2.4烧录文件

烧录软件设置:

1.选择单片机型号:

2.加载需要烧录的文件,应为hex或bin格式:

3.设置串口号及波特率:

注意此步的串口号即是以上在设备管理里面对应的串口号,必须对应,波特率采用

默认无须设置。

4.以上软件设置基本完成,其它高级设置请自行摸索或查阅相关资料。

连接您的目标板系统:

5.软件设置完后,需要将编程器与您的目标板相连接,STC系列单片机都是通过串口烧录

程序,即是串口TXD及RXD两条数据线,另加上GND及VCC即可。

如果你的目标板有其

它的电源供电,可以不接编程器的VCC线,只需TXD、RXD、GND三根即可。

如果没有其

它的电源供电,需接编程器的VCC线,请注意应接至5V插针,且保证您的目标板需要

的电流不得超过300mA为佳。

6.您的目标板的单片机型号应与软件设置的型号一致,以及必须保证你的目标板能够正常

工作,例如供电合理及晶振电路、复位电路正常等。

烧录程序

7.软件设置好及硬件连接好后,即可进行编程烧录,STC下载有严格的步序要求,请按如

下顺序下载程序:

a.下载前,请将软件及硬件都设置好与连接好,并且您的目标板不需要供电,即为关

电状态,如果是使用编程器的VCC,下载前请拔掉VCC这根线,也就是让您的目标

板是断电状态;

b.点击软件的下载按钮:

c.待软件提示请给MCU上电时,此时即可给您的目标板上电,打开电源开关或者插上

编程器的VCC线,正常情况下,到此软件会自动完成下载与校验,并且您的系统会

运行起你烧录进去程序;

d.如果c步供电源后,软件没有反应仍然显示请给MCU上电的话,说明您将TXD与RXD

两根线插反了,这两根线是相对而言的,如果出来这种情况,可以将您的系统电源

关断或拔掉VCC线,再将TXD与RXD两线对换,之后再按c步通电,正常情况下便

能自动烧录完成。

8.STC编程烧录应严格遵守第7步所讲的步序,即先设置软件连接硬件,在电源关闭状态

点击下载,在软件提示上电后开通电源,才能完成烧录过程。

最后提醒,下载步骤请严格按照“使用实例”中的第7步进行!

参考文献

[1]马斌,韩忠华,王长涛,夏兴华.单片机原理及应用:

C语言程序设计与实现[M].北京:

人民邮电出版社,2009

[2]张有德,赵志英,涂时亮.单片机原理、应用与实验(第五版)[M].上海:

复旦大学出版社,2006

 

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

当前位置:首页 > 人文社科 > 文化宗教

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

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