文档库 最新最全的文档下载
当前位置:文档库 › 标准PS_2键盘与单片机的接口设计

标准PS_2键盘与单片机的接口设计

标准PS_2键盘与单片机的接口设计
标准PS_2键盘与单片机的接口设计

标准PS Π2键盘与单片机的接口设计

徐 晓,汪道辉

(四川大学电气信息学院,四川成都610065)

摘 要:针对标准的PS Π2设备,实现了与单片机的接口,本文分析了PS Π2键盘的接口和通讯协议,介绍了PS Π2键盘与单片机的接口设计,并以8051为例,配合点阵LC D 显示器,实现了PS Π2键盘的输入,并进一步探讨了用PS Π2鼠标

实现嵌入式设备的图形化人机接口(G UI )。关键词:PS Π2接口;双向同步协议

中图分类号:T N9291532 文献标识码:A 文章编号:167224984(2005)0120089203

I nterface of standard PS Π2keyboard connected to MCU

X U X iao ,W ANG Dao 2hui

(C ollege of E lectrical Engineering ,S ichuam University ,Chengdu 610065,China )

Abstract :This paper describes the inter face and protocol used by PS Π2keyboard and how to connect the PS Π2keyboard to a MC U 1This paper sets 8051equipped with a LC D as a minimum system and realizes the input process of PS Π2keyboard 1Furtherm ore ,it discuss the realize of graphical inter faces of embedded devices with PS Π2m ouse 1K ey w ords :PS Π2inter face ;Bidirectional synchronous serial protocol

收稿日期:2004206218;收到修改稿日期:2004208225

1 引 言

目前,在嵌入式智能仪器仪表中,常用LC D 加键盘实现人机接口,在实际应用中人机界面需要显示汉字,笔者从事的一个电力保护项目中还需要输入并保存汉字以标注线路号等信息,如果用简单的控制键盘实现英文甚至汉字的输入,则程序较复杂,笔者考虑到PC 上用的标准PS Π2键盘,可通过简单的接口实现与MC U 的连接,利用成熟且普及的PC 键盘,可实现复杂的输入,对于MC U 并不占用很多

口线,甚至口线复用,可仅在需要输入时再接上键盘,是一种廉价的键盘解决方案。

2 PS Π2键盘的接口和协议

211 接口的物理特性

PS Π2接口用于许多现代的鼠标和键盘,由I BM

最初开发和使用。如图1所示,物理上的PS Π2接口有两种类型的连接器:5脚的DI N 和6脚的mini 2DI N 。在使用时由单片机提供+5V 电源给键盘,键盘的地直接接在电源地上

212 接口协议原理

PS Π2键盘采用一种双向同步串行协议。即每

次向时钟线上发送一位脉冲就在数据线上发送一位数据。相互传输中,主机拥有总线控制权,可以把时钟线一直拉低来抑制来自键盘的通讯。从键盘发往

主机的数据在时钟信号的下降沿被读取,主机发往键盘的数据在上升沿被读取。不管通讯的方向怎样,总是键盘产生时钟信号,如果主机要发送数据,必须首先告诉键盘开始产生时钟信号,具体过程:主

机首先下拉时钟线至少100μs 抑制通信,然后再下拉

数据线最后释放时钟线,键盘检测到这一时序状态,会在10ms 内产生时钟信号,如图2所示,键盘在时

第31卷第1期 2005年1月中国测试技术

CHI NA ME AS URE ME NT TECH NO LOGY V ol 131 N o 11Jan ,2005 

钟脉冲标记下输入八个数据位和一个停止位后,键盘将数据线拉低并产生最后一个时钟脉冲。如果键盘向主机发送数据,首先检查时钟以确定它是否为高电平。如果不是,那么主机抑制了通讯,必须缓冲要发送的数据直到重新获得总线的控制权(键盘有16字节的缓冲区),即等到时钟线是高电平,就可以传输数据。具体时序如图3所示。这里未给出主机时序,此时主机一直处于接收状态

213 数据包结构

如上所示,在通讯中的八个数据位为通讯中的

命令字,任何时候,主机都可以对键盘发送命令字。举例如表1,除以下两种情况外,键盘必须在20ms 内应答确认命令字0FAH :(1)当主机发送ECH O 指令(0EEH ),表示通讯正常;(2)当主机要求重发数据时,键盘重发上次发送的数据。

表1 通讯命令字主机发送的命令字16进制值键盘发送的命令字16进制值复位键盘0xFF 应答成功码0xAA 重新发送0xFE 应答错误码0xFC 键盘停止扫描0xF5ECHO 0xEE 重新使能键盘

0xF4确认0xFA ECHO 0xEE 重新发送

0xFE

LED 状态

0xED

其中0xE D 命令后跟随一个参数字节,用于指示键盘上Num Lock ,Caps Lock ,and Scroll Lock LE D 的状态,此参数字节定义如下:

Caps

Num

Scroll

最后三位0:关LE D ,1:开LE D

键盘在有按键按下时,会向主机发送该按键的通码,当键释放时,发送断码,例如:“A ”,通码为0x1C ,断码为0xF0,0x1C 。扩展按键通常通码与断码均要多一个字节,例如:Right Arrow 通码为0xE0,

0x74,断码为0xE0,0xF0,0x74。

单个按键的接收:(以“A ”为例)

A 通码+A 断码:0x1C ,0xF0,0x1C

按Shift +a

Shift 通码+a 通码+a 断码+Shift 断码其他接收过程不再赘述。

3 

设计与实现

311 硬件接口设计

