已阅读5页,还剩18页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
0摘要本课程设计实现具有按键输入、数据储存、数据通信等功能的单片机系统。该系统基于C51单片机的USB接口设计,该系统由最小C51单片机系统、USB接口模块组成。系统实现按键输入数据保存至E2PROM后,可通过USB接口传送至上位机功能。通过对系统的仿真及实物调试,完成了系统设计,实现了课程设计的要求。关键字USB,数据通信,单片机,按键输入,E2PROMABSTRACTTHISCOURSEDESIGNSTHESINGLESLICEOFMACHINESYSTEMTHATTHEREALIZATIONHASAKEYSTROKE,THEDATAFUNCTIONS,SUCHASSTORAGEANDDATACORRESPONDENCEETCTHATSYSTEMCONNECTSAPEOPLESDESIGNACCORDINGTOUSBOFC51SINGLESLICEOFMACHINE,THATSYSTEMFROMTHEMINIMUMC51SINGLESLICEOFMACHINESYSTEM,ANDUSBPICKUPAPEOPLEMOLDPIECECONSTITUTETHESYSTEMCARRIESOUTAKEYSTROKEDATATOKEEPTOE2PROMS,CANCONNECTAHIGHESTOFAPEOPLESTRANSMISSIONTHROUGHUSBMACHINEFUNCTIONPASSINGISTRUETOIMITATINGOFSYSTEMANDTHEREALOBJECTADJUSTTOTRY,COMPLETEDASYSTEMDESIGNANDCARRIEDOUTTHEREQUESTOFCOURSEDESIGNKEYWORDSUSB,DATACORRESPONDENCE,SINGLESLICEOFMACHINE,KEYSTROKE,E2PROM0目录前言11总体设计方案211接口设计方案2111独立模式即(USB接口芯片外接C51芯片)2112USB接口芯片集成了MCU212系统设计方案22系统设计原理321USB接口简介322I2C总线简介33单元模块设计431USB硬件电路设计4311电源电路模块4312单片机最小系统模块5313E2PROM模块6314USB接口模块732USB软件设计9321主程序介绍9322E2PROM写程序10323E2PROM读程序13324USB接口程序144系统功能调试1541调试用的软件简介1542模块调试过程及结果1515设计总结186参考文献19四川师范大学成都学院电子工程系课程设计报告前言USB是英文UNIVERSALSERIALBUS的缩写,中文含义是“通用串行总线”。它不是一种新的总线标准,而是应用在PC领域的接口技术。USB是在1994年底由英特尔、康柏、IBM、MICROSOFT等多家公司联合提出的。不过直到近期,它才得到广泛地应用。从1994年11月11日发表了USBV07版本以后,USB版本经历了多年的发展,到现在已经发展为20版本,成为目前电脑中的标准扩展接口。目前主板中主要是采用USB11和USB20,各USB版本间能很好的兼容。USB用一个4针插头作为标准插头,采用菊花链形式可以把所有的外设连接起来,最多可以连接127个外部设备,并且不会损失带宽。USB需要主机硬件、操作系统和外设三个方面的支持才能工作。USB具有传输速度快(USB11是12MBPS,USB20是480MBPS,USB30是5GBPS),使用方便,支持热插拔,连接灵活,独立供电等优点,可以连接鼠标、键盘、打印机、扫描仪、摄像头、闪存盘、MP3机、手机、数码相机、移动硬盘、外置光软驱、USB网卡、ADSLMODEM、CABLEMODEM等,几乎所有的外部设备。随着计算机硬件飞速发展,这么多的设备,如何接入个人计算机,USB就是基于这个目的产生的。USB是一个使计算机周边设备连接标准化、单一化的接口,其规格是由INTEL、NEC、COMPAQ、DEC、IBM、MICROSOFT、NORTHERNTELECOM联系制定的由于USB总线接口具有体积小、携带方便、热插拔等特征,国内近年来计算机非键盘输入技术在汉字英文和数字的手写识别方面发展很快,此项目的目的是吸收USB总线和MOTOROLA微控制器的先进技术与手写识别技术相结合设计生产新一代USB手写输入系统。除了这种系统,还有一种无线式专家评审智能系统,需要一块具有USB接口的无线式数据通信接口卡,来实现中央数据处理站计算机与各智能评分器之间的数据交换。21总体设计方案11接口设计方案111独立模式即(USB接口芯片外接C51芯片)这种是纯粹的USB接口芯片,仅处理USB通信,使用时必须由外部微控制器MCU进行控制,如PHILIPS的PDIUSBD12,NATIONALSEMICONDUCTOR的USBN9604等。USB接口设计独立模式说明连接外设的一种简单模式,所有寄存器和数据的读写都是通过C8051的I/O接口来仿真。其优点是传输数据速率较快,也可以通过接口转换,与其他功能的外设相连,具有较广泛的适用性。但是数据吞吐速率较低,适合间歇式数据的传送。C51芯片USB接口芯片图1独立模式电路结构图112USB接口芯片集成了MCU这种芯片如CYPRESS的EZUSB。带集成的USB20全速接口的C51灵活的自可编程的闪存人机接口能力外围设备广品种包括大容量存储器接口。MCU被集成在USB接口芯片,在使用时会更加的方便可行。USB接口芯片C51芯片图2集成模式电路结构图12系统设计方案该系统由最小C51单片机系统、USB接口模块组成。上位机通过USB接口,由C513控制对E2PROM进行读写。C51单片机功能是通过MCU控制器对输入数据进行控制、处理,使数据通过IO接口被送到E2PROM(电可擦可编程只读存储器)中被存储起来,以便输出需要。E2PROM是电可擦可编程只读存储器,数据被送到里面后,如果因为设计需要,必须对数据进行修改、增加、删除时,它可以通过电子信号来修改,并不影响未修改的软件程序。USB接口芯片主要是与C51芯片相连,通过MCU空制器对数据的控制,以使数据通过USB接口被输送到PC机或上位机。AT89C51模块USB接口芯片模块模块EEPROM模块图3系统结构图2系统设计原理21USB接口简介USB是一种常用的PC接口,他只有4根线,两根电源两根信号,如图4故信号是串行传输的,USB接口也称为串行口,USB20的速度可以达到480MBPS。可以满足各种工业和民用需要USB接口的输出电压和电流是5V500MA实际上有误差,最大不能超过/02V也就是4852V。USB接口的4根线一般是下面这样分配的,需要注意的是千万不要把正负极弄反了,否则会烧掉USB设备或者电脑的南桥芯片黑线GND红线VCC绿线DATA白线DATA。图4USB接口定义图22I2C总线简介为了非常方便地对I2C从器件进行快速的正确的读写操作,我们为此而设计出虚4拟I2C总线操作平台软件包。I2C总线是PHILIPS公司推出的芯片间串行数据传输总线2根线即可实现完善的全双工同步数据传送能够十分方便地地构成多机系统和外围器件扩展系统I2C器件是把I2C的协议植入器件的I/O接口使用时器件直接挂到I2C总线上,这一特点给用户在设计应用系统带来了极大的便利I2C器件无须片选信号是否选中是由主器件发出的I2C从地址决定的而I2C器件的从地址是由I2C总线委员会实行统一发配我们推出的I2C总线的操作平台软件包只要你给出器件从地址即可进行字节读字节写多字节读多字节写能够非常方便地使用I2C器件无须你介入底层的I2C操作协议。它是连接USB和89C51单片机所用到的总线,很方便的传送和接收数据。3单元模块设计31USB硬件电路设计311电源电路模块电源电路为有两个,通过DCDC器件(7805)将9V电压转换为5V。DC/DC是一种高频模块电源,它可以实现直流到直流的变换,既可以把输入电压变低,也可以把输入电压变高,还可以把电源极性反转,而且输人电压还可以在一定的范围内变化。一路输人电压可以得到几路输出电压。直流输出电压和输出电流有很多档次供使用者选择,而且体积小、输出功率大。在DCDC变换中,PWM和PFM是两种基本的控制方式,除此之外,还有相移控制等。PWM控制一般指开关周期固定,即频率固定,通过改变开关导通时间,调节输出电压,而PFM一般指开关导通时间固定,通过改变开关周期,来调节输出电压,在有些谐振电路中,因为顾忌谐振周期的缘故,所以多采用PFM但是,PFM控制方式,使的开关频率变化,使的滤波器的设计很困难,一般不采用。图5电源电路图5312单片机最小系统模块89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFALSHPROGRAMMABLEANDERASABLEREADONLYMEMORY)的低电压,高性能CMOS8位微处理器,俗称单片机。89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的89C51是一种高效微控制器,89C2051是它的一种精简版本。89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案图6单片机最小系统图6313E2PROM模块E2PROM芯片CSI24WC02CSI24WC02是一个2K位串行CMOSE2PROM内部含有256个8位字节CATALYST公司的先进CMOS技术实质上减少了器件的功耗,CSI24WC01有一个8字节页写缓冲器CSI24WC0有一个16字节页写缓冲器该器件通过I2C总线接口进行操作,有一个专门的写保护功能。表1CSI24WC02管脚描述管脚名称功能A0A1A2器件地址选择SDA串行数据/地址SCL串行时钟WP写保护VCC18V60V工作电压VSS地图7E2PROM电路图7图8E2PROMPCB图314USB接口模块USB接口芯片PDIUSBD12PDIUSBD12是一款性价比很高的USB器件。它通常用作微控制器系统中实现与微控制器进行通信的高速通用并行接口。它还支持本地的DMA传输。这种实现USB接口的标准组件使得设计者可以在各种不同类型微控制器中选择出最合适的微控制器。这种灵活性减小了开发的时间、风险以及费用,从而用最快捷的方法实现最经济的USB外设的解决方案。PDIUSBD12完全符合USB11版的规范,它还符合大多数器件的分类规格成像类、海量存储器件、通信器件打印设备、以及人机接口设备。同样地,PDIUSBD12理想地适用于许多外设,例如打印机、扫描仪外部的存储设备和数码相机等等。它使得当前使用SCSI的系统可以立即降低成本。PDIUSBD12所具有的低挂起功耗连同LAZYCLOCK输出可以满足使用ACPIONNOW和USB电源管理的要求。低的操作功耗可以应用于使用总线供电的外设。此外它还集成了许多特性,包括SOFTCONNETTMGOODLINKTM、可编程时钟输出、低频晶振和终止寄存器集合。所有这些特性都为系统显著节约了成本,同时使USB功能在外设上的应用容易。8图9USB接口电路图图10USB接口PCB图932USB软件设计321主程序介绍名称MAIN功能主函数,负责发送USB请求、处理USB总线事件、进行EEPROM的读写操作。图11主程序流程图代码VOIDMAINVOIDINIT_PORT/初始化I/O口/INIT_TIMER0/设置定时器0/INIT_SPECIAL_INTERRUPTS/设置中断/D12_DATA0XFB02/定义数据地址/D12_COMMAND0XFB03/定义命令地址/D12_DATA0X7002/定义数据地址/10D12_COMMAND0X7003/定义命令地址/D12_SETDMA0X0/不使用DMA功能/BEPPFLAGSVALUE0/初始化USB寄存器/上电复位,USB总线重新连接指令/RECONNECT_USBWHILETRUEIFBEPPFLAGSBITSCONFIGURATIONI2CWRITEREAD/若设备已配制,调用I2CWRITEREAD/USBSERVE/处理USB的SETUP包/322E2PROM写程序名称WRITE_CSI24WCXX功能进行EEPROM写操作。11图12E2PROM写操作程序流程图代码VOIDWRITE_CSI24WCXXVOIDUNSIGNEDCHARRWCOUNTUNSIGNEDCHARADR_BAKBITWRITE_OKRWCOUNT0DO/取出当前操作字节个数,与命令要求的操作字节个数进行比较及处理/IFCOMEPBUF5RWLENBYTELOWCOMEPBUF5COMEPBUF5RWLENBYTELOWELSERWLENBYTELOWCOMEPBUF5COMEPBUF50/判断操作地址是否溢出/IFRWROM_ADDRWORDRWLENBYTELOWROM_SIZERWROM_TYPEBYTELOWRWLENWORDROM_SIZERWROM_TYPEBYTELOWRWROM_ADDRWORDIFRWROM_ADDRWORDROM_SIZERWROM_TYPEBYTELOWOPERATE_TYPE0COMEPBUF50/进行写操作,CSI24WC01、02、04、08、16的地址位A10A9A8由RWROM_ADDRBYTEHIGH设置/IFOPERATE_TYPE1EPROM_SLA0XA0|RWROM_ADDRBYTEHIGHEPROM_SLA/CSI24WC01、02、04、08、16所使用的从机地址为0AXH/本次写操作所写的数据的起始地址为EPBUFRWCOUNT,操作个数12RWLENBYTELOW/WRITE_OKISENDSTREPROM_SLA,RWROM_ADDRBYTELOW,IFOPERATE_TYPE2EPROM_SUBEPROM_SLA0XA0/CSI24WC32、64、128、256所使用的从机地址均为0A0H/WRITE_OKISENDSTR2EPROM_SLA,EPROM_SUB,IFWRITE_OK0RWCOUNT0BREAKELSEWHILEIWCHECKEPROM_SLA0/等待写周期完成/写参数的修改,以达到页写的目的。/IFOPERATE_TYPE1/CSI24WC01、02、04、08、16的地址位A10A9A8的调整ADR_BAKRWROM_ADDRBYTELOWRWROM_ADDRBYTELOWRWROM_ADDRBYTELOWRWLENBYTELOWIFADR_BAKRWROM_ADDRBYTELOWRWROM_ADDRBYTEHIGHRWROM_ADDRBYTEHIGH2RWROM_ADDRBYTEHIGHRWROM_ADDRBYTEHIGHELSERWROM_ADDRWORDRWROM_ADDRWORDRWLENBYTELOWRWCOUNTRWCOUNTRWLENBYTELOW/写入字节个数计数/13RWLENBYTELOWI2CROM_MASKRWROM_TYPEBYTELOW1WHILECOMEPBUF50/判断是否写完数据(由地址来判断),若没有则继续返回已写入字节个数,若为0时则表示EEPROM操作出错/EPBUF0RWCOUNTD12_WRITEENDPOINT5,1,EPBUF323E2PROM读程序名称READ_CSI24WCXX功能进行E2PROM读操作。图13E2PROM读操作程序流程图代码14VOIDREAD_CSI24WCXXVOIDINTIBITREAD_OKIFOPERATE_TYPE1EPROM_SLA0XA0|RWROM_ADDRBYTEHIGHEPROM_SLAREAD_OKIRCVSTREPROM_SLA,RWROM_ADDRBYTELOW,EPBUF,RWLENBYTELOWIFREAD_OK1D12_WRITEENDPOINT5,RWLENBYTELOW,EPBUF/ENDOFREAD24C01,02,04,08/IFOPERATE_TYPE2EPROM_SUBEPROM_SLA0XA0|RWROM_ADDRBYTEHIGHEPROM_SLAREAD_OKIRCVSTR2EPROM_SLA,EPROM_SUB,EPBUF,RWLENBYTELOWIFREAD_OK1D12_WRITEENDPOINT5,RWLENBYTELOW,EPBUF/ENDOFREAD24C64/FORI0I2000I/若读操作出错,则返回出错信息/IFREAD_OK0GENEPBUF00XAAGENEPBUF10X88D12_WRITEENDPOINT3,2,GENEPBUFELSEGENEPBUF00XBB/读操作成功/GENEPBUF10X02D12_WRITEENDPOINT3,2,GENEPBUF324USB接口程序名称I2CWRITEREAD15功能负责接收USB总线上的命令,并进行分析及作出相应的EEPROM读写操作等。图14USB程序流程图4系统功能调试41调试用的软件简介KEILKEILC51是美国KEILSOFTWARE公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻。KEILC51软件提供丰富的库函数和功能强大的集成开发调试工具,全WINDOWS界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到KEILC51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。1642模块调试过程及结果图15KEIL里对USB程序进行编译首先在KEIL里对USB程序进行编译,使之生成HEX的文档,如图16所述,编译成功通过,当然在编译前进行了一些必要的设置。17图16软件编程运行DPFLASH下载软件,并将之进行擦除,然后将图16中最后生成的HEX文档装载到软件中。点击编程出现上图的界面,当显示“编程操作成功”字样表示已成功的将USB程序下载到芯片了。图17安装驱动程序当运行接上USB的试验箱时,出项了对USB需要进行安装驱动,上面几幅图为安18装驱动的过程,最终成功安装了USB的驱动。I图18写入E2PROM数据打开ZLGEASYD12_DEMOEXE软件,通过USB线和IIC总线向EEPROM写一组数据,如图21数据是01234567890,出现上图的提示框表示向EEPROM成功写入数据图19读取E2PROM数据通过USB线和IIC总线从EEPROM读取数据,如图所示读出了10个数据,出现图22的提示框表示读EEPROM数据成功。结论经过上面的操作可以得出USB接口部分能成功的与单片机和上位机进行数19据交换。表明设计得到了实现5设计总结课程设计是培养学生综合运用所学知识,发现、提出、分析和解决实际问题,锻炼实践能力的重要环节,是对我们的实际工作能力的具体训练和考察过程随着科学技术发展的日新月异,当今USB接口技术的应用在生活中可以说得是无处不在。因此能够了解并掌握USB接口技术的内容是十分重要的。经过两个星期的奋斗我们小组终于圆满完
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 个体商铺合伙协议书
- 供气安全责任协议书
- 广东清远市清新区机关事务管理局招聘政府专项工作聘员易考易错模拟试题(共500题)试卷后附参考答案
- 分割车间承包协议书
- 广东事业单位2025广州市城乡建设委员会招录人员易考易错模拟试题(共500题)试卷后附参考答案
- 山西晋城城区2025部分事业单位招聘(测评)易考易错模拟试题(共500题)试卷后附参考答案
- 四川省成都市成华区列五中学2024-2025学年高二上学期10月测试化学试题含解析
- 查阅资料保密协议书
- 大连市青少年记者学会招录大学生实习就业人才招聘易考易错模拟试题(共500题)试卷后附参考答案
- 桃江竹笋产业协议书
- 人教版四年级数学上册四年级数学上册典型例题系列之第4单元:面积问题专项练习(解析版)人教版
- 保洁员绩效考核标准
- JJF 1975-2022 光谱辐射计校准规范
- 中医诊所卫生技术人员名录表
- 高二语文上册《老人与海》课文
- 网御安全系统power v功能使用手册
- 氢能系列报告认识氢能
- 社区心理学课件
- 彤程化学装置水联运方案(草稿)
- 注塑模具验收标准
- 2009-2022历年上海市公务员考试《专业科目-政法》真题含答案2022-2023上岸必备汇编4
评论
0/150
提交评论