多通道数据采集系统课程设计报告.docx

上传人:b****1 文档编号:14680115 上传时间:2023-06-26 格式:DOCX 页数:31 大小:556.75KB
下载 相关 举报
多通道数据采集系统课程设计报告.docx_第1页
第1页 / 共31页
多通道数据采集系统课程设计报告.docx_第2页
第2页 / 共31页
多通道数据采集系统课程设计报告.docx_第3页
第3页 / 共31页
多通道数据采集系统课程设计报告.docx_第4页
第4页 / 共31页
多通道数据采集系统课程设计报告.docx_第5页
第5页 / 共31页
多通道数据采集系统课程设计报告.docx_第6页
第6页 / 共31页
多通道数据采集系统课程设计报告.docx_第7页
第7页 / 共31页
多通道数据采集系统课程设计报告.docx_第8页
第8页 / 共31页
多通道数据采集系统课程设计报告.docx_第9页
第9页 / 共31页
多通道数据采集系统课程设计报告.docx_第10页
第10页 / 共31页
多通道数据采集系统课程设计报告.docx_第11页
第11页 / 共31页
多通道数据采集系统课程设计报告.docx_第12页
第12页 / 共31页
多通道数据采集系统课程设计报告.docx_第13页
第13页 / 共31页
多通道数据采集系统课程设计报告.docx_第14页
第14页 / 共31页
多通道数据采集系统课程设计报告.docx_第15页
第15页 / 共31页
多通道数据采集系统课程设计报告.docx_第16页
第16页 / 共31页
多通道数据采集系统课程设计报告.docx_第17页
第17页 / 共31页
多通道数据采集系统课程设计报告.docx_第18页
第18页 / 共31页
多通道数据采集系统课程设计报告.docx_第19页
第19页 / 共31页
多通道数据采集系统课程设计报告.docx_第20页
第20页 / 共31页
亲,该文档总共31页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

多通道数据采集系统课程设计报告.docx

《多通道数据采集系统课程设计报告.docx》由会员分享,可在线阅读,更多相关《多通道数据采集系统课程设计报告.docx(31页珍藏版)》请在冰点文库上搜索。

多通道数据采集系统课程设计报告.docx

多通道数据采集系统课程设计报告

单片机课程设计

多通道数据采集系统的课程设计报告

姓名:

_________

学号:

___________

班级:

___________

指导老师:

_______

授课老师:

_______

时间:

2014年1月14日

单片机课程设计

摘要......................................

1.设计内容与要求..........................

2.系统分析................................

3.硬件设计................................

4.关键模块设计与分析......................

4.1.0809数据转换模块.....................

4.2.7279显示模块.........................

4.3.7279键盘模块.........................

5.实验电路................................

6.系统流程图..............................

7.实验感想................................

8.参考文献................................

9.程序代码................................

单片机课程设计

摘要

模数转换器即A/D转换器或简称ADC,通常是一个模拟信号转变成数字信号的电子元件。

模数转换器是工业测量和控制等领域中的重要器件。

按设计架构将它们分为5种基本的类型:

Sigma-del型、ta型、逐次逼近型、子范围型、管线型。

在这5种类型ADC中,逐次逼近型应用广泛高性价比和低功耗等优点是它在直流和低频信号的测量中有着较为突出的表现。

本文探讨了逐次逼近型ADC0809的工作原理及其特性并结合AT80C52单片机介绍了逐次逼近型ADC0809在工程中的实际应用。

Abstract:

ADCA/DconverterorADC,usuallyreferstoananalog

signalintoadigitalsignaloftheelectronicelement.ADCistheindustrial

measurementandcontrolinareassuchasanimportantdevicein.

Accordingtothedesignstructuretodividetheminto5basictypes:

Type

Sigma-delta,Successiveapproximationtype,Linetype.Inthese5types

ofADC,successiveapproximationadvantagesmakeitinDCandlow

frequencysignalmeasurementhasamoreprominentperformance.This

