MAX3420E系统调试要点说明_第1页
MAX3420E系统调试要点说明_第2页
MAX3420E系统调试要点说明_第3页
MAX3420E系统调试要点说明_第4页
MAX3420E系统调试要点说明_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

1、MAX334200E系统统调试引言当您您设计了了一块电电路板,将MAAX34420EE与您喜喜爱的微微控制器器整合在在一起。加电,插入UUSB,不能正正常工作作.,怎么么办? 本文为为您提供供了答案案。第一一次调试试USBB外设器器件时,会面临临很大的的挑战。要使MMAX334200E能够够正常工工作,首首先需要要按下列列步骤进进行检查查。检查USSB B型型连接器器的引脚脚这是最最容易出出错的地地方视视图是顶顶视图还还是底视视图? 引脚11在哪里里? 如如果您不不是机械械工程师师,这些些视图会会让人感感觉无所所适从。图1和和图2可可帮您解解决这一一问题。应采用欧欧姆表来来检查MMAX3342

2、00E和UUSB连连接器之之间的连连线。特特别注意意D+和和D-。二者很很容易搞搞反。请请注意,MAXX34220E与与连接器器D+和和D-引引脚之间间有333电阻。对于这这么小的的电阻,大部分分测试是是否接通通的仪表表都会发发出“嘀嘀嘀”声声。如果果需要检检查USSB电缆缆,请参参考图33。USB“完整性性”检查查本节阐阐述设备备与USSB的连连接情况况。完整整性检查查给出了了D+和和D-线线的工作作情况,在没有有USBB总线分分析仪的的情况下下,这种种方法非非常有效效。复位位处理器器,将电电缆连接接至PCC USSB端口口,初始始化代码码执行完完毕后,在设置置CONNNECCT位的的语句前

3、前停止运运行。该该语句如如下: wregg(rUUSBCCTL,bmCCONNNECTT); / Connnecct tto UUSB在执行该该语句之之前,DD+和DD-应均均为低电电平。这这是因为为电缆的的主机侧侧电路通通过155k电阻阻将这些些信号下下拉至地地。现在在,单步步执行CCONNNECTT语句后后,MAAX34420EE在D+和VCCC (3.33V)之之间接入入一个11.5kk内部电电阻。此此时,DD+应变变为高电电平,其其后会出出现一些些突发脉脉冲(图图4)。 上面的波波形是DD+,下下面的是是D-。该突发发波形持持续约118s,然后消消失。DD+保持持高电平平,D-保持低低

4、电平,然后弹弹出下面面的Wiindoows XP消消息框(图5):怎么回事事?请注注意,程程序为单单步执行行。到目目前为止止所作的的只是连连接了DD+上拉拉电阻。该上拉拉提示PPC有新新的USSB设备备刚刚插插入,因因此PCC开始向向该设备备发送信信号,确确定设备备类型。这就是是图4中中的脉冲冲信号。由于微微控制器器代码停停止运行行,因此此不会命命令MAAX34420EE做出任任何响应应。PCC由于没没有收到到响应信信号,最最终决定定(188秒后)忽略该该设备。D+为为高电平平和D-为低电电平的总总线状态态称为“USBB总线挂挂起”或或者“挂挂起”。主机停停止发送送任何信信号,MMAX3342

5、00E的DD+上拉拉电阻保保持D+信号为为高电平平。图6所示示为利用用LeCCroyy Innstrrumeentss (LLeCrroy兼兼并了CCATCC,CAATC是是该分析析仪的最最初生产产商)的的USBB总线分分析仪测测得的总总线过程程。当PPC探测测到设备备插入后后(COONNEECT = 11),它它发出一一个USSB总线线复位信信号(没没有画出出)。然然后,在在Traansffer 0,它它发出一一个“GGET_DESSCRIIPTOOR”请请求以获获取“DDEVIICE”类型。5.6687ss之后,PC发发出第二二个USSB总线线复位信信号,再再尝试55.5778s,要求得得

