电子工程设计实验报告美图文档格式.docx
- 文档编号:17609644
- 上传时间:2022-12-07
- 格式:DOCX
- 页数:22
- 大小:216.50KB
电子工程设计实验报告美图文档格式.docx
《电子工程设计实验报告美图文档格式.docx》由会员分享,可在线阅读,更多相关《电子工程设计实验报告美图文档格式.docx(22页珍藏版)》请在冰豆网上搜索。
3、循环程序
#definedataXBYTE[0xcfa0]
unsignedchart[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
unsignedchara[6]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf};
voiddisplay()
{inti;
for(i=0;
i<
500;
i++);
}
voiddisplay2()
10;
voidmain()
{
inti,b,c,d,k;
while
(1)
{b=0;
for(b=0;
b<
b++)
{for(i=0;
12000;
i++)
{
for(c=0;
c<
7;
c++)
{
P1=a[c];
k=b+c;
if(k>
9)
k=k-10;
}
data=a[k];
display2();
}
display();
}
}
二、实时时钟的显示程序设计
1、时钟显示序方案说明
应用单片机内部的定时器,在LED显示块上显示时、分、秒,各占两位。
设定4个键盘,可对显示时间进行修改。
修改键(A)、加1键(B)、减1键(C)、取消键(D)。
按第一次A键,修改分,分显示闪烁;
按第二次A键,修改时,时显示闪烁。
按D键,退出修改。
按B键,修改内容加1,按C键,修改内容减1。
B、C键仅在A键有效时起作用。
接线:
键盘的连接:
将KA10接GND,选择RL10------RL17中的4个接74LS244的输入,CS244接CS2。
2、时钟显示结构方框图
画出程序流程图,写出程序清单。
在试验箱上进
行调试。
3、时钟显示程序
PORTEQU0CFA0H
INPORTEQU0CFA8H
BUFEQU23H
SBFEQU22H
MBFEQU21H
HBFEQU20H
CSEGAT0000H
LJMPSTART
CSEGAT401BH
LJMPCLOCK
CSEGAT4100H
START:
MOVR0,#40H
MOVA,#00H
MOV@R0,A
INCR0
MOV@R0,A
MOVA,#00H
MOV30H,#00
MOVTMOD,#10H
MOVTH1,#3CH
MOVTL1,#0AFH
MOVBUF,#00H
MOVSBF,#00H
MOVMBF,#00H
MOVHBF,#00H
SETBET1
SETBEA
SETBTR1
DISP:
LCALLDS1
LCALLSCANKEY
AJMPDISP
DS1:
MOVR2,#20H
DS2:
MOVDPTR,#PORT
MOVA,@R0
ACALLTABLE
MOVX@DPTR,A
MOVA,R2
CPLA
MOVP1,A
MOVR3,#0FFH
DEL:
NOP
DJNZR3,DEL
INCR0
CLRC
MOVA,R2
RRCA
MOVR2,A
JNZDS2
MOVR0,#45H
MOVA,SBF
ACALLGET
MOVA,MBF;
把分值分别放入40H,41H中
ACALLGET
MOVA,HBF
RET
TABLE:
INCA;
取与数字对应的段码
MOVCA,@A+PC
DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,40H
GET:
MOVR1,A;
把从分或秒字节中取来的值的高
ANLA,#0FH;
位屏蔽掉,并送入缓冲区
DECR0
MOVA,R1;
把从分或秒字节中取来的值的低
SWAPA;
ANLA,#0FH
DECR0;
R0指针下移一位
CLOCK:
MOVTL1,#0AFH;
置时间常数
MOVTH1,#3CH
PUSHPSW
PUSHACC
INCBUF;
计数加一
MOVA,BUF;
计到10否?
没有则转到QUIT退出中断
CJNEA,#0AH,QUIT
MOVBUF,#00H;
置初值
MOVA,SBF
秒值加一,经十进制调整后放入
DAA;
秒字节
MOVSBF,A
CJNEA,#60H,QUIT;
计到60否?
MOVSBF,#00H;
是,秒字节清零
MOVA,MBF
分值加一,经十进制调整后放入
分字节
MOVMBF,A
分值为60否?
不是则退出中断
MOVMBF,#00H;
是,清零
MOVA,HBF
INCA
DAA
MOVHBF,A
CJNEA,#24H,QUIT;
时值为24否?
QUIT:
POPACC
POPPSW
RETI;
中断返回
SCANKEY:
MOVDPTR,#INPORT
MOVXA,@DPTR
JNBACC.0,LOOP1
JNBACC.1,LOOP2
JNBACC.2,LOOP3
JNBACC.3,LOOP4
AJMPOUTT1
LOOP1:
INC30H
MOVA,30H
CJNEA,#01H,LPP1
MOVR7,#03
DSSS:
MOVR6,#02
MOVR0,#42H
MOVR2,#08H
DSS2:
MOVA,@R0;
得到的段显码输出到段数据口
MOVA,R2;
向位数据口P1输出位显码
MOVR3,#80H
ACALLDEL0
INCR0;
显示缓冲字节加一
RRCA;
显码右移一位
MOVR2,A;
最末一位是否显示完毕?
如无则
DJNZR6,DSS2
ACALLDS1
DJNZR7,DSSS
LJMPOUTT1
LOOP2:
LJMPLOOP5
LOOP3:
LJMPLOOP6
LOOP4:
LJMPLOOP7
LPP1:
CJNEA,#02H,LPP4
DSSS1:
MOVR0,#40H
MOVR2,#20H
DSS3:
DJNZR6,DSS3
DJNZR7,DSSS1
LPP4:
MOV30H,#00H
MOVR3,#0FFH
ACALLDEL0
LOOP5:
CJNEA,#01H,LPP2
CJNEA,#60H,LPP5;
LJMPLPP5
LPP2:
CJNEA,#02H,LPP5
CJNEA,#24H,LPP5
LPP5:
LCALLDS1
LOOP6:
CJNEA,#01H,LPP3
DECA
LPP3:
CJNEA,#02H,LPP6
LPP6:
ACALLDEL0
ACALLDS1
LOOP7:
RET
OUTT1:
DEL0:
MOVR4,#0FFH;
延时一小段时间
DEL1:
DJNZR4,DEL1
DJNZR3,DEL0
END
第三部分应用系统设计部分
1、应用系统设计实验要求
1)使用DA0832作为简易波形发生器,产生三角波,锯齿波,方波和正弦波4中波形。
通过4个键盘(或开关)进行波形选择。
2)使用AD0809,设计一个数据采集系统,对0——5V输入信号进行采样,将结果显示在LED显示快上。
LED显示块3块。
3)4个键盘(开关)的选择功能:
K1选择波形发生器或数据采集。
选择波形发生器时,K2、K3、K4选择输出波形类型,最左边显示块显示波形代码(123);
选择数据采集时,显示块显示采集结果。
4)控制器使用ATM89C51,提供最小系统版。
2、应用系统设计图形
三、A/D转换部分设计
1、结构方框图
A/D程序流程图调用BCD码流程图
2、A/D模块设计图
3、A/D转换程序
ORG0000H
MOVDPTR,#7FFFH;
指向控制口
MOVR7,#05H
ACALLDELAY
MOV20H,A
MOVA,20H
MOVB,#100;
B100
DIVAB;
A除以B商在A中,余数在B中
MOV51H,A;
百位存到51H
MOVA,#10;
A除以10
XCHA,B
DIVAB
MOV52H,A;
十位存到52H
MOV53H,B;
个位存到53H
DIS:
MOVR0,#51H
MOVR2,#03H
MOVR3,#04H
LOOP:
MOVA,R3
MOVP3,A
MOVA,@R0
MOVDPTR,#TABLE;
调用TABLE表
MOVCA,@A+DPTR
MOVP1,A
RRA
MOVR3,A
DJNZR2,LOOP
SJMPSTART
DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH
DELAY:
MOVR7,#100
NOP
DJNZR7,LOOP1
END
4、A/D转换功能说明
使用ADC0809,对0—5V输入信号进行采样,通过BCD码转换将0—255结果显示在LED显示块上。
LED显示块为3块。
ADC0809概述:
ADC0809是采样分辨率为8位的、以逐次逼近原理进行模—数转换的器件。
其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。
ADC0809芯片有28条引脚,采用双列直插式封装。
IN0~IN7:
8路模拟量输入端。
2-1~2-8:
8位数字量输出端。
ADDA、ADDB、ADDC:
3位地址输入线,用于选通8路模拟输入中的一路
ALE:
地址锁存允许信号,输入,高电平有效。
START:
A/D转换启动脉冲输入端,输入一个正脉冲(至少100ns宽)使其启动(脉冲上升沿使0809复位,下降沿启动A/D转换)。
EOC:
A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。
OE:
数据输出允许信号,输入,高电平有效。
当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。
CLK:
时钟脉冲输入端。
要求时钟频率不高于640KHZ。
REF(+)、REF(-):
基准电压。
Vcc:
电源,单一+5V。
GND:
地。
4、D/A转换设计部分
2、D/A模块转换图
3、D/A转换程序
JNBP2.0,PRG1;
设置按键
JNBP2.1,PRG2
JNBP2.2,PRG3
PRG1:
端口地址送DPTR
MOVA,#0;
初值送A
ACALLDLY
MOVA,#0FFH
DLY:
MOVR5,#100
DJNZR5,LOOP
RET;
产生方波
PRG2:
MOVDPTR,#07FFFH
MOVA,#0
MOVX@DPTR,A;
循环产生三角波前半周期
INCA;
数据加一
CJNEA,0FFH,LOOP2
ACALLDLE
MOVX@DPTR,A;
循环产生三角波后半周期
CJNEA,00H,LOOP3
DLE:
MOVR5,#100
产生三角波
PRG3:
MOVR1,#00H
MOVA,R1
MOVDPTR,#SETTAB;
从表中取数据
INCR1
AJMPLOOP7
产生正弦波
SETTAB:
DB80H,83H,86H,89H,8DH,90H,93H,96H
DB99H,9CH,9FH,0A2H,0A5H,0A8H,0ABH,0AEH
DB0B1H,0B4H,0B7H,0BAH,0BCH,0BFH,0C2H,0C5H
DB0C7H,0CAH,0CCH,0CFH,0D1H,0D4H,0D6H,0D8H
DB0DAH,0DDH,0DFH,0E1H,0E3H,0E5H,0E7H,0E9H
DB0EAH,0ECH,0EEH,0EFH,0F1H,0F2H,0F4H,0F5H
DB0F6H,0F7H,0F8H,0F9H,0FAH,0FBH,0FCH,0FDH
DB0FDH,0FEH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH
DB0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FEH,0FDH
DB0FDH,0FCH,0FBH,0FAH,0F9H,0F8H,0F7H,0F6H
DB0F5H,0F4H,0F2H,0F1H,0EFH,0EEH,0ECH,0EAH
DB0E9H,0E7H,0E5H,0E3H,0E1H,0DEH,0DDH,0DAH
DB0D8H,0D6H,0D4H,0D1H,0CFH,0CCH,0CAH,0C7H
DB0C5H,0C2H,0BFH,0BCH,0BAH,0B7H,0B4H,0B1H
DB0AEH,0ABH,0A8H,0A5H,0A2H,9FH,9CH,99H
DB96H,93H,90H,8DH,89H,86H,83H,80H
DB80H,7CH,79H,76H,72H,6FH,6CH,69H
DB66H,63H,60H,5DH,5AH,57H,55H,51H
DB4EH,4CH,48H,45H,43H,40H,3DH,3AH
DB38H,35H,33H,30H,2EH,2BH,29H,27H
DB25H,22H,20H,1EH,1CH,1AH,18H,16H
DB15H,13H,11H,10H,0EH,0DH,0BH,0AH
DB09H,8H,7H,6H,5H,4H,3H,2H
DB02H,1H,0H,0H,0H,0H,0H,0H
DB00H,0H,0H,0H,0H,0H,1H,2H
DB02H,3H,4H,5H,6H,7H,8H,9H
DB0AH,0BH,0DH,0EH,10H,11H,13H,15H
DB16H,18H,1AH,1CH,1EH,20H,22H,25H
DB27H,29H,2BH,2EH,30H,33H,35H,38H
DB3AH,3DH,40H,43H,45H,48H,4CH,4EH
DB51H,51H,55H,57H,5AH,5DH,60H,63H
DB69H,6CH,6FH,72H,76H,79H,7CH,80H
4、D/A转换功能说明
1)使用DA0832作为简易波形发生器,产生三角波、方波、正弦波3种波形。
通过3个键盘进行选择。
2)3个键盘的选择功能:
K1、K2、K3选择输出波形类型,最左边显示块显示波形代码。
DA0832概述:
DAC0832是8分辨率的D/A转换集成芯片。
与微处理器完全兼容。
这个DA芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到广泛的应用。
D/A转换器由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。
D0~D7:
8位数据输入线,TTL电平,有效时间应大于90ns(否则锁存器的数据会出错);
ILE:
数据锁存允许控制信号输入线,高电平有效;
CS:
片选信号输入线(选通数据锁存器),低电平有效;
WR1:
数据锁存器写选通输入线,负脉冲(脉宽应大于500ns)有效。
由ILE、CS、WR1的逻辑组合产生LE1,当LE1为高电平时,数据锁存器状态随输入数据线变换,LE1的负跳变时将输入数据锁存;
XFER:
数据传输控制信号输入线,低电平有效,负脉冲(脉宽应大于500ns)有效;
WR2:
DAC寄存器选通输入线,负脉冲(脉宽应大于500ns)有效。
由WR1、XFER的逻辑组合产生LE2,当LE2为高电平时,DAC寄存器的输出随寄存器的输入而变化,LE2的负跳变时将数据锁存器的内容打入DAC寄存器并开始D/A转换。
IOUT1:
电流输出端1,其值随DAC寄存器的内容线性变化;
IOUT2:
电流输出端2,其值与IOUT1值之和为一常数;
Rfb:
反馈信号输入线,改变Rfb端外接电阻值可调整转换满量程精度;
电源输入端,Vcc的范围为+5V~+15V;
VREF:
基准电压输入线,VREF的范围为-10V~
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电子 工程设计 实验 报告