考虑到时钟脉冲信号总由键盘产生,因此,采用这种方案:键盘的C LOCK 接主机的一外部中断(I NT 0),数据线,接任一I ΠO 口线(P310,为兼容用串口方式故接在RxD0上)。在数据线及时钟线上加10K 的大电阻上拉,试验中,首先使用最原始的查寻方式,即MC U 在释放总线控制权后(置C LOCK 为高),一直查询C LOCK 状态,由图3知键盘需要发送数据时,取得总线控制权,产生时钟的下降沿,主机继续查询C LOCK 当检测到下降沿,即从DAT 读入一个数据,循环往复,直至接收完8位数据位,一个奇校验位,一个停止位。此种方式通过后,即在程序中改为C LOCK 触发产生中断方式,即主机释放总线控制权后,开外部中断,C LOCK 下降沿产生中断信号,进入中断服务程序接收数据,但此种方案的不足在于,中断频繁,耗费资源。考虑到键盘与主机采用串行传输,类似于MC U 的UART 传输,故可DAT 接MC U 的RxD0这样主机每接收到数据才中断一次,减少了资源的耗费,不过,键盘等PS Π2设备一般工作在10~20kH z (依厂家设备不同),故要求主机与设备的波特率同步自适应,才能正确接收数据(波特率自适应的实现:键盘上电自检时要发送状态码,利用时钟脉冲的中断,由定时器测量脉冲周期,可得时

90

中国测试技术

2005年1月

钟频率,从而得到波特率,实现波特率的自适应)。

312软件设计

软件流程如图5所示,驱动及键盘码的映射和部分按键服务程序由中断服务程序完成,

键盘键值

通过全局变量传递给主程序,主程序只要查询标志位,当有键按下时,执行相应的程序,在这里,笔者完成了全拼的输入法程序,并通过了试验验证。

4 应用实例

在一电力系统的保护系统中,采用80C196系统,需要各个轧刀名称及投切状态,线路号等,但用来控制用的几个键太少,要想实现输入法过于复杂,故在主板上加了一个PS Π2接口用来连接键盘,只在输入汉字时使用,所增加的成本也不高,但程序相对简化了很多。

5 结束语

PS Π2接口设备均可无缝连接至单片机,常用的

就是键盘鼠标,笔者也已实现了鼠标的输入,PS Π2鼠标与键盘遵从同一传输协议,总体来说,随着嵌入式处理器性能的不断提高,各种设备应朝着更为人性化的方向发展,在嵌入式系统中采用键盘或鼠标,即可已灵活配置,亦可降低成本减小占用资源,还可使LC D 更加美观,特别是一些监控设备中,很少使用键盘,只在初始化时使用来配置一些参数,使用PS Π2接口是一种较好的解决方案。

参考文献

[1] PS Π2T echnical Reference 1Adam Chapweske ,20021[2] 徐爱钧,等1单片机高级语言C51应用程序设计[M]1

北京:电子工业出版社,20011

[3] 何立民1单片机应用系统设计[M]1北京:北京航空航

天大学出版社,19901

(上接第86页)

G enerateCR ;

ΠΠ协议状态机

FS M ;ΠΠ判断结果

if CurC ommandState =stEnd then begin Result :=true ;end else begin

Result :=false ;end ;end ;

4 结束语

RS485是一种抗干扰能力强的串口通信方式。

在很多领域中由于RS485硬件电路已比较成熟,软

件的设计就显得尤为重要。设计中利用RS485特点来进行通讯,并用Delphi 开发的通信软件,达到了计算机与智能仪表双向通信的目的。该软件具有开发迅速灵活、人机界面良好且易实现等优点。本设计所编写的通信程序就是对其有效运用的具体体现。

参考文献

[1] 李朝青1PC 机与单片机&DSP 数据通信技术选编(1)

[M]1北京:北京航空航天大学出版社,20021

[2] 石东海1单片机数据通信技术从入门到精通[M]1西

安:西安电子科技大学出版社,20021

[3] 陈灿煌1Delphi6彻底研究[M]1北京:中国铁道出版

社,20021

第31卷第1期

徐 晓等:标准PS Π2键盘与单片机的接口设计

 91

 

最新单片机与键盘接口

单片机与键盘接口

MCS-51单片机与键盘的接口 键盘接口和数码管接口是构成单片机人机界面的主要方法。键盘是单片机应用系统中最常用的输入设备,操作人员一般都是通过键盘向单片机系统输入指令、数据,实现简单的人机通信。所以学习单片机与键盘接口的原理和编程方法就显得十分的重要。 一.键盘的工作原理 1.1 按键的分类 按键按照结构原理可分为两类,一类是触点式开关按键,如机械式开关、导电橡胶式开关等;另一类是无触点式开关按键,如电气式按键,磁感应按键等。前者造价低,后者寿命长。目前,单片机应用系统中最常见的是触点式开关按键。 按键按照接口原理可分为编码键盘与非编码键盘两类,这两类键盘的主要区别是识别键符及给出相应键码的方法。编码键盘主要是用硬件来实现对键的识别,非编码键盘主要是由软件来实现键盘的定义与识别。 全编码键盘能够由硬件逻辑自动提供与键对应的编码,此外,一般还具有去抖动和多键、窜键保护电路。这种键盘使用方便,但需要较多的硬件,价格较贵,一般的单片机应用系统较少采用。非编码键盘只简单地提供行和列的矩阵,其它工作均由软件完成。由于其经济实用,较多地应用于单片机系统中。下面将重点介绍非编码键盘接口。 1.2 键输入原理 在单片机应用系统中,除了复位按键有专门的复位电路及专一的复位功能外,其它按键都是以开关状态来设置控制功能或输入数据的。当所设置的功能键或数字键按下时,计算机应用系统应完成该按键所设定的功能,键信息输入是与软件结构密切相关的过程。

