基于5单片机的USB键盘设计与实现本科生设计65455466.docx
- 文档编号:10754005
- 上传时间:2023-02-22
- 格式:DOCX
- 页数:71
- 大小:442.15KB
基于5单片机的USB键盘设计与实现本科生设计65455466.docx
《基于5单片机的USB键盘设计与实现本科生设计65455466.docx》由会员分享,可在线阅读,更多相关《基于5单片机的USB键盘设计与实现本科生设计65455466.docx(71页珍藏版)》请在冰豆网上搜索。
基于5单片机的USB键盘设计与实现本科生设计65455466
基于5单片机的USB键盘设计与实现本科生设计65455466
本科生毕业设计(论文)
题目基于51单片机的USB键盘设计与实现
毕业设计(论文)原创性声明和使用授权说明
原创性声明
本人郑重承诺:
所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。
对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。
作者签名:
日 期:
指导教师签名:
日 期:
使用授权说明
本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:
按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。
作者签名:
日 期:
学位论文原创性声明
本人郑重声明:
所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
本人完全意识到本声明的法律后果由本人承担。
作者签名:
日期:
年月日
学位论文版权使用授权书
本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。
本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
涉密论文按学校规定处理。
作者签名:
日期:
年月日
导师签名:
日期:
年月日
注意事项
1.设计(论文)的内容包括:
1)封面(按教务处制定的标准封面格式制作)
2)原创性声明
3)中文摘要(300字左右)、关键词
4)外文摘要、关键词
5)目次页(附件不统一编入)
6)论文主体部分:
引言(或绪论)、正文、结论
7)参考文献
8)致谢
9)附录(对论文支持必要时)
2.论文字数要求:
理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。
3.附件包括:
任务书、开题报告、外文译文、译文原文(复印件)。
4.文字、图表要求:
1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写
2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。
图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画
3)毕业论文须用A4单面打印,论文50页以上的双面打印
4)图表应绘制于无格子的页面上
5)软件工程类课题应有程序清单,并提供电子文档
5.装订顺序
1)设计(论文)
2)附件:
按照任务书、开题报告、外文译文、译文原文(复印件)次序装订
3)其它
摘要
随着计算机技术的不断更新和多媒体技术的快速发展,传统的计算机外设接口因为存在许多缺点已经不能适应计算机的发展需要。
比起传统的AT,PS/2,串口,通用串行总线USB,具有速度快,使用方便灵活,易于扩展,支持即插即用,成本低廉等一系列优点,得到了广泛的应用。
本论文阐述了51系列单片机和USB的相关内容,详细介绍了系统的一些功能设计,包括硬件设计和软件设计。
在程序调试期间用简单的串口通信电路,通过串口调试助手掌握了USB指令的传输过程,这对整个方案的设计起到了很大的指导作用。
论文以单片机最小系统配合模拟键盘组成的USB键盘硬件系统,通过对D12芯片的学习与探索,在其基本命令接口的支持下,结合硬件进行相应的固件程序设计,使其在USB协议下,实现USB模块与PC的数据通信,完成USB键盘的功能模拟。
总结论文研究工作有阐述USB总线的原理、对本设计的系统要求作出了分析、根据要求选定元件和具体编程方案、针对系统所要实现的功能对相关芯片作了详细介绍以及在硬件部分设计了原理图。
关键词:
USB;D12;PC
Abstract
Withtherapiddevelopmentofcomputertechnologyandmultimediatechnologyconstantlyupdated,traditionalcomputerperipheralinterfacebecausetherearemanyshortcomingshavebeenunabletomeetthedevelopmentneedsofthecomputer.ComparedtotraditionalAT,PS/2,serial,UniversalSerialBusUSB,withfast,flexibleandeasytouse,easytoexpand,supportPlugandPlay,aseriesofadvantages,suchaslowcost,hasbeenwidelyused.
Thispaperdescribesthe51seriesandUSBrelatedcontent,detailingsomeofthefeaturesofthesystemdesign,includinghardwareandsoftwaredesign.Duringdebuggingasimpleserialcommunicationcircuit,throughtheserialportdebuggingassistantmasterUSBtransferinstructions,whichdesignedtheentireprogramhasplayedasignificantroleinguiding.Thesissmallestsingle-chipsystemconsistingofanalogkeyboardwithaUSBkeyboardhardwaresystem,bylearningandexplorationD12chips,withthesupportofitsbasiccommandinterface,inconjunctionwiththecorrespondinghardwarefirmwaredesign,makingitintheUSBprotocol,USBmoduledatacommunicationwiththePC,theUSBkeyboardtocompletethefunctionalsimulation.
ThispapersummarizesresearchworkhaselaboratedtheprincipleoftheUSBbus,thesystemisdesignedtorequiretheanalysis,componentsandsolutionsbasedonthespecificrequirementsoftheselectedprogrammingforthesystemtoachievethefunctionoftherelevantchipsaredescribedindetailinthehardwarepartofthedesignaswellastheprincipleofFigure.
Keywords:
USB;D12;PC
第一章 绪论1
1.1PC接口简介1
1.2USB接口分析1
1.3USB器件的选择1
第二章 系统分析3
2.1USB总线简介3
2.2USB技术指标3
2.3USB系统构成4
第3章 系统硬件设计6
3.1STC89C52单片机简介及最小系统6
3.1.1单片机发展概况及发展方向6
3.1.2单片机特点及结构6
3.1.3复位电路设计8
3.1.4单片机最小系统硬件设计9
3.2PDIUSBD12接口芯片设计9
3.2.1USB接口芯片简介9
3.2.2USB接口芯片引脚配置11
3.2.3USB接口芯片硬件设计14
3.2.4USB接口芯片端点描述14
3.2.5USB接口芯片命令16
3.3USB键盘硬件设计18
第4章 系统软件设计19
4.1固件编程的实现20
4.1.1USB接口芯片工作流程图20
4.1.2PDIUSBD12命令接口----PDIUSBD12.C21
4.1.3USB中断服务程序----USBISR.C21
4.1.4按键处理流程图21
4.1.5USB键盘处理程序---KEY.C22
4.1.6USB主循环程序----MAIN.C23
4.2实物演示25
结束语27
致谢28
参考文献29
附录A30
附录B37
第一章 绪论
1.1PC接口简介
PC中的接口有两类:
串行接口和并行接口。
计算机内部总线,如CPU与存储器之间匀采用并行接口,这样速度快;但外设却以串行接口比较占优势。
传统的打印机接口为并行接口。
SCSI标准的全名是小型设备通用接口标准,其传输速率为10M,早期的扫描仪一般使用此接口,硬盘与主机的联接也使用这种接口。
串行接口出现最早,使用最广的RS232接口,但其速度太慢,现在已经逐渐被淘汰。
USB接口和IEEE1394接口是两种速度比较高的串行接口,还有局域网中的以太网接口,它们具有较广阔的发展前景和应用潜力。
USB适用于低档外设与主机之间的高速数据传输,USB1.1可以达到1.5Mbps或12Mbps的传输率,而1394更是可达100/200/400Mbps。
USB2.0将速度定位在480Mbps,而IEEE1394也推出了1394b1.3.1版草案,速度从800Mbps起步,最高可达3.2Gbps。
局局域中用得最多的是以太网接口,速度可达100Mbps,当使用光纤传输时,速度可达1000Mbps。
1.2USB接口分析
通用串行总线(UniversalSerialBusUSB),是一种快速、灵活的总线接口。
与其它通信接口比较,USB接口的最大特点是易于使用。
作为一种高速总线接口,USB适用于多种设备,如数码相机、MP3播放机、高速数据采集设备等。
易于使用还表现在USB接口支持热插拔,并且所有的配置过程都由系统自动完成,无需用户干预。
USB接口支持1.5Mb/s(低速)、12Mb/s(全速)和高达480Mb/s的数据传输速率,扣除用于总线状态、控制和错误监测等的数据传输,USB的最大理论传输速率仍达1.2Mb/s或9.6Mb/s,远高于一般的串行总线接口。
USB接口芯片价格低廉,一个支持USB1.1规范的USB接口芯片价格大多在人民币15~30元之间,这也大大促进USB设备的开发与应用。
1.3USB器件的选择
在进行一个USB设备开发之前,首先要根据具体使用要求选择合适的USB控制器。
目前,市场上供应的USB控制器主要有两种:
带USB接口的单片机(MCU)或纯粹的USB接口芯片。
带USB接口的单片机从应用上又可以分成两类,一类是从底层设计专用于USB控制的单片机另一类是增加了USB接口的普通单片机,如Cypress公司的EZ-USB(基于8051),选择这类USB控制器的最大好处在于开发者对系统结构和指令集非常熟悉,开发工具简单,但对于简单或低成本系统。
但价格因素也是在实际选择过程中需要考虑的因素。
纯粹的USB接口芯片仅处理USB通信,必须有一个外部微处理器来进行协议处理和数据交换。
典型产品有Philips公司的PDIUSBD11(I2C接口)、PDIUSBD12(并行接口),NS公司的USBN9603/9604(并行接口),NetChip公司的NET2888等。
USB接口芯片的主要特点是价格便宜、接口方便、可靠性高,尤其适合于产品的改型设计(硬件上仅需对并行总线和中断进行改动,软件则需要增加微处理器的USB中断处理和数据交换程序、PC机的USB接口通信程序,无需对原有产品系统结构作很大的改动)。
第二章 系统分析
2.1USB总线简介
USB是一种支持在USB主机和USB设备之间进行串行数据传输的通信协议。
主机作为总线的主叫方,采用两种信令模式:
全速模式12Mb/s和低速模1.5Mb/s。
USB使用四种数据传输方式:
控制传输(control)、中断传输(interrupt)、批量传输(bulk)及等时传输(isochronous)。
Intel公司开发的通用串行总线架构(USB)的目的主要基于以下三方面考虑:
一、计算机与电话之间的连接
显然用计算机来进行计算机通信将是下一代计算机基本的应用。
机器和人们的数据交互流动需要一个广泛而又便宜的连通网络。
然而,由于目前产业间的相互独立发展,尚未建立统一标准,而USB则可以广泛的连接计算机和电话。
二、易用性
众所周知,PC机的改装是极不灵活的。
对用户友好的图形化接口和一些软硬件机制的结合,加上新一代总线结构使得计算机的冲突大量减少,且易于改装。
但以终端用户的眼光来看,PC机的输入/输出,如串行/并行端口、键盘、鼠标、操纵杆接口等,均还没有达到即插即用的特性,USB正是在这种情况下问世的。
三、端口扩充
外围设备的添加总是被相当有限的端口数目限制着。
缺少一个双向、价廉、与外设连接的中低速的总线,限制了外围设备(如电话/电传/调制解调器的适配器、扫描仪、键盘、PDA)的开发。
现有的连接只可对极少设备进行优化,对于PC机的新的功能部件的添加需定义一个新的接口来满足上述需要,USB就应运而生。
它是快速、双向、同步、动态连接且价格低廉的串行接口,可以满足PC机的发展现状和未来需要。
码主要存储在单片机中,通过单片机中的软件代码运行后,通过各个管脚的控制外围辅助电路的运行以实现系统的功能。
复位电路是保证系统安全运行的基础,由于单片机的运行环境无法确定,无法保证单片机在长时间的运行过程中能够一直保证系统的稳定性,复位电路就是在单片机无法正常运行后,软复位无法进行复位的情况下,能够保证系统能够重新启动
2.2USB技术指标
USB最大的特点是支持热插拔(Hotplug)和即插即用(Plug&Play)。
当设备插入时,主机枚举(enumerate)此设备并加载所需的驱动程序,因此使用远比PCI和ISA总线方便。
目前USB支持3种数据信号速率,USB设备应该在其外壳或者有时是自身上正确标明其使用的速率。
(1)1.5Mbit/s(183KByte/s)的低速速率,主要用于人机接口设备(HumanInterfaceDevices,HID)例如键盘、鼠标、游戏杆。
(2)12Mbit/s(1.4MByte/s)的全速速率,在USB2.0之前是曾经是最高速率,后起的更高速率的高速接口应该兼容全速速率。
多个全速设备间可以按照先到先得法则划分带宽,使用多个等时设备时会超过带宽上限也并不罕见。
所有的USBHub支持全速速率。
(3)480Mbit/s(57MByte/s)的高速速率。
并非所有的USB2.0设备都是高速的。
高速设备插入全速hub时应该与全速兼容,而高速hub具有所谓TransactionTranslator(事务翻译器)功能,能够隔离全速、低速设备与高速之间数据流,但是不会影响供电和串联深度。
2.3USB系统构成
USB系统主要由三部分组成,即宿主(host),USB设备(device)和USB连接。
一、USB宿主
USB宿主(host)是一个带有USB主控制器的PC机或者嵌入式系统,在USB系统中只有一个宿主,它是USB系统的主控者。
USB宿主主要用于产生并且管理控制信号和数据流,检测并处理总线上的各种活动的状态,并为总线上的USB设备提供能源。
USB宿主存在于主机系统中,它包括硬件,软件部分。
其中,硬件部分指的是USB宿主控制器,一般集成在主板上,受USB系统软件的控制。
软件部分分为三部分,分别是:
1.USB设备驱动程序(USBDeviceDrivers)通过I/O请求包发出给USB设备的请求,而这些I/O请求包则完成对目标设备传输的设置。
2.USB驱动程序(USBDriver)在设备设置时读取描述寄存器以获取USB设备的特征,并根据这些特征,在请求发生时组织数据传输。
3.主控制器驱动程序(HostControllerDriver)完成对USB交换的调度,并通过根集线器或其它的集线器完成对交换的初始化。
二、USB设备
USB设备用于完成特定的功能,它具有极强的扩充性,能以一种星型+级联的方式连接起来,USB宿主可以根据USB设备的动态增减,对其进行动态配置。
USB设备是实现某种具体功能的硬件设备,如键盘,鼠标和摄像头等。
USB功能器件作为USB外设,它必须保持和USB协议的完全兼容,并可以响应标准的USB操作。
同样,用于表明自己身份的“BIOS”系统对于USB外设也是必不可少的,这在USB外设上被称为协议层。
在物理机制上,一个USB外设可以由四部分构成:
(1)用于实现和USB协议兼容的SIE部分。
(2)用于内存特征字,存储实现外设特殊功能程序及厂家信息的协议ROM(3)用于实现外设功能的传感器及对资料进行简单处理的DSP部分(4)将外设连接到主机或USBHub的接口部分。
根据传输率的不同,USB功能器件被分为高速和低速两种。
低速外设的标准传输率为1.5Mbps,而高速外设的标准传输率为12Mbps。
例如鼠标,键盘等交互式设备就是低速设备运行,而打印机,扫描仪就使用全速设备模式运行。
三、USB连接(数据流)
USB连接实际上是指USB器件和USB主机连接并进行通信的方法,它可以将存在于USB主机和USB设备之间的USB数据传输模型描述为一个管道(pipe),管道只是一个逻辑上的概念。
USB系统软件通过缺省管道(与端点0相对应)管理设备,设备驱动程序通过其它的管道来管理设备的功能接口。
实际的数据传输过程是:
设备驱动程序通过对USBD接口(USBdriverinterface)的调用发出输入输出请求(IRPI/ORequestPacket),USB驱动程序接到请求后调用HCD接口(hostcontrollerdriverinterface)将IRP转化为USB的传输(transfer),一个IRP可以包含一个或多个USB传输,然后HCD将USB传输分解为总线操作(transaction),由主控制器以包(packet)的形式发出。
需要注意的是所有的数据传输都是由主机开始的,任何外设都无权开始一个传输。
IRP是由操作系统定义的,而USB传输与总线操作是USB规范定义的。
USB总线将1ms定义为一帧,每帧以一个SOF包为起始,在这1ms里USB进行一系列的总线操作,引入帧的概念主要是为了支持与时间有关的总线操作。
为了满足不同外设和用户的要求USB提供了四种传输方式:
控制传输,同步传输,中断传输,批传输。
它们在数据格式,传输方向,数据包容量限制,总线访问限制等方面有着各自不同的特征。
第3章 系统硬件设计
3.1STC89C52单片机简介及最小系统
随着电子技术的迅速发展,特别是随着大规模集成电路产生而出现的微型计算机,给人类生活带来了根本性的改变。
单片微型计算机简称单片机。
它是把组成微型计算机的各功能部件像中央处理器CPU、随机存取存储器RAM、只读存储器ROM、I/O接口电路、定时器/计数器以及串行通讯接口等部件制作在一块集成芯片中,构成一个完整的微型计算机。
由于它的结构与指令功能都是按照工业控制要求设计的,故又叫单片微控制器。
3.1.1单片机发展概况及发展方向
单片机的出现使现代科学技术研究得到了质的飞跃,可以毫不夸张地说,它给现代工业领域带来了一次新的技术革命。
目前,单片机以其高可靠性、高性能价格比,在工业控制系统、智能化仪器仪表、办公自动化、日常生活用品等诸多领域得到极为广泛的应用。
由于单片机技术在各个领域正得到越来越广泛的应用,世界上许多集成电路生产厂家相继推出了各种类型的单片机。
早期单片机大多结构体系,指令复杂,指令代码、周期数不统一、指令运行很难实现流水线操作,大大阻碍了运行速度的提高。
虽然单片机对运行速度要求远不如通用计算机系统或数字信号处理对指令运行速度的要求,但速度的提高会带来许多好处,并拓宽单片机应用领域。
一方面可获得很高的指令运行速度,另方面,在相同的运行速度下,可大大降低时钟频率,有利于获得良好的电磁兼容效果。
专用单片机是专门针对某一类产品系统要求而设计的。
使用专用单片机可最大限度地简化系统结构,使资源利用效率最高。
在大批量使用时有可观的经济效益和可靠性效益。
专用单片机发展的基础是半导体集成工艺和微电子设计技术。
采用模块化标准单元的快速设计及快速半导体集成工艺,将加速专用单片机的发展。
3.1.2单片机特点及结构
本系统采用STC89C52单片机,它是一种低电压、低功耗、高性能微控制器,具有8K字节可编程可擦出只读存储器。
使得STC89C52为众多控制应用系统提供高灵活、超有效的解决方案。
它与MCS-51指令系统兼容。
STC89C52是一个功能强大的单片机,但它只有40个引脚,其中P1是一个完整的8位双向I/O口,此外,从STC89C52内部结构图也可看出,其内部结构与8051内部结构基本一致,引脚RST、XTAL1、XTAL2的特性和外部连接电路也完全与51系列单片机相应引脚一致.如图3.1所示。
图3.1单片机引脚图
引脚功能说明如下:
①VCC:
供电电源。
②GND:
电路地。
③P0口(P0.0~P0.7):
为双向8位I/O端口。
当作为I/O口使用时,可直接连接外部I/O口设备,由于内部没有上拉电阻,故要接上拉电阻。
它是地址总线低8位及数据总线分时复用口,可以驱动8个TTL负载。
一般作为扩展时的地址/数据总线口使用。
当P0口作为地址/数据复用时不用接上拉电阻。
④P1口(P1.0~P1.7):
为8位准双向I/O口,它的每一位都可以分别定义为输入线或输出线(作为输入时,口锁存器必须置1),可以驱动4个TTL负载。
⑤P2口(P2.0~P2.7):
为8位准双向I/O口,当作为I/O口使用时,可直接连接外部I/O设备,可驱动4个TTL负载。
一般作为扩展时地址总线的高8位复用口。
⑥P3口(P3.0~3.7):
为8位准双向I/O口,可驱动4个TTL负载,是双功能复用口,它的另一功能如表所示。
⑦RST:
复位输入。
RST一旦变成高电平,所有的I/O引脚就复位到“1”。
当振荡器正在运行时,持续给出RST引脚两个机器周期的高电平便可完成复位。
每一个机器周期需12个振荡
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 USB 键盘 设计 实现 本科生 65455466