paperdiscussesthesuccessiveapproximationADC0809workprinciple

andcharacteristicsofAT89C52singlechipmicrocomputeris

introducedcombinedwithsuccessiveapproximationADC0809

applicationinpracticalengineering.

单片机课程设计

3硬件系统设计

3.1AT89C52单片机简介

AT89C52是一个低电压,高性能CMOS8位单片机,片内含8kbytes的可反复擦写的Flash只读程序存储器和256bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大的AT89C52单片机可为您提供许多较复杂系统控制应用场合。

AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89C52可以按照常规方法进行编程,但不可以在线编程(S系列的才支持在线编程)。

其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。

兼容MCS52指令系统·8k可反复擦写(>1000次)FlashROM

单片机课程设计

(1.)32个双向I/O口,256x8bit内部RAM

(2.)3个16位可编程定时/计数器中断

(3.)时钟频率0-24MHz

(4.)2个串行中断,可编程UART串行通道

(5.)2个外部中断源,共6个中断源

(6.)2个读写中断口线,3级加密位

(7.)低功耗空闲和掉电模式,软件设置睡眠和唤醒功能

AT89C52为40脚双列直插封装的8位通用微处理器,采

用工业标准的C51内核,在内部功能及管脚排布上与通用的8xc52相同,其主要用于会聚调整时的功能控制。

功能包括对会聚主IC内部寄存器、数据RAM及外部接口等功能部件的初始化,会聚调整控制,会聚测试图控制,红外遥控信号IR的接收解码及与主板CPU通信等。

主要管脚有:

XTAL1(19脚)和XTAL2(18脚)为振荡器输入输出端口,外接12MHz晶振。

RST/Vpd(9脚)为复位输入端口,外接电阻电容组成的复位电路。

VCC(40脚)和VSS(20脚)为供电端口,分别接+5V电源的正负端。

P0~P3为可编程通用I/O脚,其功能用途由软件定义,在本设计中,P0端口(32~39脚)被定义为N1功能控制端口,分别与N1的相应功能管脚相连接,13脚定义为IR输入端,10

脚和11脚定义为I2C总线控制端口,分别连接N1的SDAS(18脚)和SCLS(19脚)端口,12脚、27脚及28脚定义为握

单片机课程设计

手信号功能端口,连接主板CPU的相应功能端,用于当前制式的检测及会聚调整状态进入的控制功能。

AT89C52编程方法如下:

1.在地址线上加上要编程单元的地址信号。

2.在数据线上加上要写入的数据字节。

3.激活相应的控制信号。

4.在高电压编程方式时,将EA/Vpp端加上+12V编程电压。

5.每对Flash存储阵列写入一个字节或每写入一个程序加密位,加上一个ALE/PROG编程脉冲。

每个字节写入周期是自身定时的,通常约为1.5ms。

重复1—5步骤,改变编程单元的地址和写入的数据,直到全部文件编程结束。

3.2ADC0809模数转换芯片

实验使用ADC00809模数转换器,ADC0809是8通道8位CMOS逐次逼近式A/D转换芯片。

片内有模拟量通道选择开关及相应的通道锁存、译码电路,A/D转换后的数据由三态锁器输出。

由于片内没有

时钟需外接时钟信号。

,各引脚功芯片的引脚如图5-1能如下:

八路模拟信号输入端。

~IN7:

IN0:

三位地、ADD-CADD-A、ADD-B址码输入端。

引脚图ADC08091.1图

单片机课程设计

CLOCK:

外部时钟输入端。

CLOCK输入频率范围在10-1280KHz,典型值为640KHz,此时A/D转换时间为100μS。

51单片机ALE直接或分频后可与CLOCK相连。

本实验CLOCK信号由CPLDLattice3128分频产生(12MHz晶振12分频)。

D0~D7:

数字量输出端。

OE(ENABLE):

A/D转换结果输出允许端。

当OE为高电平时,允许A/D转换结果从D0-D7输出。

ALE:

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