对于一组键或一个键盘,总有一个接口电路与单片机相连。单片机可以采用查 询或中断方式了解有无将键输入,并检查是哪一个键按下,将该键号送入累加 器 ACC ,然后通过跳转指令转入执行该键的功能程序,执行完后再返回主程 序。. 1.3 按键结构与特点 微机键盘通常使用机械触点式按键开关,其主要功能是把机械上的通断转 换成为电气上的逻辑关系。也就是说,它能提供标准的 TTL 逻辑电平,以便与 通用数字系统的逻辑电平相容。 机械式按键再按下或释放时,由于机械弹性作用的影响,通常伴随有一定时 间的触点机械抖动,然后其触点才稳定下来。其抖动过程如下图所示,抖动时 间的长短与开关的机械特性有关,一般为 5 ~ 10 ms 。 按键触点的机械抖动 在触点抖动期间检测按键的通与断状态,可能导致判断出错,即按键一次按下或释放被错误地认为是多次操作,这种情况是不允许出现的。为了克服按键触点机械抖动所致的检测误判,必须采取去抖动措施。这一点可从硬件、软件两方面予以考虑。在键数较少时,可用硬件去抖,而当键数较多时,采用软件去抖。 在硬件上可采用在键输出端加 R-S 触发器 ( 双稳态触发器 ) 或单稳态触发器构成去抖动电路。下图是一种由 R-S 触发器构成的去抖动电路,当触发器一旦翻转,触点抖动不会对其产生任何影响。

单片机课程设计题目

《单片机原理与应用》课程设计题目 1.基于单片机的电子秒表 本设计以MCS-51系列单片机为核心,采用常用电子器件设计,一个电源开关,两个按键,三位数码管显示,打开电源开关后显示8,每秒循环左移一位,即□□8—>□8□—>8□□—>□□8—>…,按A键开始计时,实时显示所经历的时间,按B键停止计时并显示从开始到当前时刻的时间,要求精确到0.1秒,量程为0~99.9秒。 要求按键输入采用中断方式,按键A接INT0,按键B接INT1。 2.智能电动百叶窗 本设计以MCS-51系列单片机为核心,采用常用电子器件设计,一个电源开关,用一台直流电机控制百叶窗叶片的旋转(正转/反转),用一个光敏电阻传感器测量室内光强度,并用两位数码管显示测量结果,设置三个按键:手动/自动切换、手动正转和手动反转,用一个发光二极管显示手动/自动状态,自动状态时二极管亮。 设置两个极限位置保护行程开关,用于保护百叶窗叶片:当正转到极限位置压下行程开关时,电机停止正转,但还可以反转;当反转到极限位置压下行程开关时,电机停止反转,但还可以正转。 按键输入采用中断方式,按键中断请求信号接INT0. 单片机根据设定光强S1和S2(S2 > S1)和实测光强P控制电机M的动作:当P<=S1时,控制M正转以增加进光量; 当P>S2时,控制M反转以减少进光量; 当S1S+1时,控制R断开电加热回路; 当S-1

(完整版)单片机技术毕业课程设计说明书范文

郑州工业应用技术学院课程设计说明书 题目: 姓名: 院(系): 专业班级: 学号: 指导教师: 成绩:

时间:年月日至年月日

郑州工业应用技术学院 课程设计任务书 题目: 电子秒表设计 专业、班级学号姓名 主要内容、基本要求、主要参考资料等: 主要内容: 利用单片机设计一个电子秒表,完成四位显示××.××秒,并具备开始计时、暂停、清零等功能。 基本要求: 1.利用单片机设计一个电子秒表,完成四位显示××.××秒,并设定按钮完成开始计时、暂停、清零等功能。 2.利用proteus软件完成设计电路和仿真; 3.掌握定时器的使用和数码管显示的方法; 4.通过此次设计将单片机软硬件结合起来对程序进行编辑、校验,锻炼实践能力和理论联系实际的能力。 主要参考资料: [1]李全利,单片机原理及接口技术[M],高等教育出版社 [2]王文杰,单片机应用技术[M],冶金工业出版社

[3]朱清慧,PROTEUS教程——电子线路设计、制版与仿真[M],清华大学出版社 [4]单片机实验指导书,天煌教仪 [5]彭伟,单片机C语言程序设计实训100例[M],电子工业出版社 完成期限: 指导教师签名: 课程负责人签名: 年月日 目录 1.引言 (1) 2.方案设计与论证 (3) 2.1 直流调速系统 (3) 2.1 检测系统 (4) 2.3显示电路 (9) 2.4系统原理图 (9) 3.硬件设计 (10) 3.1 80C51单片机硬件结构 (10) 3.2 最小应用系统设计 (11)

3.3前向通道设计 (12) 3.4后向通道设计 (15) 3.5显示电路设计 (17) 4.软件设计 (20) 4.1主程序设计 (20) 4.2显示子程序设计 (24) 4.3避障子程序设计 (25) 4.4软件抗干扰技术 (26) 4.5“看门狗”技术 (28) 4.6可编程逻辑器件 (29) 5.测试数据、测试结果分析 (30) 6.结论 (31) 致谢 (31) 参考文献 (32) 附录A 程序清单 (33) 附录B 硬件原理图 (41)

基于51单片机的USB键盘设计与实现

三江学院 本科生毕业设计(论文)题目基于51单片机的USB键盘设计与实现高职院院(系)电气工程及其自动化专业 学生姓名梁邱一学号 G105071013 指导教师孙传峰职称讲师 指导教师工作单位三江学院 起讫日期 2013年12月10日至2014年4月12日

摘要 随着计算机技术的不断更新和多媒体技术的快速发展,传统的计算机外设接口因为存在许多缺点已经不能适应计算机的发展需要。比起传统的AT,PS/2,串口,通用串行总线USB,具有速度快,使用方便灵活,易于扩展,支持即插即用,成本低廉等一系列优点,得到了广泛的应用。 本论文阐述了51系列单片机和USB的相关内容,详细介绍了系统的一些功能设计,包括硬件设计和软件设计。在程序调试期间用简单的串口通信电路,通过串口调试助手掌握了USB指令的传输过程,这对整个方案的设计起到了很大的指导作用。论文以单片机最小系统配合模拟键盘组成的USB键盘硬件系统,通过对D12芯片的学习与探索,在其基本命令接口的支持下,结合硬件进行相应的固件程序设计,使其在USB协议下,实现USB模块与PC的数据通信,完成USB键盘的功能模拟。 总结论文研究工作有阐述USB总线的原理、对本设计的系统要求作出了分析、根据要求选定元件和具体编程方案、针对系统所要实现的功能对相关芯片作了详细介绍以及在硬件部分设计了原理图。 关键词:USB;D12;PC

