(计算机软件与理论专业论文)单片机应用技术培训系统研制.pdf_第1页
(计算机软件与理论专业论文)单片机应用技术培训系统研制.pdf_第2页
(计算机软件与理论专业论文)单片机应用技术培训系统研制.pdf_第3页
(计算机软件与理论专业论文)单片机应用技术培训系统研制.pdf_第4页
(计算机软件与理论专业论文)单片机应用技术培训系统研制.pdf_第5页
已阅读5页,还剩64页未读 继续免费阅读

(计算机软件与理论专业论文)单片机应用技术培训系统研制.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 由于多种原因,高校中的实验教学效果普遍较差,特别是i t 行业。教材中的内容 一般都落后于实际科学技术的发展,许多在实际工作中应用的技术,无法从教材中学到。 由于资金短缺,仪器设备数量严重不足且性能落后,学生很少进行科研活动,动手能力 很差,造成了大学毕业生缺乏动手和创新能力,不能适应社会的需要,形成了巨大的就 业压力。因此,本课题开发了一套旨在培养学生动手和创新能力的培训系统。 在考虑系统普及性和适用性的基础上,研究工作主要围绕着硬件设计和软件开发来 进行。论文中共讨论了9 个技术模块的开发过程,包括:i s p ( 在系统编程) 模块、基 于p d i u s b d l 2 的u s b 接口模块、基于u s b u a r t 接口芯片f t 2 3 2 r l 的u s b 接口模 块、基于s j a l 0 0 0 和p c a 8 2 c 2 5 0 的c a n 总线接口模块、基于l c m l 2 8 6 4 液晶显示模 块、基于d s l 8 8 2 0 的1 - w i r e ( 单总线) 串行接1 3 模块、1 2 c 接1 3 模块、r s 4 8 5 接1 3 模块 和基于8 2 7 9 的键盘l e d 显示电路模块。同时,开发的软件系统将文件操作、源程序编 辑、编译、打印、在系统编程、技术模块演示、参数设置和帮助信息等功能集成在统一 的开发环境中,功能齐全,界面友好。 在每章内容的开始部分,都对模块设计的目的和意义作了阐述,然后,对每个技术 模块从通信协议、硬件电路原理及主要芯片和必要的软件设计等方面都给出了比较详细 的论述,对这些新技术应用的特点和基本原理都做了深入探讨,并给出了与之配套的部 分程序源代码。各技术模块内容面向应用,既可学习单个技术模块,又可将多个技术模 块组合成若干个实用的小系统。其中,基于f t 2 3 2 r l 的u s b 接口模块和在系统编程模 块是本系统的特点,这些技术都是在实际的开发过程中经常用到的。 学生在掌握一定理论的基础上,通过对本培训系统中技术模块的了解和学习,不仅。 可以提高学生的动手开发能力,培养学生的创新能力,而且对就业有很大的帮助,因此, 有着十分重要的实际意义。 关键词:c a n 总线,u s b ,在系统编程,单总线,液晶显示模块 a b s t r a c t f o rv a r i o u sr e a s o n s ,e x p e r i m e n tt e a c h i n gr e s u l t si nt h eu n i v e r s i t ya r eg e n e r a l l yp o o r , e s p e c i a l l yi nt h e i ti n d u s t r y t h ec o n t e n t si nt h et e x t b o o ka r el a g g i n gb e h i n do ft h ed e v e l o p m e n to fa c t u a ls c i e n c ea n d t e c h n o l o g y s t u d e n t sa l eu n a b l et ol e a r nal o to fa p p l i c a t i o nt e c h n i c a lw h i c ha r ea p p l y i n gi np r a c t i c a lw o r k f r o mt h et e x t b o o k d u et os h o r t a g eo ff u n d sa n das e r i o u ss h o r t a g eo f e q u i p m e n ta n dt h ep e r f o r m a n c ei s b a c k w a r d , s t u d e n t sa l er a r e l yc a r r i e do u ts c i e n t i f i cr e s e a r c h a c t i v i t i e s ,p r a c t i c a la b i l i t i e sa r ep o o r , s o u n i v e r s i t yg r a d u a t e sa r el a c ko fm a n i p u l a t i v ea n di n n o v a t i o na b i l i t y ,u n a b l et oa d a p tt ot h en e e d so ft h e c o m m u n i t y ,h a v ef o r m e dt h ee n o r m o u sp r e s s u r eo ne m p l o y m e n t t h e r e f o r e ,t h i ss u b j e c th a sd e v e l o p e da s e to f t r a i n i n gs y s t e mt h a tr a i s eu n i v e r s i t ys t u d e n t sm a n i p u l a t i v ea n di n n o v a t i o na b i l i t y o nt h eb a s i so fc o n s i d e r i n gs y s t e m a t i cp o p u l a r i z a t i o na n da p p l i c a b i l i t ye m p h a t i c a l l y t h em a i nw o r k i sf o c u so nh a r d w a r ed e s i g n i n ga n ds o f t w a r ec o m p i l i n g t h e r eh a si n 打o d u c e dn i n et e c h n o l o g ym o d u l e s d e v e l o p m e n tp r o c e s si nt h ep a p e r , i n c l u d i n g :i s pm o d u l e ,u s bi n t e r f a c em o d u l eb a s e do np d i u s b d i2 , u s bi n t e r f a c em o d u l eb a s e do nu s b u a r ti c f t 2 3 2 r l ,c a nb u si n t e r f a c em o d u l eb a s e do i ls j a1 0 0 0 a n dp c a 8 2 c 2 5 0 ,l i q u i dc r y s t a lm o d u l eb a s e do nl c m 12 8 6 4 ,l - w i r es e r i a li n t e r f a c em o d u l eb a s e do n d s18 8 2 0 ,1 2 ci n t e r f a c em o d u l e ,r s 4 8 5i n t e r f a c em o d u l e ,k e y b o a r da n dl e d d i s p l a yc i r c u i tm o d u l eb a s e d o n8 2 7 9 t h es o f t w a r es y s t e mi n c l u d e dd o c u m e n to p e r a t i o n s ,p a r a m e t e rs e t t i n g s ,e d i t , c o m p i l e ,i s p , t e c h n i c a ld e m o n s t r a t i o nm o d u l e sa n dh e l pi n f o r m a t i o n st h a ta r e i n t e g r a t e di nai d e ,f u n c t i o n a la n d u s e r - f r i e n d l y f o re a c hm o d u l e ,t h ep a p e rh a v eg i v e nm o r ed e t a i l e de x p l a n a t i o na n dd e s c r i b ef r o ml o to fa s p e c t s , s u c ha sc o m m u n i c a t i o np r o t o c o l s ,h a r d w a r ec i r c u i tp r i n c i p l ea n d m a i nc h i p , e s s e n t i a ls o f t w a r ed e s i g n , e t c d i s c u s s e dt h ec h a r a c t e r i s t i c sa n db a s i cp r i n c i p l e so ft h en e wa p p l i c a t i o nt e c h n o l o g y a n dp r o v i d es o m e c o d e so fp r o c e d u r er e l a t e dt om o d u l e s t h ec o n t e n t so ft e c h n i c a lm o d u l ea r e 印p l i c a t i o n o r i e n t e d ,n o to n l y c a nl e a r nas i n g l et e c h n i c a lm o d u l e ,b u ta l s oan u m b e ro ft e c h n i c a lm o d u l e sc a nb ec o m b i n e di n t os e v e r a l s m a l lu t i l i t ys y s t e m s a tt h eb e g i n n i n go fe v e r yc h a p t e r , h a v ee x p l a i n e dt h ep u r p o s e sa n dm e a n i n g so ft h e t e c h n i c a lm o d u l e t h ec h a r a c t e r i s t i co ft h i ss y s t e mi st h ed e s i g no fu s bi n t e r f a c eb a s e do i lf t 2 3 2 r la n d t h ed e s i g no fl s p ,e t c t h e s et e c h n i c a lm o d u l e sa r eo f t e ni n v o l v e di np r a c t i c a la p p l i c a t i o n s o nt h eb a s i so fm a s t e r i n gc e r t a i nt h e o r y s t u d e n t st h r o u g hu n d e r s t a n d i n ga n ds t u d ys e v e r a lt e c h n i c a l m o d u l e si nt h et r a i n i n gs y s t e m ,n o to n l ym a ye n h a n c et h es t u d e n t sm a n i p u l a t i v ea n di n n o v a t i o n a b i l i t y , m o r e o v e r , c a nh a v eg r e a th e l pt ot h ee m p l o y m e n t , t h e r e f o r e ,i th a si m p o r t a n tp r a c t i c a ls i g n i f i c a n c e e x t r e m e l y k e yw o r d s - c a nb u s ,u s b ,i s p ,1 w i r e ,l c m 独创性声明和论文使用授权的说明 独创性声明 本人郑重声明:所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的 研究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已 经发表或撰写的研究成果,也不包含为获得河南师范大学或其他教育机构的学位或证书 所使用过的材料。与我一同工作的同志对本研究所做的任何贡献均己在论文中作了明确 的说明并表示了谢意。 签名:囊囱耄 日期:垫竺塞。么丛 关于论文使用授权的说明 本人完全了解河南师范大学有关保留、使用学位论文的规定,即:有权保留并向国 家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅和借阅。本人授权河南师 范大学可以将学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩 印或扫描等复制手段保存、汇编学位论文。( 保密的学位论文在解密后适用本授权书) 签名:建囱耄导师签名:丞逸壁 日期:? 嘴:笪:- 第一章绪论 1 1选题来源 第一章绪论 “大学生科技创新能力培养训练系统开发”为河南省教育厅科技攻关计划项目,项 目编号:2 0 0 8 a 5 2 0 0 1 4 。 1 2 课题研究的现状、目的和意义 目前,各类嵌入式系统应用非常广泛,除了航空、航天、军事和各种工业现场控制 外,仅就居民家庭而言,手机、冰箱、空调、打印机、微波炉、电子广告牌、监控系统 以及家庭汽车等无一例外地包含了嵌入式技术。为了做好嵌入式系统的教学工作,2 0 0 3 年以来,计算机学会、电子学会等多次召开了“高校嵌入式系统教学”研讨会,共同研 讨培养大学生的科技创新能力的方案,与会者普遍认为,目前,大学生在校期间所学到 的知识与嵌入式技术发展水平很不相称,现在学生的教材内容普遍落后于科学技术的发 展。国内关于单片机的教材讲的都是单片机的基本原理,面向应用的技术较少。由于资 金短缺,仪器设备数量严重不足和性能落后,学生很少进行科研活动,动手能力很差。 许多在实际工程中应用的技术被排斥在教学内容之外,学生根本无法从教材中学到,个 别具有创新能力的学生会在专著中看到这些实用技术,但因缺乏相应的仪器严重影响了 掌握这些技术的效果,造成了学生实际动手能力的下降而无法很好的适应社会的需要。 目前,大学毕业生,甚至研究生面临着非常大的就业压力,究其原因主要有两个方 面:( 1 ) 高校设置的专业不合理,培养了许多社会不需要的“人才;( 2 ) 高校招生人 数逐年增加,现己达到5 0 0 多万,使教学质量严重下降,学校培养人才的方式和社会需 求有一定的差距。为了解决这些问题,需要加强对学生创新能力的培养,因此;尽快开 发一套技术新颖、实用、能够培养学生动手和创新能力的系统非常迫切。 单片机的诸多优点使其应用领域非常广泛,因此,各类学校中有许多专业都开设了 单片机原理与应用课程,目的就在于培养学生的动手、思考能力和实践能力。因此, 本系统有非常好的市场前景,通过本系统的训练,对提高学生的动手能力,培养学生的 创新能力以及扩大就业都有非常重要的实际意义。 大学生科技创新能力培养训练系统开发 1 3 系统的特点 “新与实用”是本系统的两大特点,与国内同类产品相比,本系统有以下突出优点: 面向应用:系统的最大优点是面向应用,这些技术是在实际的应用系统中经常使用 的技术,系统包含的很多技术模块可以直接运用到实际的应用系统中。 内容丰富:系统所选的技术模块种类丰富,都是开发中常用的技术,具有非常高的 实用价值。学生可以进行各种设计性训练,也可以将多个技术模块组合起来操作。 技术先进:先进性主要体现在系统设计的先进性和技术模块内容的先进性两个方 面。本系统在5 1 单片机上实现了在系统编程( i n s y s t e mp r o g r a m m i n g ) 功能。所以, 在计算机上调试好的程序既可以通过编程器写入到单片机或e 2 p r o m 中,也可以直接通 过计算机的串口或u s b 接口下载到应用系统中。 1 4 课题研究的主要内容 本系统主要研究的内容和目的是开发一套大学生创新能力的培训系统,系统包括的 技术大都是教材中没有,而目前实际项目开发中正在使用的技术。包括硬件技术模块设 计和系统软件设计两部分。主要硬件技术模块如下: ( 1 ) i s p ( 在系统编程) 技术模块; ( 2 ) u s b 接口技术模块。其中使用了专用u s b 接口芯片p d i u s b d l 2 和u s b u a r t 芯片f t 2 3 2 r 实现u s b 接口; ( 3 ) c a n 总线接口技术模块; ( 4 ) 液晶显示技术模块; ( 5 ) 1 - w i r e 技术模块; ( 6 ) 1 2 c 接口技术模块; ( 7 ) r s 4 8 5 接口技术模块; ( 8 ) 基于8 2 7 9 的键盘l e d 显示电路技术模块。 系统软件由v c 州0 开发,主要包括源文件编辑、编译、技术模块演示和帮助等菜 单。其中,文件菜单中主要包括新建、打开、保存、另存为、打印预览、打印设置和打 印文件等操作;编辑菜单中主要包括撤消、剪切、复制、粘贴、查找和替换等操作;编 辑菜单主要包括对源程序代码进行编译、下载可执行程序等操作;技术模块演示菜单可 实现对所有技术模块的演示。 2 第二章硬件技术模块设计 第二章硬件技术模块设计 2 1 在系统编程( i s p ) 技术模块的设计 2 1 1 设计在系统编程技术模块的目的和意义 在i s p 技术【l l 出现之前,如果要对单片机编程,必须先把单片机从电路板上取下来, 然后放入专用的编程器中进行编程,最后,再次放入电路板进行调试。这样的开发过程 由于频繁的插拔芯片调试程序,经常损坏元件,同时也大大降低了开发效率。 目前,国内单片机编程器在技术上一般采用并行编程方式,而对a t 8 9 s 5 1 单片机的 串行编程方法主要有两种:一种是基于计算机的并口实现,另一种是通过计算机串口的 d t r 、r t s 、d s r 和c t s 等信号实现。基于并行总线的技术有很多局限性,比如,传 输距离受限,编程线较多( 数据线、地址线和控制线) ;而基于的串口的方法,编程软 件比较复杂,且编程单元没有智能性。由于u s b 接口技术的诸多优点使其应用非常普 及,因此,本模块使用了u s b 接口与计算机相连,既简化了电路设计,同时也实现了 对单片机的串行编程。 本模块的实际意义还在于不需要编程器就可以进行单片机的调试和开发,单片机芯 片可以直接焊接在电路板上,调试结束即成成品。这样不仅省去采购大量昂贵的编程器 的麻烦,降低了组建实验室的成本,而且为学生调试程序带来了很大的方便。 2 1 2 在系统编程技术及s p i 通信协议概述 i s p 是指电路板上的可编程器件不需要从电路板上取下就可以进行编程,写入用户 代码,已经编程的器件也可以使用i s p 方式进行擦除或再编程。无论在单片机上,还是 在c p l d f p g a 上都得到了广泛的应用,i s p 技术是未来发展的方向。 s p i ( s e r i a lp e r i p h e r a li n t e r f a c e ,串行外设接口) 是m o t o r o l a 公司推出的三线同步接 口,用于微控制器与各种外围器件之间进行全双工、同步的串行通信。s p i 接口是一种 高速高效率的串行接口技术,在许多高档的单片机中,已经作为一种标准配置。 s p i 的主要特点有:可以同时发送和接收串行数据、可以作为主机或从机工作、提 供频率可编程时钟、发送结束中断标志、写冲突保护和总线竞争保护等i 列。 s p i 的通信原理并不复杂,它工作在主从方式。这种方式下必须有一个主设备和一 大学生科技创新能力培养训练系统开发 个或多个从设备,其中,主设备必须是微控制器,从设备可以是微控制器,也可以是其 它带有s p i 接口的芯片。一般使用三条信号线通信,它们分别是m o s i ( 主设备数据输 出,从设备数据输入) 、m i s o ( 主设备数据输入,从设备数据输出) 和s c l k ( 时钟 信号,必须由主设备产生) 【3 】。c s 为从设备使能信号,由主设备控制芯片是否被选中,。 只有片选信号为预先规定的使能信号( 高电平或低电平) 时,对此芯片的操作才有效, 这就允许在同一总线上连接多个s p i 接口设备。 s p i 是串行通信协议,数据是一位一位传输的,s c l k 信号只能由主设备控制。m o s i 和m i s o 基于s c l k 提供的脉冲信号完成整个数据的传输过程。数据输入时,在时钟为 低电平时数据信号改变,在紧接着的高电平时接收数据;数据输出时,在时钟为高电平 时数据信号改变,在紧接着的低电平时发送数据,完成一位数据传输。这样,完成1 个 字节的传输最少需要8 个时钟周期。 在点对点的通信中,s p i 接口不需要进行寻址操作,且为全双工通信,简单高效。 在多个从设备的系统中,每个从设备需要独立的使能信号。 2 1 3 在系统编程模块的硬件设计 硬件电路分为3 部分,分别是:和p c 连接的u s b 接口电路、u s b u a r t 转换电 路和串行编程电路。下面针对不同功能电路分别做详细讨论: c p 2 1 0 2 是美国s i l i c o nl a b o r a t o r i e s 公司生产的u s b u a r t 接口转换芯片,内部集 成了u s b 发送接收器、内部时钟以及l k 字节的e 2 p r o m 等,不需要外接电阻或时钟, 支持u s b 2 0 规范,采用2 8 针q f n 封装方式,尺寸只有5 x s n m ( 4 。此芯片实现u s b 到 u a r t 接口转换非常方便,并且系统电源可直接由计算机的u s b 接口获取。c p 2 1 0 2 的 驱动程序可从s i l i c o nl a b o r a t o r i e s 公司网站下载,安装成功后,对c p 2 1 0 2 连接的u s b 接口的操作就转换为对一个虚拟串口的操作,也就是说,在系统的设备管理器中,u s b 接口已经成为虚拟串口,这样省去了编写u s b 接口驱动程序的麻烦。 a t 8 9 c 2 0 5 1 是为a t m e l 公司设计的8 位单片机,其内部有2 k b y t e s 的f l a s h 程序 存储器、1 5 条可编程的i o 口线、两个1 6 位定时,计数器、一个5 向量两级中断系统、 一个全双工串行通信口、内置精密比较器、片内振荡器和时钟电路等。 通过u s b 接口,c p 2 1 0 2 接收系统软件传来的待编程机器码或命令,c p 2 1 0 2 再将 接收到的待编稃机器码或命令传给a t 8 9 c 2 0 5 1 ,a t 8 9 c 2 0 5l 内部的程序将其转换成指 定格式的数据块或命令,再经过s p i 接口将数据块写入a t 8 9 s 5 1 单片机内部的f l a s h 存 4 第二章硬件技术模块设计 储器中,实现串行编程。基于s p i 接口的串行编程器的电路原理如图2 一l 所示: r s t s p i 接口 7 v c c 础b g i n 1 29 1 6s c l k8 u s b 接口 l u fi 8 s u s p e n d p 3 5 p 1 4 p 1 7 v b u s 2 621 7m o s i6 l = 4 7 u f 6 t x d p 3 op 1 5 p i 5 v d d + 5 v 上2 53 1 8m l s 07 2一一 d - r x dp 3 1p 1 6 p 1 6 d v c c 2r s t 34 d + d + 43 g n dg n d 图2 - 1 串行编程器电路原理图 2 1 4 在系统编程模块的软件设计 软件设计共分为两部分:一部分是i s p 的系统软件设计,主要功能是打开待编程的 代码文件,并通过数据线将此文件传送给编程电路中的微控制器a t 8 9 c 2 0 5 1 进行处理; 另一部分是存储在a t 8 9 c 2 0 5 1 单片机中的程序,功能是将a t 8 9 c 2 0 5 1 接收到的待编程 代码通过s p i 接口写入目标单片机的f l a s h 存储器中,实现在系统编程。系统软件的设 计在第三章中讨论,这里只讨论a t 8 9 c 2 0 5 1 中的单片机程序的设计方法。 对目标单片机a t 8 9 s 5 1 串行编程的命令共有9 条,分别是编程使能、芯片擦除、 读写数据( 分为字节或页模式两种) 、读加密位和读签名字节等,具体的指令格式如表 2 1 所示d l 。a t 8 9 c 2 0 5 1 通过p 1 4 、p 1 5 和p 1 6 模拟s p i 接 j 信号,完成对单片机a t 8 9 s 5 1 的串行编程,读写数据的编程时序如图2 2 所示。 m o s i s c l k 、一,厂,厂、一 m 。s 。三x 二二( x 图2 - 2 单片机串行编程时序 大学生科技创新能力培养训练系统开发 表p 1 指令表 指令格式 指令 b y t e ib y t e 2b y t e 3b y t e 4 编程使能 1 0 l o1 1 0 00 1 0 l0 0 l lx x x x x x x xx x x xx x x x 芯片擦除 1 0 1 01 1 0 01 0 0 xx x x xx x x x x x x x x x x xx ) x 读数据( 字节模式)0 0 1 0 0 0 0 0) 【) 【) a l l a 8a 7 a 0d 7 d o 写数据( 字节模式) 0 1 0 00 0 0 0x x x x a l la ra 7 a 0d 7 d 0 写加密位( 2 ) 1 0 1 01 1 0 0l l l 00 0 b l b 2x x x x x x x x x x x x x x x x 读加密位0 0 1 00 1 0 0x x x x x x x xx x x x x x x xx x x l b 3l b 2 l blx x 读签名字节( 1 ) 0 0 1 01 0 0 0 x x x a 5a 4 a l a 0 x x xx x x x s i g n a t u r eb y t e 读数据( 页模式) 0 0 l l0 0 0 0麟a l l a 8b e 0 b y t e i b y t e 2 5 5 写数据( 页模式) 0 1 0 l0 0 0 0x x y d a l l a 8 b y t e 0 b y t e l b y t e 2 5 5 对a t 8 9 s 5 1 单片机编程或校验时,字节数据总是高位在前,低位在后。写数据时, 在s c l k 为低电平期间,将数据送到m o s i ;而读数据是在s c l k 为高电平时进行。 ( 1 ) 读一个字节( i n b y t e ) 数据的子程序 i n b y t e 子程序的功能是从a t 8 9 s 5 1 ( 从设备) 的e 2 p r o m 中读出一个字节数据, 将读出的数据和写入数据进行比较,用于编程校验。需要注意,读取顺序是高位在前, 低位在后。s c l k 、m i s o 和m o s i 信号线的定义见图2 1 。 i n b y t e : m o vr 3 ,撑8 i n b : c l rs c l k n o p s e t bs c l k n o p m o vc ,m i s o 。r l c a;移位 n o p d j n zr 3 ,仆旧 c l rs c l k r e t 6 ( 2 ) 写一个字节( o u t b y t e ) 子程序 o u t b y t e 程序的功能是主设备( a t 8 9 c 2 0 5 1 ) 发送一个字节数据到从设备 ( a t 8 9 s 5 1 ) 。数据类型可以是编程代码、命令和地址中的任一种。 写喜 o u t b y t e : r 3 ,撑8 s c l k a;移位 m o s i 。c 删呲脚眦州脚 bruo 第二章硬件技术模块设计 s e t bs c l k n o p d j n zi u ,o u t b l c a l ld l t 5 0 0 u s ;每写入一个字节都要延时5 0 0 1 a s c l rs c l k r e t ( 3 ) 编程使能( e np r o ) 子程序 e n p r o 子程序的功能是向从设备发出编程使能指令,在其它操作前必须发出编程 使能指令。编程使能命令的后两个字节可以为任意的数据。 e np r o : m o va ,撑e n a b l el ;编程使能命令的第一个字节 l c a l lo u t b y t e m o va ,j 5 e n a b l e2 :编程使能命令的第二个字节 l c a l lo u t b y t e m o va ,群d u m m y;编程使能命令的第三个字节( 任意) l c a l lo u t b y t e m o va , d u m m y;编程使能命令的第四个字节( 任意) l c a l lo u t b y t e r e t ( 4 ) 芯片擦除( e r a s e ) 子程序 e r a s e 子程序的功能是向从设备发出芯片擦除指令,在串行编程模式下,芯片擦 除操作是通过擦除指令完成的,而且擦除周期是自身定时的,大约为5 0 0 m s 。擦除期间, 用串行方式读任何地址数据,返回值均为0 0 h 。 e r a s e : m o va ,撑e r a s el;芯片擦除命令的第一个字节 l c a l lo u t b y t e m o va ,撑e r a s e2 ;芯片擦除命令的第二个字节 l c a l lo u t b y t e m o va ,群d u m m y;芯片擦除命令的第三个字节( 任意) l c a l lo u t b y t e m o va ,拌d u m m y;芯片擦除命令的第四个字节( 任意) l c a l lo u t b y t e m o va ,撑5 0 l c a l ld l t l o m s;延时以保证写操作完成 r e t 2 2u s b 接口技术模块设计 2 2 1 设计u s b 接口技术模块的目的和意义 与其它外部设备接口相比,u s b 总线具有如下诸多优点【6 i : 传输速度快:u s b i 1 的最高数据传输率为1 2 m b p s ,( 1 5 m b s ) ;u s b 2 0 则提 高到4 8 0 m b p s ,( 6 0 m b s ) :而普通串口最高数据传输率只有几m b p s : 7 大学生科技创新能力培养训练系统开发 总线供电:u s b 总线可为其上连接的设备提供高达5 v 5 0 0 m a 的供电; 使用简单:所用u s b 系统的接口一致,连线简单,即插即用; 强大的外设连接能力:可将多达1 2 7 个u s b 设备连接到同一个系统中。 除以上提到的之外,还具有使用灵活,运行成本低等优点,因此,被广泛地应用在 p c 及各种嵌入式系统中,为用户提供一种可共享的,可扩充的使用方便的串行总线【7 】。 本技术模块结合系统数据传输的需要,进行基于u s b 接口技术的软、硬件开发,对于 大学生掌握u s b 接口技术,推广u s b 总线的应用有着重要的意义。 本技术模块使用两种方法实现u s b 接1 3 ,一种是使用专用u s b 接口控制芯片 p d i u s b d l 2 ,另二种是使用u s b u a r t 接口转换芯片f t 2 3 2 r 实现u s b 接口。 2 2 2 u s b 总线简介 ( 1 ) u s b 接口的机械与电气特性 u s b 总线包含有两条电源线( v c c 、g n d ) 和两条以差分方式传输的信号线( d + , d 一) ,传输率最高可达1 2 m b p s ,一个主机可以连接高达1 2 7 个外围设备。集线器的每 个端口的两根信号线d + 和d _ 上都有一个1 5 k f 2 的下拉电阻,在全速设备的d + 线上和 低速设备的d _ 线上各接有一个1 5 k f 2 的上拉电阻,主机通过检测d + 或d 一上的电压变 化来判定是全速设备,或低速设备的连接和移去。当没有设备连接到u s b 端口时,d + 和d _ 线上电压为0 v ,当检测到任一条数据线电压为v c c ,而另条数据线电压为0 v 时,主机就知道有设备已经“插入。 u s b 定义了两种不同规格的星形u s b 连接头:a 型连接头和b 型连接头,a 型与 b 型u s b 接口如图2 3 所示。每个接口有4 个引脚:其中,d - ,d + 信号线用来传送数 据,v c c 和g n d 两条电源线则用来给u s b 设备供电,编号为1 - - 4 的引脚分别定义为 v c c ,d l ,d + 和g n d 。 8 a 型连接头b 型连接头 图2 3 与8 型连接头 ( 2 ) u s b 接口设备的电源管理 第二章硬件技术模块设计 u s b 接口设备有总线供电和自供电两种供电模式【8 i :由u s b 接口为其供电的方式 称为总线供电( b u s p o w e r e d ) 方式,与之相对,如果使用独立电源对u s b 设备供电, 则称为自供电( s e l f - p o w e r e d ) 方式。此外,根据u s b 规范,所有的主机或设备都必须 支持挂起( s u s p e n d ) 模式,而且,在此模式下消耗的电流不能超过5 0 0 1 a a 。 ( 3 ) u s b 通信的传输类型 u s b 总线上的数据传输有四种类型:控制传输、中断传输、批量传输和实时传输, 不同的传输类型将执行不同的数据交换【9 l 。 ( 4 ) u s b 接口通信协议 u s b 总线上执行通信协议的基本单位是最下层的数据域,几个不同形式的数据域可 以组合成一个封包,而由1 个、2 个或3 个不同形式的封包又可组成一个数据交易。 u s b 传输与一般串行传输一样,先送出最低位l s b ,最后送出最高位m s b 。不同 的令牌包类型,含有不同数量与类型的数据域。以下是几种常用的数据域:同步域 ( s y n c h r o n i z a t i o ns e q u e n c e ,s y n c ) 、封包标识域( p a c k e ti d e n t i f i e r ,p i d ) 、地址域 ( a d d r e s s ,a d d r ) 、端点域( e n d p o i n t ,e n d p ) 、循环冗余校验域( c y c l er e d u n d a n c y c h e c k s ,c i ) 、数据域( d a t a ) 和帧号域( f r a m en u m b e r ) 。 各种封包数据域可以组合成多种封包类型,进而执行一个完整的u s b 通信协议。 而封包类型又分为以下几种:令牌包( t o k e n ) 、数据包( d a t a ) 、握手信号包( h a n d s h a k e ) 、 特殊前导包( s p e c i a lp r e a m b l e ) 和s o f 包。 2 2 3 基于p d i u s b d l 2 的u s b 接口电路原理及芯片介绍 在硬件设计中,首先要根据硬件系统的性能要求选择器件,然后才能进行电路的开 发、设计应用程序和固件程序。 ( 1 ) u s b 器件的选择 实现u s b 接口有多种方法,可采用带u s b 接口的单片机或纯粹的u s b 接口芯片。 带u s b 接口的单片机从应用上又可分成两类:一类是从底层设计专用于u s b 控制的单 片机;另一类是增加了u s b 接口的普通单片机,选择这类u s b 控制器的最大好处在于 开发者对系统结构和指令集非常熟悉,开发工具简单,但在实际选择过程中价格因素也 是需要考虑的。纯粹的u s b 接口芯片内部没有微控制器,仅能处理u s b 接口通信,这 时必须有一个外部微控制器来进行协议处理和数据交换。虽然增加了成本,但其优点是 用户可以任意选择自己熟悉的微控制器,而且,u s b 接口芯片价格便宜、接口方便、可 q 大学生科技创新能力培养训练系统开发 靠性高,特别适合于产品的后期升级。 综上所述,考虑到本技术模块的基本功能要求和成本因素,系统采用性价比很高的 p d i u s b d l 2u s b 接口控制器芯片。 ( 2 ) 基于p d i u s b d l 2 的u s b 接口硬件电路设计 。 模块硬件主要由单片机a t 8 9 s 5 1 和u s b 控制器芯片p d i u s b d l 2 组成。p d s b d l 2 与单片机的接口有两种方式:多路地址数据总线配置方式和单独地址数据总线配置方 式。当p d i u s b d l 2 接收到主机的有效信息时,会产生一个中断信号通知单片机进行处 理。p d i u s b d l 2 将u s b 信号转化为并行数据,传送到单片机,并可以接收单片机传来 的并行数据转换成u s b 接口信号再发送出去,u s b 接口电路如图2 - 4 所示( 因空间所 限,图中省去了单片机) 。 u 2 l_上 u s 丑 a d o 1 d o如 2 8d 1 2 叁0c 2 31 0 4 s h l 臣d :a d i 2 d lw u r 了订 2 7墨 i c ) i 。“3 a 4 d c :a d 2 3 d 2d + e 2 d + l :a d 3 4 d 3:_d 2 4 v c c :茁1 l d - 直i ) 4 6 d 4nv d d 2 3d 1 2 x 2 t ”“ 澄t j 上 v b u s p :a d 5 7 d 5口耵a l 2 c o n 2 二a d 6 8 1 9 6 - 甥x t a l i ,1 2 1d r 7 t ,l u e d j - i k i i v c c :a d 7 9 d 7已k j l 。二d 1 2 a l e l 0 a l e 裂瓜墨e t 2 0 ,舱t 11 一d 1 2 c s1 1 _ i c s觚 1 6 讯 i , d 1 2 s p e n d1 2 s i s p e l d 最d 1 5r c 1 3 1 r口o i i , i r 1l r 一 c l k o u tm m a c k 5 i n ti e o t i ; 妣。 1 n l 。案 g n d d m r e q _ j 一叫 l 图2 - 4 基于p d i u s b d l 2 的u s b 接口电路原理图 p d i u s b d l 2 的u s b 数据线引脚d + ,d _ 分别与u s b 电缆的d + ,d - 相连,其上分 别串联1 8 q 的电阻,用于阻抗匹配。在多路地址数据总线配置方式中,使用了单片机 的i n t 0 、a l e 、w r 、r d 和p 0 口,s u s p e n d 引脚通过电阻接至电源,设备始终不 进入挂起状态。p d i u s b d l 2 在a l e 信号的下降沿对单片机输出地址的进行锁存。 p d i u s b d l 2 的a l e 引脚与单片机的a l e 相连接,w r n 和r d n 引脚分别与单片机 的w r ,r d 直接连接。在这种方式中,单片机使用m o v x 指令对p d i u s b d l 2 进行访 问。如果输出地址为奇数,表示对p d i u s b d l 2 发送指令,输出的地址为偶数时则表示 对p d i u s b d l 2 进行数据传输【l o l 。在技术模块的实际应用中,u s b 接口采用的是多路地 址数据总线接口方式。 在u s b 接口电路的设计中,p d i u s b d l 2 完成所有的u s b 传输功能,与其相连的 i o 第二章硬件技术模块设计 微控制器a t 8 9 s 5 1 的底层应用程序完成u s b 总线的枚举过程、p d i u s b d l 2 的中断访问 过程、电源管理功能和u s b 协议层的功能等。 ( 3 ) 电路中主要芯片介绍 p d i u s b d l 2 是p h i l i p s 公司生产的,具有很高性价比的u s b 接口器件,用在微控 制器系统中,通过高速的并行接e l 与系统中的微控制器进行通信,最高并行接口通信速 率可以达到2 m b p s ,还支持本地的d m a 传输,内部集成有s i e 、f i f o 存储器、发送器 和电压调整器等。主端点配置为双缓冲,因此,可提高数据的吞吐量,减少数据传输时 间,轻松实现数据的实时传输。当采用同步传输方式时,数据的传输速度为1 m b p s ,在 采用上述方式进行数据传输时,可方便的使用多种中断方式。带有可编程的时钟输出, 与u s b 总线的连接可通过软件( s o f t c o n n e c ) 来控制【l i , t 2 t 。有两种工作电压可供选择: 3 3 v o 3 v 或扩展的5 v 电源,范围为3 6 v -

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论