ASCII码键盘编码电路设计.docx
《ASCII码键盘编码电路设计.docx》由会员分享,可在线阅读,更多相关《ASCII码键盘编码电路设计.docx(18页珍藏版)》请在冰豆网上搜索。
ASCII码键盘编码电路设计
课程设计报告
题目:
ASCII码键盘编码电路设计
学生姓名:
学生学号:
1214030301
系别:
电子工程学院
专业:
通信工程
届别:
2012届
指导教师:
廖晓纬
电子工程学院制
2015年5月29日
ASCII码键盘编码电路设计
学生:
陈功
指导老师:
廖晓纬
电子工程学院12级通信工程
1.绪论
ASCII码是目前计算机中用得最广泛的字符集及其编码,是由美国国家标准局(ANSI)制定的ASCII码(AmericanStandardCodeforInformationInterchange,美国标准信息交换码),它已被国际标准化组织(ISO)定为国际标准,称为ISO646标准。
适用于所有拉丁文字字母,ASCII码有7位码和8位码两种形式。
因为1位二进制数可以表示(21=)2种状态:
0、1;而2位二进制数可以表示(22)=4种状态:
00、01、10、11;依次类推,7位二进制数可以表示(27=)128种状态,每种状态都唯一地编为一个7位的二进制码,对应一个字符(或控制码),这些码可以排列成一个十进制序号0~127。
所以,7位ASCII码是用七位二进制数进行编码的,可以表示128个字符。
第0~32号及第127号(共34个)是控制字符或通讯专用字符,如控制符:
LF(换行)、CR(回车)、FF(换页)、DEL(删除)、BEL(振铃)等;通讯专用字符:
SOH(文头)、EOT(文尾)、ACK(确认)等;
第33~126号(共94个)是字符,其中第48~57号为0~9十个阿拉伯数字;65~90号为26个大写英文字母,97~122号为26个小写英文字母,其余为一些标点符号、运算符号等。
2.内容摘要
本次课程设计共有8*8=64个键,在外加两个控制键Shift键和Ctrl键的作用下,共完成128个键的ASCII码输出。
其中,Shift键为英文大小写字母及其它符号控制键。
Ctrl键为文字符号(也称控制符号)和字符控制符。
本次试验的ASCII码输出,用与该ASCII码编码相应的灯泡表示。
3.设计简介与要求
3.1设计简介
ASCII键盘编码电路的任务是把键盘上所按下之按钮产生的开关信号,编成一个对应的ASCII代码从输出端输出。
3.2设计要求
用若干数字芯片和灯泡实现按下某一按钮,输出对应的ASCII代码。
主要技术指标:
(1)外接电源:
UO=12V
(2)灯泡工作电压UL=6V
(3)灯泡功率W=1W
4.ASCII码键盘编码设计原理和设计方案制定
4.174LS148D芯片参数及工作原理
图一74LS148D芯片管脚图
74ls148优先编码器管脚功能介绍:
16脚的集成芯片,电源是VCC(16)GND(8),I0—I7为输入信号,A2,A1,A0为三位二进制编码输出信号,IE是使能输入端,OE是使能输出端,GS为片优先编码输出端0-7编码输入端(低电平有效)。
芯片管脚
EI选通输入端(低电平有效)
A0、A1、A2三位二进制编码输出信号即编码输出端(低电平有效)
GS片优先编码输出端即宽展端(低电平有效)
EO选通输出端,即使能输出端
4.274LS04D芯片参数及工作原理
74LS04是6非门(反相器)他的工作电压5V,他的内部含有6个coms反相器,74LS04的作用就是反相把1变成0。
图二74LS04D芯片管脚图
输入
输出
A
B
Y
低电平
低电平
低电平
低电平
高电平
低电平
高电平
低电平
低电平
高电平
高电平
高电平
表一74LS04D芯片功能表
4.374LS85D芯片参数及工作原理
可进行二进制码和BCD码的比较,对两个4位字的比较结果由三个输出端(FA>
B,FA=B,FA<B=输出。
将若干85级联可比较较长的字,此时低级位的FA>B,FA=B,FA<B连接到高位级相应
的输入A>B、A=B、A<B,并使低位级的A=B为高电平。
引出端符号
A0-A3字A输入端
B0-B3字B输入端
A>BA>B级联输入端
A=BA=B级联输入端
A<BA<B级联输入端
FA=BA等于B输出端
FA>BA大于B输出端
FA<BA小于B输出端
图三74LS85D芯片引脚及其功能图
比较输入
级联输入
输出
A3,B3
A2,B2
A1,B1
A0,B0
A〉B
A〈B
A=B
A〉B
A〈B
A=B
A3>B3
X
X
X
X
X
X
H
L
L
A3X
X
X
X
X
X
L
H
L
A3=B3
A2〉B2
X
X
X
X
X
H
L
L
A3=B3
A2X
X
X
X
X
L
H
L
A3=B3
A2=B2
A1=B1
X
X
X
X
H
L
L
A3=B3
A2=B2
A1=B1
X
X
X
X
L
H
L
A3=B3
A2=B2
A1=B1
A0〉B0
X
X
X
H
L
L
A3=B3
A2=B2
A1=B1
A0〈B0
X
X
X
L
H
L
A3=B3
A2=B2
A1=B1
A0=B0
H
L
L
H
L
L
A3=B3
A2=B2
A1=B1
A0=B0
L
H
L
L
H
L
A3=B3
A2=B2
A1=B1
A0=B0
L
L
H
L
L
H
A3=B3
A2=B2
A1=B1
A0=B0
X
X
H
L
L
H
A3=B3
A2=B2
A1=B1
A0=B0
H
H
L
L
L
L
A3=B3
A2=B2
A1=B1
A0=B0
L
L
L
H
H
L
H=高电平L=低电平x=不定
表二74LS85D芯片功能表
4.474LS183芯片参数及工作原理
图四74LS183D芯片引脚图
1A、1B、2A、2B运算数输入端
1CIn、2CIn进位输入端
1COn+1、2COn+1进位输出端
1F、2F和输出端。
输入
输出
CIn
B
A
F
2COn+1
L
L
L
L
L
L
L
H
H
L
L
H
L
H
L
L
H
H
L
H
H
L
L
H
L
H
L
L
L
H
H
H
L
L
H
H
H
H
H
H
H=高电平L=低电平
表三74LS183芯片功能表
4.574LS32芯片参数及工作原理
74LS32是四2输入或门,常用在各种数字电路以及单片机系统中。
表达式为:
Y=A+B
引脚排列图管脚功能:
左下1--1A,2--1B,
3--1Y;4--2A,5--2B,6--2Y;7--GND;
右起:
右上8--3Y,9--3A,10--3B;11--4Y,12--4A,
13--4B;14--VCC
其中A,B为输入端,Y为输出端,GND为电源负极,VCC为电源正极。
图五74LS32引脚图
A
B
Y
0
0
0
0
1
1
1
0
1
1
1
1
表四74ls32真值表
5.ASCII码键盘编码设计方案实施
5.1总设计方案
1方框图
2
高位
低位
000
001
010
011
100
101
110
111
000
@
、
H
h
P
p
X
x
SP
NUL
(
BS
0
DEL
8
CAN
001
A
a
I
i
Q
q
Y
y
!
SOH
)
HT
1
DC1
9
EM
010
B
b
J
j
R
r
Z
z
“
STX
*
LF
2
DC2
:
SUB
011
C
c
K
k
S
s
[
{
#
ETX
+
VT
3
DC3
;
ESC
100
D
d
L
l
T
t
\
|
$
EOT
’
FF
4
DC4
<
FS
101
E
e
M
m
U
u
]
}
%
ENQ
-
CR
5
NAK
=
GS
110
F
f
N
n
V
v
^
~
&
ACK
.
SO
6
SYN
>
RS
111
G
g
O
o
W
w
_
DEL
BEL
/
SI
7
ETB
?
US
设计一个键盘,共有8*8=64个键,在外加两个控制键Shift键和Ctrl键的作用下,共完成128个键的ASCII码输出。
其中,Shift键为英文大小写字母及其它符号控制键。
Ctrl键为文字符号(也称控制符号)和字符控制符。
表五开关信号产生的编码表
在选择仿真软件时我选择了multisim12仿真软件。
因为Multisim提炼了SPICE仿真的复杂内容,这样无需懂得深入的SPICE技术就可以很快地进行捕获、仿真和分析新的设计,更适用于电子学教育。
Multisim是美国国家仪器(NI)有限公司推出的以Windows为基础的仿真工具,适用于板级的模拟/数字电路板的设计工作。
它包含了电路原理图的图形输入、电路硬件描述语言输入方式,具有丰富的仿真分析能力。
5.2控制电路部分的实现
图六ASCII码键盘电路输入控制部分
如上图1,此部分采用两个DSWPK_8开关来控制信号的输入。
其中上边的开关控制八列即ASCII码高三位,下边的开关控制八行即ASCII码低三位。
74LS148D即优先编码器主要是对输入进行编码,由于此编码器是低电平有效故需要反相器。
采用四个74LS04D即六反相器对74LS148D的输入与输出进行电平的转换,即高低电平的转换。
将U1、U2反相器和U5编码器的VCC接12V,GND接地。
U1的六个输入端依次接到开关的前六个代表着前六列,U2第5个和第6个输入端接到开关的后两个代表着后四列。
U1的六个输出端接到U5即编码器的前六个输入端,U2第5个和第六个输出端接到U5即编码器的后两个输入端。
将U5编码器的三个输出端接到U2反相器前三个输入端,至此U2反相器前三个输出端就是未修正的列ASCII码。
下面的U3、U4反相器和U6编码器的行接法与列接法类似。
5.3高位修正电路
当按下某键时,会显示该设计键盘的高档键的ASCII码,对比本编码与标准ASCII码编码表可知,本编码的前四列高档字符比标准ASCII码小64(1000000B),抵挡字符比标准ASCII码小96(1100000B);后四列高档字符跟标准ASCII码相同,而抵挡字符比标准ASCII码大32(100000B)。
因此在编码后需要对编码值进行修订得到正确的ASCII码。
而当按下这两个外加键时,会显示出相应的抵挡键的ASCII码。
图七实现shift键和Ctrl键的部分电路
当不按下Shift时对键盘上的前四列上档字符需要使用加法器对其高位加1000B,当按住shift时要输出低档字符的ASCII需要使用加法器对其高位加上1100B。
对键盘的后四列,其上档字符的编码正好等于标准ASCII码无需处理,当按住ctrl输出其下档字符时,由于其编码比ASCII码大32,需要对其高位减去100B,即加上1100B(100B的补码),电路图实现如上。
5.4输出电路部分
图八ASCII码键盘电路输出部分
输出电路部分采用74LS183D译码器,连接灯泡。
输出端采用小灯泡来显示输入键的标准ASCII码,当小灯泡亮时说明是1,而当小灯泡不亮时则为0.
表六元器件清单
5.6系统整体电路图
图九整体电路图
6.ASCII码电路设计仿真
图十仿真电路初始状态
实验总体电路图如下所示,当打开仿真按钮,由于所有的开关都置零,通过优先编码器编出来的是000000,此时X1灯会亮,这是初始状态。
进入测试后,例如,列线的开关表示为0时,行线的开关也为0时,选择了键盘设计中的有第一行第一列,即编码为000000,当不按Shift键时,只有X1灯亮,表示的是64,即“@”,当按下Shift键时,X1、X2灯亮,表示的是96,即“、”。
图十一仿真电路闭合shift键
又如:
当列线的开关表示5,行线的开关表示0,即选择了键盘设计中的第一行第五列,即编码为100000,当不按Ctrl键时,X2灯亮,表示的是32,即“SP”,当按下Ctrl键时,所有的灯都不亮,表示的是0即“NUL”。
图十二仿真电路表示出5列1行ASCII码
图十三仿真电路表示出5列1行(行高位)ASCII码
7.课程设计心得
通过这次ASCII码键盘编码电路设计,我在知识方面进一步的掌握了74LS148、74LS04、74LS85、74LS183芯片的主要参数和功能,并能熟练的运用它们。
在此课程设计中我学到很多知识和技能,学会了使用软件Multisim12,并让我对以前所学的电路和数电知识有了更深层次的理解与巩固。
增强了我在互联网络搜集、查阅相关文献资料并组织材料的综合能力。
对于电路设计的认识:
通过这次电路设计,让我了解到在设计电路时,首先要对设计的电路有一个宏观的认识,清楚设计的电路需要有哪些功能,了解元器件的特性后再进行元器件的筛选。
之后解决设计电路中遇到的难题,例如如何对结果的高两位进行准确的修正。
最后对设计完成的电路进行仿真测试,并观测多组仿真结果。
达到了学以致用的效果,并在实践中加强了对所学知识的理解程度。
了解到只有自己动手操作才能很好的掌握数字逻辑电路设计的思路和方法,开拓我的视野,同时,只有耐心及坚持不懈才能赢得最后的胜利。
8.附录
8.1器件清单
元器件类别
元器件名称
元器件参数
数目
数字芯片
U1A,U2A,U3A,U4A。
U5A,U6A,U7A
74LS183D
7
U8,U9,U10,U11
74LS04D
4
U12,U13
74LS148D
2
U14
74LS183D
1
灯泡
X1,X2,X3,X4,X5,X6,X7
6V,1W
7
开关
S1,S2
DSWPK_8
2
S3,S4
SPTS_NO_SB
2