Abstract With the rapid development of computer technology and multimedia technology constantly updated, traditional computer peripheral interface because there are many shortcomings have been unable to meet the development needs of the https://www.wendangku.net/doc/1116282427.html,pared to traditional AT, PS / 2, serial, Universal Serial Bus USB, with fast, flexible and easy to use, easy to expand, support Plug and Play, a series of advantages, such as low cost, has been widely used. This paper describes the 51 series and USB related content, detailing some of the features of the system design, including hardware and software design.During debugging a simple serial communication circuit, through the serial port debugging assistant master USB transfer instructions, which designed the entire program has played a significant role in guiding.Thesis smallest single-chip system consisting of analog keyboard with a USB keyboard hardware system, by learning and exploration D12 chips, with the support of its basic command interface, in conjunction with the corresponding hardware firmware design, making it in the USB protocol, USB module data communication with the PC, the USB keyboard to complete the functional simulation. This paper summarizes research work has elaborated the principle of the USB bus, the system is designed to require the analysis, components and solutions based on the specific requirements of the selected programming for the system to achieve the function of the relevant chips are described in detail in the hardware part of the design as well as the principle of Figure. Keywords:USB;D12;PC

单片机课程设计代码

陈新 2014/7/21 17:32:03 QQ可以找到历史记录的 陈新 17:33:15 无痕的回忆 17:01:52 LED_LOOP: MOV R1, #251 ;1s的显示延时(好奇怪,居然不准) LED_LOOP_1: MOV R4, #14 ;使用了寄存器R1,R4(估计可以使用堆栈临时释放) LED_LOOP_2: LCALL DISPLAY_MOVE DJNZ R4, LED_LOOP_2 DJNZ R1, LED_LOOP_1 RET 无痕的回忆 23:10:36 ORG 0000H AJMP MAIN ORG 0030H HC595_SCK BIT P0.4 HC595_RCK BIT P0.5 HC595_RST BIT P0.6 HC595_DAT BIT P0.7 MAIN: MOV A, #00H MOV P0, A CLR HC595_RST LOOP0: MOV R0, #0 LOOP1: MOV R1, #100 LOOP2: MOV R4, #10 LOOP3: LCALL DISPLAY DJNZ R4, LOOP3 DJNZ R1, LOOP2 INC R0 LJMP LOOP1 DELEY0: MOV R6, #4 ;1ms延时的子程序 DELEY1: MOV R7, #123 DELEY2: DJNZ R7, DELEY2 DJNZ R6, DELEY1 NOP RET

DISPLAY: MOV A, R0 MOV B, #100 DIV AB MOV B, #10 DIV AB ;MOV A, #0 LCALL SHOW_NUM MOV A, P0 ANL A, #0F0H ORL A, #1 MOV P0, A ;延时LCALL DELEY0 ;延时LCALL DELEY0 MOV A, R0 ;有问题MOV B, #100 DIV AB ;MOV A, #7 LCALL SHOW_NUM MOV A, P0 ANL A, #0F0H ORL A, #2 MOV P0, A ;延时LCALL DELEY0 ;延时LCALL DELEY0 MOV A, R0 MOV B, #100 DIV AB XCH A, B MOV B, #10 DIV AB ;MOV A, #7 LCALL SHOW_NUM MOV A, P0 ANL A, #0F0H ORL A, #4 MOV P0, A LCALL DELEY0 ;延时LCALL DELEY0 ;延时 MOV A, R0 MOV B, #10 DIV AB

电脑键盘接线图

电脑键盘接线图 判断键盘控制电路板上的四根线各起什么作用至关重要。将电路板翻过来后可以看到其背面已有明确的提示(图四):黄线Vcc为+5V高电平;红线为地线GND低电平;绿线为Keyboard DATA高电平;白线为Keyboard Clock低电平。不同的键盘连线颜色的定义可能也不同,因此如果不能根据提示正确识别的话可以用万用表测量一下或者参考图五中对于连线的定义(图五)。USB延长线中也是一组四根线,分

别为红、白、绿、黑四根。它们分别对应的是+5V电源、数据负线(DATA-)、数据正线(DATA+)及地线(GND)

电脑键盘的四根线如何接 罗技键盘,y-ss60 线的颜色:红,绿,白,黑 盼请解答,谢谢! 四根线分别是:电源,地,数据,时钟 你要把键盘拆出来,线的另一端焊在里面的电路板,上面标有v(电源),g(地),c(时钟),d(数据).再到网上找个键盘接口定义的图,对着另一端接上去就可以了 这是普通的ps/2的键盘接线图,图中是接口(ps/2插头)截面图。上面标的字母一般在键盘里的电路板上有印的,对照着焊就行了。如果没有标注字母,这个我就没办法了哈哈~多数键盘应该是按照dcgv的顺序排线的,没有写明的可优先考虑这个。 针脚定义如下: pinnamedirdescription 1n/cnotconnected 2data-keydata 3vccpower,+5vdc 4gndgnd 5n/cnotconnected 6clk-clock 键盘接线黄、红、白、绿对应的针脚如下 对应ps/2线对应ps/2针脚 黄3 红4 白6 绿2 对应的电线和针脚连接为: 对应ps/2线对应ps/2针脚 蓝3 白6 绿2 橙4 PS/2鼠标自己动手改USB接口 USB作为电脑外设的一种高速连接标准,目前已广泛应用到了各种外部设备上。电脑主机则在机箱上提供了前置USB接口,有的厂商甚至是在显示器与键盘都添加了USB接口,其目的就是为了能够让用户方便的进行连接鼠标、数码相机等耗电量小的USB外设而无须费力弯腰去机箱背后接插USB设备。键盘上这种体贴的设计让我等用户羡慕不已,我们能不能自己动手让普通键盘也能拥有一个USB接口呢? 答案当然是肯定的。由于键盘与USB同样提供的是5V电源,且同样有地线、