八路模拟通道地址由A、B、C输入,在ALE信号有效时将地址锁存。

START:

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

当START端输入一个正脉冲时,将进行A/D转换。

EOC:

A/D转换结束信号输出端。

当A/D转换结束后,EOC输出高电平。

Vref(+)、Vref(-):

正负基准电压输入端。

基准正电压的典型值为+5V。

图1.2ADC0809时序图

单片机课程设计

3.2HD7279A芯片介绍

HD7279A是一片具串行接口的,可同时驱动8位共阴式数码管的智能显示驱动芯片,该芯片同时还可以连接多达64键的键盘矩阵,单片即可完成LED显示,键盘接口的全部功能。

1.主要特性

(1).串行接口,无需外围元件可直接驱动LED。

(2).各位独立控制译码/不译码及消隐和闪烁属性。

(3).(循环)左移/(循环)右移指令。

(4).具有段寻址指令,方便控制独立LED。

(5).64键键盘控制器,内含去抖动电路。

2.引脚说明:

VDD:

正电源VSS:

CS:

片选CLK:

时钟输入端

DATA:

串行数据输入/输出端CLK0:

振荡输出端

KEY:

按键有效输出端RES:

复位端

单片机课程设计

SG-SA:

段g—段a驱动输出

DP:

小数点驱动输出DIG0-7:

数位0-7驱动输出

RC:

RC振荡器连接端

3.HD7279A硬件电路:

注意:

(1).HD7279A应连接共阴式数码管。

(2).应用中,无需用到的键盘和数码管可以不连接。

(3).应用中,串入DP及SA—SG连接的8只电阻为200欧。

(4).应用中,8只下拉电阻和8只键盘连接位选线DIG0-DIG7的电阻,应遵从一定的比例关系,典型值为10倍,下拉电阻的取值范围是10K—100K,位选电阻的取值围是1K—10K。

(5).HD7279A需要一外接的RC振荡电路以供系统工作,其典型值分别为R=1.5KΩ,C=15pF。

单片机课程设计

(6).HD7279A的RESET复位端在一般应用情况下,可以直接与正电源连接,在需要较高可靠性的情况下,可以连接一外部的复位电路,或直接由MCU(单片机)控制。

在上电或RESET端由低电平变为高电平后,HD7279A大约需要经过18-25MS的时间才会进入正常工作状态。

4.控制指令

HD7279A的控制指令分为二大类——纯指令和带有数据的指令。

主要控制指令如下:

A.纯指令

(1).复位(清除)指令A4H

D7D6D5D4D3D2D1D0

0

0

1

1

0

0

0

1

当HD7279A收到该指令后,将所有的显示清除,所有设置的字符消隐、闪烁等属性也被一起清除。

执行该指令后,芯片所处的状态与系统上电后所处的状态一样。

(2).左移指令A1H

D7D6D5D4D3D2D1D0

1

0

1

0

0

0

1

0

例如,原显示为:

4252LP39

其中第2位‘3'和第4位‘L'为闪烁显示。

执行了左移指令后,显示变为:

单片机课程设计

9P3252L

'为闪烁显示。

位‘P位第2‘9'和第4.右移指令A0H(3)

D0D1D4D3D2D7D6D5

0

0

0

1

1

0

0

0

与左移指令类似,但所做移动为自左向右移动,移动后,最左边一位为空.带有数据的指令B0译码

(1).下载数据且按方式DDDDDDDDDDDDDDDD0246267543107531

Dd0XXa0a200100a1Xd3d2d1

P

为位地址。

,a2前半部分为指令,命令由二字节组成,其中a0a1,d0d3-为数据,收到此指令时,按以下规则进行译码。

单片机课程设计

位控制:

小数点的显示由DP时,小数点不显示。

DP=0DP=1时,小数点显示,1译码

(2).下载数据且按方式

D7

D6

D5

D4

D3

D2

D1

D0

D7

D6

D5

D4

D3

D2

D1

D0

1

1

0

0

1

a2

a1

