首页 AVR单片机的V-USB和串口通信方式比较

AVR单片机的V-USB和串口通信方式比较

举报
开通vip

AVR单片机的V-USB和串口通信方式比较 I艘一皇子蕴术⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯一 AVR单片机的v—usB和串口通携方式比经 93707部队王志海 【播要】AVR单片机与计算机静数据传精方式通常使用串口通信,随着USB接口的快速普及,豆接提供串口的pc机主板和应用串口进行数据传橹曲井围设备也越来越 少。选择一个简单、快速、适用的通信方式对于单片机系统的设计开发就尤为关键。本文对AVR单片机使用的串口通信方式和V.USB通信方式的开发实现过程进行比 较,分析了两种通讯方式的特点和应用场合,方便工程人员参考选择数据通信实现方案。 【关键词】USB接口;...

AVR单片机的V-USB和串口通信方式比较
I艘一皇子蕴术⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯一 AVR单片机的v—usB和串口通携方式比经 93707部队王志海 【播要】AVR单片机与计算机静数据传精方式通常使用串口通信,随着USB接口的快速普及,豆接提供串口的pc机主板和应用串口进行数据传橹曲井围设备也越来越 少。选择一个简单、快速、适用的通信方式对于单片机系统的设计开发就尤为关键。本文对AVR单片机使用的串口通信方式和V.USB通信方式的开发实现过程进行比 较,分析了两种通讯方式的特点和应用场合,方便工程人员参考选择数据通信实现 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 。 【关键词】USB接口;V—USB;串口通信;AVR单片机 1.引言 串口通信是单片机与上位机最常用 的数据通信方式,随着USB接口的普及, 单片机与计算机之间越来越多的使用USB 接口进行数据传输,但是直接选用USB接 口控制芯片会增加开发成本与难度。为 单片机设备选择一个简单、快速、适用 的通信方式,不但可以降低开发成本和 技术难度,也可以最大程度的提高单片 机系统的运行效率。本文对AVR单片机使 用串口通信和V—USB方案的开发实现过程 进行比较,分析了两种通讯方式的特点 和应用场合。 1.1VUSB简介 V-USB的全称是VirtualUSBfor AVRmicrocontroZlers,是一个开源项 目。它利用纯软件的实现方式在ATMEGA 公司的AVR系列单片机上虚拟出USB口, 将其模拟为低速USB设备,实现方案不需 要添加其他的USB接口芯片。通常单片机 与上位机进行USB通信,需要用专用的芯 片进行USB 协议 离婚协议模板下载合伙人协议 下载渠道分销协议免费下载敬业协议下载授课协议下载 的转换,例女[ICP2101、 PL2303、SL8ll、PDIUSBDl2等。其中 CP2101、PL2303芯片使用起来虽然简 单,但是功能单一,只能做USB转串口的 通讯设备;而PDIUSBDl2、SL811芯片功 能较强,但是设计使用复杂,这些USB芯 片的价格都相对较高,增加了系统的硬 件成本。而V-USB简单易用,成本较低, 绝大多数的AVR系列单片机加上很少的几 个外部元件,就可以组成一个USB系统。 1.2串口通信简介 串口通信基于RS一232一c串行总线接 口标准,最初是为了连接计算机主机与 CRT终端之间的通信,后来逐渐广泛地应 用于各种设备之间的数据交换。早期的 计算机主机都带有RS一232接口,是最常 用的数据接口,具有传输距离远、连接 方式简单、线路占用少、开发资料多等 优点。绝大多数的单片机都内置USART单 元用于串行通信。 2.下位机实现 方法 快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载 2.1V—USB下位机实现 V-USB系统的硬件结构很简单,需要 一个AVR单片机(片上具有2KBFlash, 128字节RAM的大部分型号都可以),再 加上少量的外部元件(晶振、电阻、 稳压二极管等),就组成了一个基本 的V-USB系统,实现方案需占用单片机 的两个数据引脚(其中D+必须连接至 INTO),并不占用其他的UART、计时器 等硬件资源。系统组成如图l。 图中的D1和D2是3.6V稳压二极管, 目的是限SUUSB数据线上的电平。USB通 信 规范 编程规范下载gsp规范下载钢格栅规范下载警徽规范下载建设厅规范下载 中规定,数据线D一、D一上的电平 范围在3.OV至3.6v之间,而AVR单片机 的输出电平是VCC。如果单片机的VCC是 5V,如没有D1、D2的情况下将导致电平 不匹配,会出现在计算机中无法正确识 别出usB设备的情况。单片机所需的电源 VCC可由USB的5V输出电源直接提供,电 阻R1和R2起到了限流和保护的作用,避 免意外情况下损坏计算机的USB端口或单 片机的端口。 V-USB的软件源代码是由c代码和汇 编代码组成的,开发环境为AVRGCC,己 组织好几种小同USB设备的框架,开发者 只需直接利用即可。最小化的V-USB程序 框架编译后需要占用单片机1150至1400 字节的程序空间。 由于V—USB使用单片机IO口模拟USB 通信,是用纯软件的方式实现J,硬件芯 片的功能。而USB通信的速率要求是比 较高的。因此在进行USB通信时单片机 的CPU占用率比较高的。为保证可靠的 USB数据传输,单片机CPU时钟必须是工 作在12MHz、12.8MHz、15MHz、1GMHz、 16.5删z、18MHz、20删z这几个频率。 2.2串口通信下位机实现 具备USART单元的AVR单片机都可以 使用串行通信方式,硬件实现仅使用单 片机的RXD和TxD引脚。为和计算机的RS 232接口连接,一般使用MAX232芯片进行 电平转换,这需要增加部分外围电路, MAX232应用电路如图2: 若要提高用串口通讯硬件的易用 性,还可以选择成品的USB转TTL接口芯 片,可以方便的将使用串口通信的单片 机设备变为USB设备,并且不影响上位机 和下位机的程序编制。 为减小波特率偏差,USART对单片机 的使用的晶振频率和串口设置的通讯速 率有一些要求,不匹配的波特率和晶振 频率会使传输出现通讯错误。具体可查 各型单片机的数据手册中的波特率设置 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 。 3上位机程序编制 3.1V-USB上位机程序编写 V-USB项目在计算机端使用跨平台 的开源项目LibusB来访问USB设备。 LibUSB—Win32是LibUSB在Windows操作 系统(win2k,WinXP,ViSta,Win7) 上的通用USB设备驱动程序及开发包。 表1两种通信接口特征对比 特征 串口通信 VUSB 计算机接口 RS232 USB 接口特点 兼容性好 即插即用、主机供电、应用广泛 可靠传输距离 远(15米) 近(2米) 对单片机要求 具备USART单元 AVR系列,2kBFlash,1288RA^f 系统时钟要求(单位心z) 各种时钟频率均可 12、12.8、15、16、16.j、18、20 外围硬件实现 需TTL电平转换 仅需很少的简单元件 上位机程序 支持多种开发语言 跨平台、支持多种开发语言 编程难度 简单 简单 开发工具 多 多 下位机程序 理解USART的原理7利用固有框架、占用1150’1400字节 理论传输速度 2400bps115.2kbps 20kbps 参考文献 [11程磊.基于STM32的MP3播放嚣的设计U]技术创 新,201102). 【2】王永虹,徐炜,郝立平等STM32系列AV,MCortex—M3 徽控制器原理与实践【M】.北京航空航天大学出版 社2008. 一24一 电子世界/2012.041 翻江力,蔡骏等单片机原理与应用技术【MJ清华大学出 版社,2006. 【4】潘浩.嵌人武MP3播放系统研究ID】北方工业大 学,2008. 【5]李宁基于MDK的STM32处理器开发应用D田.北京航 空航天大学&版社,2008. 作者简介: 张学慧,男,山东青岛人,山东科技大学在读硕士研 究生,研究方向:计算机控制及仿真。 朱爱珍,女,山东青岛人,山东科技大学在读硕士研 究生,研究方向:电力系统自动化。 万方数据 I ICI 垃 P£5俜CKI 韭一 P6引MS0’nPB3rMOS栈jGa PB2‘0S,DCl8、 韭一 PBIf0C’A Pgm,?CPj 誉1唿 釜 PD7t^INll p f4u7{ 』l POeipiNc,{ 13 oJ l一 “半锄—工6 PD}fTfr忙Cj_ 一 P04『X洲n01 n. 一T.}号 4 PD3f|lt'J711 eND e . 卜~-.1l封赫薹PD2fINT01 01 02PDl7TIDl 写掣态泰 P∞:Rx聊PBilxT矗{2H。sC计 —k —L 苫j g{ Pt弛(XTALl^09c1}L———U 鼓 PC5r^£C5喀0¨以 PC4’^口C48D^】 jVC0踅u PG3i‘∞31 ^HEF C4^ ‰ PC2阻DC21 AGND _ GNU 敏 PCI;ADGll _ 丑一 ’L lOOnP。。幢口C嘲PC',6(旧EGET)J — .ATIMEGA8·16P 510 GfI[) 囝1 利用LibUSB可以在不设计核心驱动程序 代码的情况下,访问windows系统上的 USB设备。I.ibUSB—Win32的开源项目网站 是http://libusb—win32.sourceforge. net,遵守GNULesserGeneralPubliC License(LGPL)和GNUGeneralPublic LiCense(GPL)许可协议。协议规定 LibUSB—Win32可以开源也可以用于商业 软件。 LibUSB—Win32为C/C++程序员提供了 可直接用于开发的头文件和Lib文件,其 中Lib文件还提供了BCC、GCC和MSVC这 三个版本。C/C++程序员在自己的程序 中要使用LibUSB—Win32时,只需包含提 供的头文件,并链接合适的Lib文件即 可。对于使用其他语言的开发者,可以 通过直接调用LibUsb—Win32的动态链接 库中的函数来使用LibUSB的功能来访问 USB设备。如果开发者希望具体的控制 通讯细节,可以使用LibLrSB提供的函数 usb—init0、usb—find—busses0、usb control—msg0来实现设备操作、控制传 输、批量传输、中断传输等功能。 在V-USB项目中。有多个使用LibUSB— Win32访问USB设备的工程。开发者可以 直接在自己的工程中添)J【|opendevice.h和 opendevice.cpp来访问外SusB设各,编 程时仅使用已经编写好的usbopenDevice ()、usb—set—configuration()、[ISb control—msg()、usb—close()等几个 函数就可以快速实现与外围USB设备的数 据通信功能。 由于AVR单片机具有低成本、高性能 的特性,使得V—usB非常适合于应用于 USBJJ[I密狗、低速USB数据采集设备、HID 设备等,这样通过使用极少元件构成的 县有USB通信功能的单片机系统比很多 使用专用芯片的系统成本低、开发难度 低。 目前应用V—USB的成熟产品有: usBasP(UsB接口的AVR编程写 入器)、AVRcDC(USB转Rs232)、usB ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.皇子蕉盔翼曼l Bootlader等。在V—USB网站上(见参考 文献)还有许多使用V—USB的开源项目, 这些项目提供了完整的单片机程序和计 算机程序的代码及原理图,非常方便开 发者查阅参考这些资源,并在这些开源 工程实例的基础上进行修改,快速开发 适合于应用需求的单片机设备。 3.2串口通信上位机程序编写 在wjndows下,常用的串口方法主 要有:使用MSComm控件、WindoCsAPI 函数、第三方类库等。使用MSComm控件 比较简单,多种计算机编程语言均可利 用其实现对串口的控制,但是对于通讯 速度和实时性要求高的场合,如果处理 不好就会出现内存泄露等问题。使用 WindowsAPI中用于控制串口通信的函 数,需要对相关的参数和数据结构有一 定的了解,虽然各种语言、各种应用场 合都可以使用,但是编程较为复杂,开 发周期长,只适合需要精准的控制通讯 细节的情况。相对而言第三方的开发类 库例如CgerialPort类,CSerialPortEx 等,不但支持多串口多线程,而且使用 简单,开发周期短,应用场合较,“。 4.通讯速度比较 V-USB将单片机实现为支持USBl.ib 议的低速设备。由于低速USB设备的速度 是1.5M位/秒,而AVR单片机为单指令周 期的,当单片机使剧12MHz的时钟频率 时,荦片机运行时每8条指令就精确完 成⋯个数据位的采集。这对单片机的时 序要求非常严格,所以V—USB项目的核 心部分代码完全由汇编语言实现,并对 AVRGCC编译器做了优化。笔者使用V-USB 的最小框架进行数据传输测试,上位机 发送~次USB命令,下位机不做处理直接 应答,每次传输8字节时数据交换速度最 快,约为1600B/s,当传输字节数增加时 速度会下降,这种数据通讯是应答式, 总数据传输速度为3200B/s目P25.6kbps, 加上单片机数据处理的耗时,通讯速率 应该可以达至q20kbps。 图2 单片机的串口通信速度依赖于单片 机USART所设置的波特率,其单位时位/ 秒(b/s),即每秒钟传输的二进制位数。 若设置为9600b/s,则每秒钟传输的字 节数为9600/8--1200Byte。由于USART本 身是串行通信,所以收发数据时均是单 字节到达的。而V—USB可以设置一次通 讯所传输的字节数,最大一次可以传输 254Byte。在编程卜可以一次传输处理指 定字节的数据结构,设计使用上更为简 单。 5.结束语 综上所述,两种通信接r_1(如表1所 示)各有优缺点。V-USB适用于对单片机 空闲时间多、通讯速度要求不高,硬件 成本较低、易用性好、需要快速开发应 用USB接口设备的单片机项目。串口通信 适用于传输距离远、处理器功能任务复 杂、需要对数据通信严格控制的单片机 项目。 参考文献 [airUSB项目http://www.obdcvat/rush/. [2J/ibusb-wm32项目.htrp://libusb-win32sourceforgenet. [3]ATIvlEI.公司hnp://wwwamaelcom 14}MSDN.hrIp//wⅥwmicrosoftcom/msdn. 作者简介:王志海(1978一),男,河北人,大学本 科,二程师,现服役干93707部队。 /2012.04电子世拜~25— 万方数据 AVR单片机的V-USB和串口通信方式比较 作者: 王志海 作者单位: 93707部队 刊名: 电子世界 英文刊名: Electronics World 年,卷(期): 2012(8) 参考文献(4条) 1.查看详情 2.查看详情 3.libusb-win32 项目 4.V-USB项目 本文链接:http://d.g.wanfangdata.com.cn/Periodical_dzsj201208013.aspx
本文档为【AVR单片机的V-USB和串口通信方式比较】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_978841
暂无简介~
格式:pdf
大小:217KB
软件:PDF阅读器
页数:3
分类:互联网
上传时间:2013-01-19
浏览量:54