单片机课程设计计算器

课程设计说明书 课程设计名称:单片机课程设计 课程设计题目:四位数加法计算器的设计学院名称:电气信息学院 专业班级: 学生学号:

学生姓名: 学生成绩: 指导教师: 课程设计时间:至

格式说明(打印版格式,手写版不做要求) (1)任务书三项的内容用小四号宋体,倍行距。 (2)目录(黑体,四号,居中,中间空四格),内容自动生成,宋体小四号。 (3)章的标题用四号黑体加粗(居中排)。 (4)章以下的标题用小四号宋体加粗(顶格排)。 (5)正文用小四号宋体,倍行距;段落两端对齐,每个段落首行缩进两个字。 (6)图和表中文字用五号宋体,图名和表名分别置于图的下方和表的上方,用五号宋体(居中排)。(7)页眉中的文字采用五号宋体,居中排。页眉统一为:武汉工程大学本科课程设计。 (8)页码:封面、扉页不占页码;目录采用希腊字母Ⅰ、Ⅱ、Ⅲ…排列,正文采用阿拉伯数字1、2、3…排列;页码位于页脚,居中位置。 (9)标题编号应统一,如:第一章,1,,……;论文中的表、图和公式按章编号,如:表、表……;图、图……;公式()、公式()。

课程设计任务书 一、课程设计的任务和基本要求 (一)设计任务(从“单片机课程设计题目”汇总文档中任选1题,根 据所选课题的具体设计要求来填写此栏) 1. 系统通过4x4的矩阵键盘输入数字及运算符。 2. 可以进行4位十进制数以内的加法运算,如果计算结果超过4位十进制数,则屏幕显示E。 3. 可以进行加法以外的计算(乘、除、减)。 4. 创新部分:使用LCD1602液晶显示屏进行显示,有开机欢迎界面,计算数据与结果分两行显示,支持小数运算。 (二)基本要求 1.有硬件结构图、电路图及文字说明; 2.有程序设计的分析、思路说明; 3.有程序流程框图、程序代码及注释说明; 4.完成系统调试(硬件系统可以借助实验装置实现,也可在Proteus 软件中仿真模拟); 5.有程序运行结果的截屏图片。

矩阵键盘设计实验报告

南京林业大学 实验报告 基于AT89C51 单片机4x4矩阵键盘接口电路设计 课程机电一体化设计基础 院系机械电子工程学院 班级 学号 姓名

指导老师杨雨图 2013年9月26日

一、实验目的 1、掌握键盘接口的基本特点,了解独立键盘和矩 阵键盘的应用方法。 2、掌握键盘接口的硬件设计方法,软件程序设计 和贴士排错能力。 3、掌握利用Keil51软件对程序进行编译。 4、用Proteus软件绘制“矩阵键盘扫描”电路,并用测试程序进行仿真。 5、会根据实际功能,正确选择单片机功能接线,编制正确程序。对实验结果 能做出分析和解释,能写出符合规格的实验报告。 二、实验要求 通过实训,学生应达到以下几方面的要求: 素质要求 1.以积极认真的态度对待本次实训,遵章守纪、团结协作。 2.善于发现数字电路中存在的问题、分析问题、解决问题,努力培养独立 工作能力。 能力要求 1.模拟电路的理论知识 2.脉冲与数字电路的理念知识 3.通过模拟、数字电路实验有一定的动手能力 4.能熟练的编写8951单片机汇编程序 5.能够熟练的运用仿真软件进行仿真 三、实验工具 1、软件:Proteus软件、keil51。 2、硬件:PC机,串口线,并口线,单片机开发板 四、实验内容

1、掌握并理解“矩阵键盘扫描”的原理及制作,了解各元器件的参数及格 元器件的作用。 2、用keil51测试软件编写AT89C51单片机汇编程序 3、用Proteus软件绘制“矩阵键盘扫描”电路原理图。 4、运用仿真软件对电路进行仿真。 五.实验基本步骤 1、用Proteus绘制“矩阵键盘扫描”电路原理图。 2、编写程序使数码管显示当前闭合按键的键值。 3、利用Proteus软件的仿真功能对其进行仿真测试,观察数码管的显示状 态和按键开关的对应关系。 4、用keil51软件编写程序,并生成HEX文件。 5、根据绘制“矩阵键盘扫描”电路原理图,搭建相关硬件电路。 6、用通用编程器或ISP下载HEX程序到MCU。 7、检查验证结果。 六、实验具体内容 使用单片机的P1口与矩阵式键盘连接时,可以将P1口低4位的4条端口线定义为行线,P1口高4位的4条端口线定义为列线,形成4*4键盘,可以配置16个按键,将单片机P2口与七段数码管连接,当按下矩阵键盘任意键时,数码管显示该键所在的键号。 1、电路图

单片机课程设计完整版样本

课程设计( 论文) 课程名称单片机 题目名称简易密码锁的设计学院高等技术学院 专业班级高1 1 0 9 学号3869 学生姓名刘欢 指导教师胡立强 11月28 日 目录

一,任务目的 (3) 二,任务要求 (3) 三,电路与元器件 (4) 四,程序设计 (5) 五,程序运行测试 (6) 六,任务小结 (7) 七,心得体会 (8) 八,参考文献 (9) 1.任务目的