6、到设备备描述符符。PCC第三次次复位总总线,再再尝试55.5880s,然后挂挂起总线线并放弃弃尝试。由于没没有运行行固件,设备不不会听取取或应答答(ACCK) PC的的请求。为清晰起起见,图图6没有有画出MMAX334200E回送送的NAAK (非应答答)握手手信号。图7将将第一次次传输过过程展开开,详细细地显示示数据包包。现在在可以看看到Trranssferr 0以以下面三三个封包包开始: 主机向刚刚刚连上上的设备备 在这这种情况况下,UUSB发发送地址址0)发发送一个个SETTUP包包(633)。 主机发发送一个个DATTA包(64),包含含一个88字节“操作码码”。 外设(MAXX342

7、20E)回送一一个ACCK包(65),确认认无差错错地收到到两个主主机封包包。如果果打开含含有MAAX34420EE的系统统,插入入USBB,设置置CONNNECCT = 1 (但是是不再进进行其他他操作),MAAX34420EE将发出出ACKK握手包包(上面面第3步步的655字节包包)。MMAX334200E硬件件自动应应答COONTRROL传传输的SSETUUP阶段段,这是是由USSB规范范规定的的。接下下来,主主机开始始发送IIN请求求,并从从Traansaactiion 1开始始。对应应每个IIN请求求,MAAX34420EE回送NNAK (非应应答)握握手信号号。这是是因为还还没有运

8、运行程序序,因此此,与MMAX334200E连接接的微控控制器不不会收到到SUDDAV IRQQ (SSetuup数据据就绪中中断请求求)。注注意:MMAX334200E通过过置位SSUDAAV IIRQ,提示微微控制器器收到了了SETTUP包包。该信信息通知知微控制制器需要要对数据据包解码码,并回回送要求求的数据据作为响响应。 这些IIN-NNAK过过程持续续5.6687ss,此时时PC会会复位总总线,开开始第二二次尝试试。图44中的脉脉冲信号号即是IIN-NNAK过过程。如如果仔细细观察示示波器,5s后后波形将将略有变变化这这对应总总线复位位(D+和D-同时置置低约330mss),其其后是

9、另另一个SSETUUP包。然后,IN-NAKK再持续续5s。供参考:另一个个分析仪仪产生图66和图77波形的的USBB总线分分析仪可可能超出出了您的的预算。尽管本本应用笔笔记假设设您只有有一个示示波器和和欧姆表表,我们们还是强强烈建议议在USSB开发发过程中中使用UUSB总总线分析析仪。我我们使用用的LeeCrooy/CCATCC具有多多种优点点,包括括友好的的界面和和丰富的的软件,最重要要的是它它享有工工业标准准USBB测量工工具的美美誉。通通过比对对CATTC波形形来确定定实际情情况,解解决了许许多争论论不休的的问题(硬件、软件和和芯片等等)。总总线总是是如实反反映情况况。幸亏现在在有低成

10、成本USSB分析析仪。图图8所示示为Beeaglle-UUSB的的屏幕截截图。BBeaggle分分析仪能能够以比比LeCCroyy/CAATC低低很多的的价格显显示总线线的工作作情况。如果对对比图88中的IIndeex 110和图图6中的的64字字节数据据包,会会发现它它们显示示了完全全相同的的SETTUP数数据包。 检查进程程如果观观察到了了图4中中的信号号,已经经可以确确定USSB连接接器的连连线是正正确的,而且MMAX334200E供电电正常。如果还还没有观观察到该该显示,可以尝尝试以下下措施: 测量量MAXX34220E的的RESS#引脚脚,确定定其为高高电平。 测量量晶振,确保其其振

11、荡频频率为112MHHz。必必须是112MHHz 0.225%才才能满足足USBB规范。如果超超出容限限,检查查所连接接的负载载电容是是否与并并联谐振振晶体所所规定的的电容一一致(通通常采用用18ppF)。 检查查VCCC是否为为3.33V。 检查系系统接口口电压VVL。确确保不超超过3.6V。 如果果由VBBUS通通过一个个3.33V稳压压器对MMAX334200E的VVCC引引脚供电电,确定定连接了了USBB。否则则,MAAX34420EE的VCCC无法法供电。 注意:由由于固件件运行与与否和UUSB电电缆连接接无关,因此,与总线线供电的的设计相相比,调调试自供供电设计计要简单单一些。可以

