十进制转十六进制设计Word格式文档下载.docx
- 文档编号:20085505
- 上传时间:2023-01-16
- 格式:DOCX
- 页数:16
- 大小:734.79KB
十进制转十六进制设计Word格式文档下载.docx
《十进制转十六进制设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《十进制转十六进制设计Word格式文档下载.docx(16页珍藏版)》请在冰豆网上搜索。
进制转换是人们利用符号来计数的方法,包含很多种数字转换。
进制转换由一组数码符号和两个基本因素(“基”与“权”)构成。
常用进制有十进制、二进制、八进制、十六进制等,各进制数之间可以通过一定方法进行转换。
实验用到89C51单片机,89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压、高性能CMOS8位微处理器,俗称单片机。
单片机的可擦除只读存储器可以反复擦除100次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的89C51是一种高效微控制器,89C2051是它的一种精简版本。
89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
二、实验任务
实验内容:
应用89C51单片机设计出一种十进制—十六进制转换器,转换器要求如下:
1)由三个按键实现十进制数的输入及转换确认
2)在转换过程中由三位一体数码管实时显示数据
三、总体思路
主控芯片选用AT89C51,并用其P0端口控制数码管段选,P2端口控制数码管位选。
在数码管显示时由74LS07进行驱动。
转换器总体框图如下:
图一:
设计总体框图
四、详细设计
1、单片机最小系统设计
单片机工作的最基本电路的构成为:
单片机、电源、时钟电路、复位电路。
单片机最小系统
1.1、时钟电路
时钟电路就是振荡电路,向单片机提供一个正弦波信号作为基准,决定单片机的执行速度。
AT89S51单片机时钟频率范围:
0—33MHz。
电路如下:
图二:
时钟电路
1.2、复位电路
复位电路产生复位信号,使单片机从固定的起始状态开始工作,完成单片机的“启机”过程。
AT89S51单片机复位信号是高电平有效,通过RST/VPD(9脚)输入。
2、数码管驱动电路
2.1、数码管结构
数码管内部由七个条形发光二极管和一个小圆点发光二极管组成,根据各管的亮暗组合成字符。
常见数码管有10根管脚。
管脚排列如下图所示。
其中COM为公共端,根据内部发光二极管的接线形式可分为共阴极和共阳极两种。
实验使用的为共阴极数码管,共阴极数码管公共端接地。
每段发光二极管需5~10mA的驱动电流才能正常发光,一般需加限流电阻控制电流的大小。
2.2、数码管显示原理
LED数码管的a~g七个发光二极管。
加正电压的发光,加零电压的不能发光,不同亮暗的组合就能形成不同的字型,这种组合称为字型码。
共阳极和共阴极的字型码是不同的。
把一个共阳极的数码管接到STC89C52RC单片机的P0口上,举例,让此数码管显示数字0
分析:
共阳极的数码管,COM端为高电平,数据段为低电平时,对应的段亮。
则
p0.7p0.6p0.5p0.4p0.3p0.2p0.1p0.0接
dpgfedcba对应电平为
11000000
此时显示“0”。
数码管显示编码如下:
显示
段符号
十六进制代码
dp
g
f
e
d
c
b
a
共阴极
共阳极
1
2
3
4
5
6
7
8
9
A
C
E
F
H
P
3FH
06H
5BH
4FH
66H
6DH
7DH
07H
7FH
6FH
77H
7CH
39H
5EH
79H
71H
76H
F3H
C0H
F9H
A4H
B0H
99H
92H
82H
F8H
80H
90H
88H
83H
C6H
A1H
86H
8EH
89H
8CH
2.3、数码管驱动电路设计
P0口:
是一组8位漏极开路双向I/O口,也即地址/数据总线复用口。
作为输出口用时,每位驱动8个TTL逻辑门电路,对端口写“I”可作为高阻抗输入端用。
在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。
在Flash编程时,P0口接受指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。
P0口输出电流不到1ma,无法使数码管发光,所以在单片机与数码管见接74ls07,以驱动数码管。
电路如图所示:
电路各点电压测量值:
P0端口值
段选74ls07
位选74ls07
输入
输出
高电平
低电平
0x7f
1.67v
0v
2.2v
0.23v
4.7v
1.1v
0.31v
0x07
1.63v
0.26v
1.3v
0.34v
0x7d
1.62v
2.3v
0.19v
0.99v
0.33v
0x6d
1.68v
2.0v
0.2v
3、电路原理图
4、PCB图(用于雕刻pcb板)
5、程序框图
7、程序
#include<
reg52.h>
#defineuintunsignedint
#defineucharunsignedchar
ucharcodetable[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
//uintaddr[0xfe,0xfb,0xf7];
sbitduan=P2^6;
sbitwela=P2^7;
sbitkey1=P3^4;
sbitkey2=P3^5;
sbitkey3=P3^6;
sbitkey4=P3^7;
uintnume=000;
uintflag1,temp1,temp2,temp3,temp4,addr,tt,bai,shi,ge;
voidkey();
voidshow_data();
voiddelay(uintz);
voidmain()
{while
(1)
{key();
show_data();
}
}
//-----------------------
//------------------------
voidshow_data()
{
wela=1;
P0=0xfe;
wela=0;
P0=0xff;
duan=1;
P0=table[bai];
duan=0;
delay(5);
//------
wela=1;
P0=0xfd;
P0=table[shi];
//---------------
P0=0xfb;
P0=table[ge];
//------------
switch(flag1)
{
case1:
tt++;
if(tt==2)
tt=0;
bai=nume/100;
shi=nume%100/10;
ge=nume%10;
//flag1=0;
break;
case2:
nume++;
break;
case3:
nume--;
case4:
bai=nume/256;
shi=nume%256/16;
ge=nume%16;
//default:
flag1=0;
//---------------------
voidkey()
{
if(temp1==0)
{delay(10);
temp1=key1;
if(temp1==0)
{
while(!
key1);
flag1=1;
}
//-----------------------------------------
temp2=key2;
if(temp2==0)
if(temp2==0)
key2);
flag1=2;
//--------------------
temp3=key3;
if(temp3==0)
if(temp3==0)
key3);
flag1=3;
//-----------------
temp4=key4;
if(temp4==0)
temp4=key4;
if(temp4==0)
key4);
flag1=4;
voiddelay(uintz)
{uinti,j;
for(i=z;
i>
0;
i--)
for(j=110;
j>
j--);
五、调试与运行结果
实验序号
输入(十进制数)
输出(十六进制数)
15
30
1E
107
6b
124
7C
255
FF
六、设计资料及参考文献
1.张毅刚,单片机原理及应用,高等教育出版社
2.胡汉才.单片机原理及其接口技术.清华大学出版社,2004
3.吴飞青等.单片机原理与应用实践指导.机械工业出版社2009.2
七、心得体会
通过两个星期的综合实验,使我对大学所学的课程有了更深刻的认识。
通过进制转换器的制作,我学会了使用89C51单片机组建简单的系统,这个实验是个综合性的实验,首先是单片机的使用,然后是数字电路模拟电路的知识,还要用C语言对单片机进行编程,进而实现仿真。
在制作实物的过程中,我用到了EDA的知识,用protel绘制原理图,然后绘制pcb,最后雕刻出pcb板,最终用数码管显示出转换的结果。
在制作实物的过程中,我遇到了很多问题,通过和搭档的合作以及与姚老师的交流,让我解决了这一个个的问题,这次实验对我的帮助很大,主要是实践能力的提升,使我获益匪浅。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 十进制 十六进制 设计