经过对具有四个按键输入和一个数码管显示的简易密码锁的设计与制作, 让读者理解C语言中数组的基本概念和应用技术, 并初步了解单片机与键盘和LED数码管的接口电路设计及编程控制方法。 2.任务要求 在一些智能门控管理系统, 需要输入正确的密码才能开锁。基于单片机控制的密码锁硬件电路包括三部分: 按键、数码显示和电控开锁驱动电路, 三者的对应关系如图表3.16所示。 表3.16 简易密码锁状态 简易密码锁的基本功能如下: 4个按键, 分别代表数字0,1,2,3: 密码在程序中事先设定, 为0-3之间的一个数字; 上电复位后, 密码锁初始状态为关闭, 密码管显示符号”—”; 当按下数字键后, 若与事先设定的密码相同, 则数码管显示字符”P”, 打开锁, 3秒后恢复锁定状态, 等待下一次密码的输入, 否则显示字符”E”持续3秒, 保持锁定状态并等待下次输入。 3.电路与元器件 根据任务要求, 用一位LED数码管作为显示器件, 显示密码锁的状态信息, 数码管采用静态连接方式; 4个按键连接到P0口的低四位

P0.0-P0.3引脚, 设P0.0连接数字”0”按键、P0.1连接数字”1”按键, 依次类推; 锁的开、关电路用P3.0控制的一个发光二极管代替, 发光二极管点亮表示锁打开, 熄灭表示锁定。根据以上分析, 采用如图3.21所示的连接电路。 图3.21 简易密码锁电路 简易密码锁电路所需元器件清单如表3.17所示。 元器件名称参数数量元器件名 称 参数数量 插座DIP40 1 电阻103 1 单片机AT89SC51 1 电解电容22UF 1

智能电动百叶窗单片机课程设计说明书

智能电动百叶窗单片机课程设计说明书

单片机课程设计 ——智能电动百叶窗 姓名: 班级:机101-3班 专业:机械设计制造及其自动化 学号: 2010*****1310 指导教师: ****** 完成时间: 2013年6月5日

目录 一、课程设计任务书--------------------------------- - 4 - (一)课程设计题目:智能电动百叶窗................................. - 4 - (二)任务详情: .................................................. - 4 -二、设计项目简介 ---------------------------------- - 4 - (一)基本要求: .................................................. - 4 - (二)基本工作原理: .............................................. - 5 - (三)各元器件资料: .............................................. - 5 - 1.AT89C51单片机------------------------------------------ - 5 - 2.ADC0808------------------------------------------------ - 8 - 3.光敏传感器--------------------------------------------- - 9 - 4.74SEG-MPX4-CA数码管----------------------------------- - 10 - 5.74LS245 驱动------------------------------------------ - 11 - 三、电路原理图 ----------------------------------- - 12 - (一)复位电路 ................................................... - 12 - (二)时钟电路 ................................................... - 12 - (三)数码管显示电路 ............................................. - 12 - (四)电机控制电路 ............................................... - 13 - (五)A/D转换电路................................................ - 15 - (六)总体电路图 ................................................. - 15 - 四、程序框图 ------------------------------------- - 16 - 五、程序清单 ------------------------------------- - 17 - 六、总结 ----------------------------------------- - 19 - 七、参考资料 ------------------------------------- - 20 -

单片机 键盘接口实验

实验六键盘接口实验 一、实验目的 1、掌握Keil C51软件与Protues软件联合仿真调试的方法; 2、掌握单片机的键盘接口电路; 3、掌握单片机的键盘扫描原理; 4、掌握键盘的去抖原理及处理方法。 二、实验仪器与设备 1、微机一台 2、Keil C51集成开发环境 3、Protues仿真软件 三、实验内容 1、用Protues设计一矩阵键盘接口电路。要求利用P1口接一4×4矩阵键盘。串行口通过一74LS164接一共阴极数码管。用线反转法编写矩阵键盘识别程序,用中断方式,并将按键的键值0-F通过串行口输出,显示在数码管上。 2、将P1口矩阵键盘改成8个独立按键,重新编写识别和显示程序。 四、实验说明 矩阵键盘识别一般包括以下内容: ⑴判别有无键按下。 ⑵键盘扫描取得闭合键的行、列号。 ⑶用计算法或查表发的到键值; ⑷判断闭合键是否释放,如没释放则继续等待。 ⑸将闭合键的键值保存,同时转去执行该闭合键的功能。 五、实验步骤 1、用Protues设计键盘接口电路; 2、在Keil C51中编写键盘识别程序,编译通过后,与Protues联合调试; 3、按动任意键,观察键值是否能正确显示。 六、实验电路仿真图 矩阵键盘电路图见附录1。 独立按键电路图见附录2。 七、实验程序 实验程序见附录3、4。 八、实验总结 1、矩阵键盘常用的检测方法有线反转法、逐行扫描法。线反转法较简单且高效。在矩阵键盘的列线上接一与门,利用中断方式查询按键,可提高CPU的运行效率。 2、注意用线反转法扫描按键时,得到的键值不要再赋给temp,最好再设一新变量接收键值,否则再按下按键显示数字的过程中,再按按键会出现乱码。 3、学会常用与门、与非门的使用方法。 附录1:矩阵键盘实验电路图

单片机键盘乐器课程设计报告书

工学院 课程设计报告 (2015 ~2016学年度第二学期) 课程名称接口技术与外部设备课程设计名称键盘电子乐器 学号 专业 班级 地点 教师

1.课程设计目的及要求 1)、实验目标、功能设计要求:利用并行接口8255作为键盘接口,设计一个具有2个八度音阶的键盘乐器,音阶键不少于16个,采用扫描方式管理键盘,音域围自行定义。 2)、软件、硬件环境:Windows XP 、1G 存 2. 课程设计步骤 (1) 弄明白设计题目 (2) 查阅资料,搞清楚8253和8255的工作原理。 (3) 上网查阅相关资料 (4) 编程实现 (5) 完成课程设计报告 3. 课程设计容 1)、设计概述 (a) 开发平台:masm (b) 参考书籍:《微型计算机接口技术及应用》、《IBM —PC 汇编语言课程设计》、《手把手教你学单片机》 2)、处理流程 (a)8253 引脚图 1224 12… 1413GN D D 7D 6D 5D 4D 3D 2 D 1D 0CLK 0OUT 0GAT E 0 V CC W R D C S A 1A 0CLK 2 OUT 2 GATE 2CLK 1 GATE 1OUT 1… 8253/8254 图3.1 定时/计数器8253/8254 引脚图