12、先先采用外外部电源源对样机机供电。如果需需要,以以后可以以再转为为总线供供电。 下一步检检查您的的控制器器是否能能够成功功地通过过SPII总线与与MAXX34220E寄寄存器组组进行通通信。检查rrreg()和wwregg()。编写任任何程序序,无论论是采用用Maxxim的的实例代代码还是是自己从从头开始始编写代代码,都都需要使使用读写写MAXX34220E寄寄存器的的函数。下面的的例子使使用了这这些函数数原型: unsiigneed ccharr rrreg(BYTTE rr); / Reaad aa MAAX34420EE reegissterr byytevvoidd wrreg(BYT

13、TE rr,BYYTE v); / Wrritee a MAXX34220E reggistter bytte在调试处处理USSB传输输的代码码前,先先编写一一个简单单的子程程序来测测试这些些函数。参见图图9的例例子:图9中的的测试代代码先复复位MAAX34420EE,然后后向USSBIEEN寄存存器写入入每字节节移动11位的88个字节节。每个个字节中中有一位位置位,从00000000011开始,然后是是0000000010,最终以以1000000000结结束。单单步执行行该函数数,检查查“rdd”值88次,确确定其值值为0 xx01,0 x002,00 x044,0 xx08,0 x110,

14、00 x200,0 xx40和和0 x880。如如果是这这样,则则可以确确定SPPI接口口寄存器器的写和和读操作作均正常常。如果果能够写写入USSBIEEN寄存存器,并并可靠的的读回其其内容,那么就就可以读读写所有有的MAAX34420EE寄存器器。图10所所示为采采用CrrosssStuudioo调试MMAXQQ20000微控控制器的的屏幕截截图。将将光标指指向“rrd”变变量时,将激活活弹出窗窗口(截截图没有有显示光光标)。单步执执行代码码时,可可采用这这种方式式来查看看任何变变量。测试代码码首先设设置微处处理器SSPI端端口。对对应每种种微处理理器类型型和特定定IO引引脚分配配,SPPI

15、_IInitt()函函数各不不相同。然后,代码向向PINNCTLL寄存器器写入00 x100,设置置MAXX34220E SPII接口为为全双工工工作模模式。这这将置位位FDUUPSPPI位。代码置置位CHHIPRRES位位,然后后对其清清零,使使MAXX34220E处处于已知知的状态态。建议议在代码码的开始始部分包包含芯片片复位功功能,从从而在每每一个调调试周期期的开始始使MAAX34420EE处于已已知的状状态。如果图110中的的代码没没有产生生正确的的结果,应检查查SPII信号,确定其其工作是是否正常常。 测试程序序tesst_SSPI()中的的第一次次wreeg()调用,向MAAX34

16、420EE的寄存存器177写入数数值0 xx10。SPII总线的的波形应应与图111所示示一致。注意:图图11所所示的波波形使用用SPII模式(0,00),在在SCLLK的上上升沿采采样SPPI数据据,SCCLK的的空闲电电平为低低电平。SPII接口不不同,显显示的波波形会有有不同的的脉冲持持续时间间,但是是对应SSCLKK上升沿沿的数值值应该相相同。 每次访问问SPII的第一一个字节节是命令令字节,其字节节格式如如图122所示。注意图图11中中对应前前一部分分SLCCK上升升沿的MMOSII波形,位模式式1000010010指指定寄存存器177 (第第7位至至第3位位是1000011,数值值

17、为177)。同同样,第第1位为为高电平平,表明明是写操操作。第第二个字字节的位位模式是是0000100000。这是写写入寄存存器177的数据据,即00 x100 (只只有第44位FDDUPSSPI寄寄存器位位置位)。因此此,该SSPI访访问将00 x100写入寄寄存器117,置置位FDDUPSSPI位位。得到这些些波形的的一种简简单方法法是设置置示波器器或者逻逻辑分析析仪在SSS#的的下降沿沿触发,单步执执行wrreg()调用用。testt_SPPI()中的下下一条语语句是rrregg()函函数。第第一次进进入循环环体时,将数值值0 x001写入入USBBIENN寄存器器,如图图13所所示。然

18、后,ttestt_SPPI()函数读读回USSBIEEN寄存存器的数数值,第第一次通通过循环环体时,应等于于1 (图144)。每每次通过过循环体体时,写写入和读读回的位位应向左左移动一一个SCCLK边边沿。MAX334200E寄存存器写和和读操作作验证完完毕后,可以进进一步调调试程序序。到目目前为止止所有的的检查步步骤均属属于“完完整性检检查”。现在,我们开开始实际际处理UUSB通通信功能能的第一一步:需需要处理理器响应应不同的的MAXX34220E中中断请求求位。IRQ位位设置似似乎应该该USBB总线通通信开始始后MAAX34420EE才会置置位中断断请求位位。实际际上,当当MAXX3422