a0

DP

X

X

X

d3

d2

d1

d0

此指令与上一条指令其本相同,所不同的是译码方式。

单片机课程设计

(3).下载数据但不译码

D7

D6

D5

D4

D3

D2

D1

D0

D7

D6

D5

D4

D3

D2

D1

D0

1

0

0

1

0

a2

a1

a0

DP

A

B

C

D

E

F

G

为显示数据,分别对应其中,a2和-为位地址,,a1,a0AGDP时,该段点亮,否则不数码管的各段。

当相应的数据位为LED段7‘1'亮。

此指令灵活,通过造字形表,可以显示用户所需的字符。

.闪烁控制(4)88H

单片机课程设计

DDDDDDDDDDDDDDDD0

143210765765432

dddddddd8

00000101

1

243765

1-8d8分别对应数码管此命令控制各个数码管的闪烁属性,d1—不闪烁。

开机后,缺省的状态为各位均不闪烁。

闪烁,0=1=读键盘数据指令15H(5).

DDDDDDDDDDDDDDDD7654276543103210

dddddddd011100000

1376542

为指该指令从HD7279A读出当前的按键代码。

前一个字节015H返回的按键代码,其范d0-d7则为HD7279A令代码,而后一个字节FFH00H-3FH围是(无键按下时为)。

引脚从高电平变为低电平,检测到有效的按键时,KEYHD7279A当接收到‘读键盘并一直保持到按键结束。

在此期间,如果HD7279A,则输出当前按键的键盘‘码;如果在收到‘读键盘指令'数据指令'79AHD7时没有有效按键,‘将输出FFH。

5.串行接口的时序图。

HD7279AA、的指令结构类型:

即微处理器需发送8指令的宽度为、

(1)不带数据的纯指令,。

个BIT8CLK个脉冲。

单片机课程设计

(2)、带有数据的指令,宽度为16个BIT,即微处理器需发送16个CLK脉冲。

(3)、读取键盘数据指令,宽度为16个BIT,前8个为微处理器发送到HD7279A的指令,后8个BIT为HD7279A返回的键盘代码。

执行此指令时,HD7279A的DATA端在第9个CLK脉冲的上升沿变为输出状态,并与第16个脉冲的下降沿恢复为输入状态,等待接收下一个指令。

B、串行接口的时序图:

(1).纯指令

T1=50us;T2=8us;T3=8us

(2).带数据指令

T4=25us

(3).读键盘指令

单片机课程设计

T7=8usT5=25us;T6=8us;

单片机课程设计

5、实验电路

图1.3ADC0809模拟转换电路

数字显示电路部分电路

单片机课程设计

7.实验体会

在本次课程设计中,我们通过专业课的学习,进一步深入了解了51单片机的内部结构及工作原理,把理论与实际相结合,使我对单片机的学习产生了更浓厚的兴趣。

其中,在ADC0809以及HD7279A的学习中,提高了查阅资料、分析资料的能力。

参考资料8.北京邮电大学出版社单片微型计算机原理、接口及应用(第3版)丁玉珍徐惠民安德宁丁易新编单片机原理实验指导书

050HDATAADHEX

060HDATADBUF

070HBIT_COUNTDATA

072HDATATIMER

073HDATATIMER1

074HDATATIMER2

020HDATADATA_IN

021HDATADATA_OUT

P1.6BITCLK

P1.7BITDAT

0000HORG

MAINLJMP

0003HORG

ITROULJMP

0100HORG

MAIN:

0

;CLRIT0低电平触发,7279key接外中断

单片机课程设计

SETBEX0;开外中断0

SETBEA;开总中断

MOVR0,#00

AAA:

LCALLZHUAN

INCR0

CJNER0,#6,AAA

LJMPMAIN

ZHUAN:

CLRA

SETBP1.7

MOVR0,#DBUF

MOVDPH,#02fH;A/D

MOVDPL,R0

NOP

NOP

NOP

MOVX@DPTR,A;启动转换