B 1234567891011121314151617181920 4039383736353433323130292827262524232221 P A3P A2P A1P A0RD CS GND A0A1P A7P A6P A5P A4P A0P A1P A2P A3P B0P B1P B2 P A5P A6P A7P A0WR RESET D0D1D2D3D4D5D6D7Vcc P A7P A6P B5P B4P B3 8255

单片机的密码锁课程设计说明书

1 引言 随着科技的发展,单片机已不是一个陌生的名词,它的出现是近代计算机技术发展史上的一个重要里程碑,因为单片机的诞生标志着计算机正式形成了通用计算机系统和嵌入式计算机系统两大分支。单片机单芯片的微小体积和低的成本,可广泛地嵌入到如玩具、家用电器、机器人、仪器仪表、汽车电子系统、工业控制单元、办公自动化设备、金融电子系统、舰船、个人信息终端及通讯产品中,成为现代电子系统中最重要的智能化工具。 本文所涉及的是市场占有率最高的是MCS—51系列,因为世界上很多知名的IC生产厂家都生产51兼容的芯片。到目前为止,MCS—51单片机已有数百个品种,还在不断推出功能更强的新产品。 随着科技的发展以及人们生活水平的大幅度提高,特别是近几年国内经济的发展以及科学技术的不断发展,防盗的要求也是与日俱增,同时对使用的便捷性也提出了更高的要求,传统的锁防盗效果已经满足不了现代社会的防盗需求,还存在着需要随身带着钥匙,如果钥匙不慎丢失被他人利用,就有可能使不良之人乘虚而入等诸多弊端.因此近几年一种新型的电子密码锁应运而生.电子密码锁运用电子电路控制机械部分,使两者紧密结合,从而避免了因为机械部分被破坏而导致开锁功能失常.大大增加了密码锁得防盗功能。同时因为电子密码锁不需要携带钥匙,弥补了钥匙极易丢失和仿造的缺陷,方便了锁具的使用,通过单片机的硬件和软件的设计可以不急可以达到开锁方便,而且还可以在别人随意开锁时发出警报。电子锁由于其保密性高,使用灵活性好,安全系数高,受到了广大用户的亲呢。电子密码锁的密码保密性高,不易被破解以及它不用用户携带钥匙等等特点,使得它日益被广泛的人群所接受,也逐渐成为人们生活的一种时尚、潮流,它正慢慢的在许多领域无形之中抢占先机替代机械锁。 本设计就是基于单片机的电子密码锁设计方案,根据要求,给出了该单片机密码锁的硬件电路和软件程序,同时给出了单片机型号的选择、硬件设计、软件流程图、单片机存储单元的分配、汇编语言源程序及详细注释等内容。

51单片机键盘设置

\\\§8.3 键盘接口技术 一、键盘输入应解决的问题 键盘是一组按键的集合,它是最常用的单片机输入设备. 操作人员可以通过键盘输入数据或命令,实现简单的人机通讯。 键是一种常开型按钮开关,平时(常态)键的二个触点处于断开状态,按下键时它们才闭合(短路)。 键盘分编码键盘和非编码键盘。 键盘上闭合键的识别由专用的硬件译码器实现并产生编号或键值的称为编码键盘, 如:ASCⅡ码键盘、BCD码键盘等; 靠软件识别的称为非编码键盘。 在单片机组成的测控系统及智能化仪器中用得最多的是非编码键盘。 本节着重讨论非编码键盘的原理、接口技术和程序设计。 键盘中每个按键都是—个常开关电路,如图所示。

1.按键的确认:P1.7=1 无按键; P1.7=0 有按键; 2.去抖动 去抖动的方法: ①硬件去抖动采用RS触发器: 优点: 速度快,实时, 缺点: 增加了硬件成本 ②软件去抖动采用延时方法 延时5—10ms 延时5—10ms P1.7=0 确认P1.7=0 P1.7=1 (去前沿抖动) (去后沿抖动) 二、独立式键盘

每个I/O口连接一个按,S1 P1.0 S2 P1.1 ………………………. S8 P1.7 软件: START:MOV P1,#0FFH ;置P1口为高电平 JNB P1.0, RS1 ; S1按下,程序去执行RS1 JNB P1.1, RS2 ; S2按下,程序去执行RS2

JNB P1.2, RS3 ; S3按下,程序去执行RS3 JNB P1.3, RS4 ; S4按下,程序去执行RS4 JNB P1.4, RS5 ; S5按下,程序去执行RS5 JNB P1.5, RS6 ; S6按下,程序去执行RS6 JNB P1.6, RS7 ; S7按下,程序去执行RS7 JNB P1.7, RS8 ; S8按下,程序去执行RS8 AJMP START ; 继续扫描按键 …………. RS1: AJMP PK1 ; RS2: AJMP PK2 ; RS3: AJMP PK3 ; RS4: AJMP PK4 ; RS5: AJMP PK5 ; RS6: AJMP PK6 ; RS7: AJMP PK7 ; RS8: AJMP PK8 ; AJMP START ; 无键按下,继续扫描………………… PK1: ……….. ;按键S1功能处理程序 AJMP START ;处理S1按键后, 继续扫描PK2: ……….. ;按键S2功能处理程序

课程设计-制作单片机的4X4矩阵键盘

课程设计-制作单片机的4X4矩阵键盘

目录 摘要.............................................. 错误!未定义书签。第一章硬件部分 (5) 第一节AT89C51 (5) 第二节4*4矩阵式键盘 (8) 第三节LED数码管 (11) 第四节硬件电路连接 (13) 第二章软件部分 (15) 第一节所用软件简介 (15) 第二节程序流程图 (18) 第三节程序 (20) 第三章仿真结果 (23) 心得体会 (26) 参考文献 (27)