19、0E上上电时,就会有有IRQQ位置位位,当插插入USSB电缆缆和设置置CONNNECCT = 1时时,又有有其他IIRQ位位置位。下面介介绍该启启动过程程的中断断请求情情况。 完成复复位 当当MAXX34220E完完成复位位后,即即使还没没有插入入USBB,某些些中断请请求位就就会置位位。这些些位是:EPIRRQ寄存存器: IN3BBAVIIRQ IN22BAVVIRQQ INN0BAAVIRRQ EEPIRRQ寄存存器的初初始值应应为0 xx19。MAXX34220E置置位这三三个IRRQ位,指示三三个INN端点FFIFOO已经准准备就绪绪,可以以装入数数据。BBAV表表示“BBufffer

20、 Avaailaablee”。UUSBIIRQ寄寄存器: OSCOOKIRRQ UUSBIIRQ寄寄存器的的初始值值应为00 x011。上电电时,MMAX334200E启动动其片内内振荡器器。振荡荡器稳定定后,MMAX334200E置位位OSCCOKIIRQ位位,指示示已经准准备就绪绪,可以以进行工工作。如如果程序序没有通通过OSSCOKKIRQQ位检查查,请确确定VCCC引脚脚电压为为3.33V。VVCC为为振荡器器供电。注意:MMAX334200E IIRQ寄寄存器位位不论其其对应的的使能位位(在EEPIEEN和UUSBIIEN寄寄存器中中)是否否置位,均可有有效置位位。使能能位决定定是否

21、将将请求位位传送到到驱动IINT引引脚的逻逻辑电路路。参见见应用笔笔记36661,MAXX34220E中中断系统统,了解解更详细细的信息息。 USB插插入后插插入USSB (CONNNECCT = 0)后,即即使USSB没有有通信,仍有一一些USSBIRRQ位会会置位。EPIIRQ位位与上面面的情况况一致,但是更更多的UUSBIIRQ位位将置位位:USBIIRQ寄寄存器: OSCOOKIRRQ VVBUSSIRQQ (可可能) VBUUSIRRQ位指指示MAAX34420EE通过检检测VBBCOMMP引脚脚上的55V信号号,探测测到插入入了USSB电缆缆。这假假定您已已经将UUSB连连接器的的

22、VBUUS引脚脚连接至至MAXX34220E微微控制器器(VBBUS比比较器)的输入入引脚。注意:UUSB连连接器的的VBUUS引脚脚接MAAX34420EE的VBBCOMMP输入入引脚是是可选项项。VBBCOMMP引脚脚不对MMAX334200E内部部供电。它只连连接至内内部VBBUS比比较器。 设置COONNEECT = 11之后连连接USSB使主主机发出出一个总总线复位位信号,产生GGet_Desscriiptoor-DDeviice请请求,最最终挂起起总线。这些操操作会置置位USSBIRRQ寄存存器中的的更多IIRQ位位。注意意,USSB总线线复位将将清除VVBUSSIRQQ位。EPI

23、RRQ寄存存器: IN3BBAVIIRQ IN22BAVVIRQQ INN0BAAVIRRQ SSUDAAVIRRQ (通信开开始后) USSBIRRQ寄存存器: OSCCOKIIRQ UREESIRRQ UURESSDNIIRQ SUSSPIRRQ (最后) 如果果将VBBUS接接VBCCOMPP引脚,USBBIRQQ寄存器器读数为为0 x88D,并并持续约约20ss,然后后由于主主机挂起起总线,读数变变为0 xx9D。接下来来的情况况会取决决于您的的代码。如果您您观察到到的情况况和前面面吻合,则表明明系统一一切正常常,可以以继续往往下检查查您的代代码。调试方法法:通过过3个步步骤触发发中断剩剩下的检检查是确确保固件件能够正正确响应应PC发发出的不不同USSB请求求命令,并由MMAX334200E给出出相应信信号。如如果启动动程序,插入UUSB后后,什么么也没有有发生(可能会会出现WWinddowss USSB错误误消息),那么么可能是是您的程

温馨提示

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

评论

0/150

提交评论