JNBP1.7,$

NOP

NOP

NOP

MOVXA,@DPTR;读入结果

NOP

NOP

NOP

MOVR7,A

MOVADHEX,A

CALLMUL500;ADHEX*500/256

CALLHB2;转换成bcd

CALLTODISP;拆开显示

NOP

CALLDISPLAY

CALLDELAY2S

RET

DISPLAY:

ANLP2,#00H;CS7279有效

MOVDATA_OUT,#10100100B;A4H,复位命令

CALLSEND

MOVDATA_OUT,#11001000B;译码方式0,0位显示

CALLSEND

MOVDATA_OUT,DBUF

CALLSEND

单片机课程设计

MOVDATA_OUT,#11001001B;译码方式0,1位显示

CALLSEND

MOVDATA_OUT,DBUF+1

CALLSEND

MOVDATA_OUT,#11001010B;译码方式0,2位显示

CALLSEND

MOVDATA_OUT,DBUF+2

CALLSEND

MOVDATA_OUT,#11001110B;译码方式0,5位显示通道号

CALLSEND

MOVDATA_OUT,R0

CALLSEND

MOVP2,#0FFH;CS7279无效

RET

SEND:

发送字符子程序;MOVBIT_COUNT,#8

P2,#00HANL

CALLLONG_DELAY

SEND_LOOP:

C,DATA_OUT.7MOV

DAT,CMOV

SETBCLK

A,DATA_OUTMOV

ARL

MOVDATA_OUT,A

CALLSHORT_DELAY

CLKCLR

CALLSHORT_DELAY

DJNZBIT_COUNT,SEND_LOOP

DATCLR

RET

DELAY:

TIMER,#4MOV

AA0:

TIMER1,#0MOV

AA1:

TIMER2,#0MOV

AA2:

TIMER2,AA2DJNZ

TIMER1,AA1DJNZ

TIMER,AA0DJNZ

RET

单片机课程设计

/*功能:

单字节二进制无符号数乘500(1f4H=100H+0f4H)

入口条件:

被乘数在R7中。

;出口信息:

乘积在R4、R5、R6中(R6低八位)。

*/

MUL500:

MOVA,#0f4H;计算R3乘R7

MOVB,R7

MULAB

MOVR5,B;暂存部分积

MOVR6,A

MOVA,R7

ADDA,B

MOVR5,A

CLRA

RLCA

MOVR4,A

CLRC

MOVA,R6

SUBBA,#80H

JCRETURN

CLRC

MOVA,R5

ADDA,#1

MOVR5,A

MOVA,R4

ADDCA,#0

MOVR4,A

RETURN:

RET

/*功能:

双字节十六进制整数转换成双字节BCD码整数

入口条件:

待转换的双字节十六进制整数在R6、R7中。

出口信息:

转换后的三字节BCD码整数在R3、R4、R5中。

*/

HB2:

MOVA,R4

MOVR6,A

MOVA,R5

MOVR7,A

CLRA;BCD码初始化

MOVR3,A

MOVR4,A

MOVR5,A

MOVR2,#10H;转换双字节十六进制整数

HB3:

MOVA,R7;从高端移出待转换数的一位到CY中

RLCA

MOVR7,A

MOVA,R6

单片机课程设计

RLCA

MOVR6,A

MOVA,R5;bcd码带进位自身相加,相当于乘2

ADDCA,R5

DAA;十进制调整

MOVR5,A

MOVA,R4

ADDCA,R4

DAA

MOVR4,A

MOVA,R3

ADDCA,R3

MOVR3,A;双字节十六进制数的万位数不超过6,不用调整

DJNZR2,HB3;处理完16bit

RET

TODISP:

MOVA,R4

ORLA,#80H

MOVDBUF+2,A

MOVA,R5

SWAPA

ANLA,#0FH

MOVDBUF+1,A

MOVA,R5

ANLA,#0FH

MOVDBUF,A

RE

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

当前位置:首页 > 自然科学 > 化学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2