第一章硬件部分 第一节AT89C51 AT89C51是一种带4K字节FLASH存储器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。引脚如图所示 AT89C5 图1 AT89C51管脚 图 AT89C51其具有以下特性: 与MCS-51 兼容 4K字节可编程FLASH存储器 寿命:1000写/擦循环 数据保留时间:10年

全静态工作:0Hz-24MHz 三级程序存储器锁定 128×8位内部RAM 32可编程I/O线 两个16位定时器/计数器 5个中断源 可编程串行通道 低功耗的闲置和掉电模式 片内振荡器和时钟电路 特性概述: AT89C51 提供以下标准功能:4k 字节Flash 闪速存储器,128字节内部RAM,32 个I/O 接口,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。 管脚说明: VCC:供电电压。 GND:接地。 P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P0口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须接上拉电阻。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为低八位地址接收。

单片机课程设计说明书

任务书——电脑时钟(带定时启闹功能) 一、课程设计题目: 电脑时钟的设计与制作 二、课程设计要求: 要求设计制作的电脑时钟具有以下功能: 1.自动计时,由6位LED显示器显示时、分和秒; 2.具备校准功能,可以直接由0-9数字键设置当前时间; 3.具备定时启闹功能。 三、设计任务概述: 通过设计一个电脑时钟,掌握Protel 设计单片机应用系统硬件线路图的方法,掌握使用Dais集成开发环境开发单片机应用系统控制程序的基本步骤和方法。 任务涉及的知识面包括MCS-51汇编程序语言、MCS-51 单片机I/O 应用、中断与定时器应用、人机接口应用技术等。 四、工作计划及安排: ①布置任务、分析任务、学习汇编语言、单片机的功能程序设计(3 天) ②方案设计、使用Protel 设计和绘制电脑时钟的硬件原理图(2 天) ③电脑时钟控制程序设计和调试(4 天) ④撰写实习报告(1 天) 五、考核及成绩评定方式: 设计结果占40 %;实习报告占40%;平时抽查(含半小时抽查):20%; 课程程设计的成绩可为优秀、良好、中等、及格、不及格五个等级; 考勤:迟到扣5 分/次,旷课扣10 分/次

设计说明书目录 0、前言 单片机的应用介绍 1、课程设计的目的和要求 1.1课程设计的目的 1.2课程设计的基本要求 2、总体设计 2.1、总体方案 2.1.1、计时方案 2.1.2、键盘/显示方案 2.2、硬件总体设计 2.2.1、系统组成方案 2.2.2、扩展单元编址 2.2.3、键盘、显示功能的定义 2.3、软件总体设计 2.3.1、存储单元的分配、标志位的定义 2.3.2、主程序框图及清单(带有注释) 3、硬件设计 本系统所选用的各种芯片的功能、引脚、相应的命令控制字格式等。 4、软件设计 本系统的主要子程序、中断服务程序的框图及程序清单(带有注释) 5、总结 课程设计的收获、体会以及对本教学环节的意见和建议 6、参考文献 7、系统原理图 A3图纸绘制 摘要:用8051单片机CPU及接口电路设计电压检测报警系统并实现。包括企划,设计,运行.调试等过程。用到8051,8255两种芯片。 前言

单片机课程设计 模拟键盘输入及显示系统设计..

课程设计说明书课程名称:单片机应用基础 设计题目:模拟键盘输入及显示系统设计专业:机械设计制造及其自动化 指导教师: 设计者: 学号:

目录 第一章课程设计的目的和要求 (1) 1.1课程设计的目的和要求 (1) 1.2课程设计预备知识 (1) 1.3课题设计的任务 (2) 第二章总体设计 介绍对系统设计的总体认识及解决方案,并对采取的方案进行论证 第三章硬件设计 介绍本系统所选用的各种芯片的功能、引脚、相应的命令控制字格式等,画出系统工作原理图及实现方法 第四章软件设计 介绍本系统的主要功能模块程序的框图,以及总体程序框图和设计思路 第五章系统调试 介绍系统调试过程以及出现的问题、解决方法 第六章结束语 简述课程设计的收获、体会以及对本教学环节的意见和建议 参考文献

第一章、课程设计目的和要求 1.1 课程设计目的和要求 《单片机应用基础》课程设计是学好本门课程的又一重要实践性教学环节,课程设计的目的就是配合本课程的教学和平时实验,以达到巩固消化课程的内容,进一步加强综合应用能力及单片机应用系统开发和设计能力的训练,启发创新思维,使之具有独立单片机产品和科研的基本技能,是以培养学生综合运用所学知识的过程,是知识转化为能力和能力转化为工程素质的重要阶段。 1.2课程设计预备知识 总的来说,设计者要具备Mcs-51单片机的有关硬件及软件知识,汇编语言编程或者C 语言编程的有关知识,I\O接口的有关知识,WAVE6000集成调试软件的应用,能利用PROTEUS 软件绘制系统工作原理,一定的设计经验等等。本次设计所要掌握的一些基本知识如下:(1)键盘工作原理 键盘是由若干按键组成的开关矩阵,是嵌入式控制系统的一种输入部件。键盘分两种:一种是独立式按键,另一种是矩阵式按键。如图所示。独立式按键用的比较少,可以直接与单片机的P1口某一位进行连接,通过判断这一位的状态知道是否有键输入。在应用中通常需要数量较多的按键,为了减少I/O口的占用,通常将按键排列成矩阵形式,如图所示。在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。这样,一个端口(如P1口)就可以构成4*4=16个按键,比之直接将端口线用于键盘多出了一倍,而且线数越多,区别越明显,比如再多加一条线就可以构成20键的键盘,而直接用端口线则只能多出一键(9键)。由此可见,在需要的键数比较多时,采用矩阵法来做键盘是合理的。 独立式键盘和4*4矩阵式键盘

相关文档
相关文档 最新文档