USB不读问题分析报告

上传人:m**** 文档编号:224964508 上传时间:2023-08-02 格式:DOCX 页数:5 大小:116.23KB
收藏 版权申诉 举报 下载
USB不读问题分析报告_第1页
第1页 / 共5页
USB不读问题分析报告_第2页
第2页 / 共5页
USB不读问题分析报告_第3页
第3页 / 共5页
资源描述:

《USB不读问题分析报告》由会员分享,可在线阅读,更多相关《USB不读问题分析报告(5页珍藏版)》请在装配图网上搜索。

1、令SOLING索菱ZT01机器USB不读问题分析报告一、问题点描述:界面显示USB字符,此时无论插入或拔出USB,都能按MODE键切换到USB,收音状态工作正常 将汽车B+断开之后再重新连接,再开机,故障消失。插入IPhone手机,可切换至USB-IPod功能,拔出IPhone,插入U盘,恢复正常。二、USB检测软硬件逻辑说明硬件部分1、USB 检测硬件原理图:USB检测部分410447KQ17R1125K1C. UEEiMVlco:St . 06I- aoao -LI7- 7VSOR R109lUE ETE T r10KA R1U8C53D21R56R604-7K041-48D22- S3G

2、FHIP VOr J-J-irRl/Cl VO 半EN E2 -X.El IEC90 干-OpF L_R11351 ORR151 1K - -AA?LD FWR+12VIR114- 100K47K. . ?6?.TFS27081AH CL5&.I. 1JJ4C89104C98225Mil .J;-C90220PF2、硬件原理逻辑分析:1) .当USB插入时,Q17输出为带负载状态,USB_+5V输出为5V, Q11导通,Q16导通,USB-DET 为低电平;2) .当USB拔出时,Q17输出为悬空状态,USB_+5V输出为7.5V,Q11截止,Q16截止, USB-DET 为高电平;3) .原

3、车USB盒拔出USB时,USB-DET延时了 7-8秒:1) 当原车USB盒拔出时,由于原车USB盒子上USB_+5V端有100UF/16V铝电解电容和0603封装贴片电容的放电特性导致Q11的基极电压短时间的低于发射极电压而导通,进而导致Q16短时间导通,USB_DET为低电平状态;为避免此类情况导致USB设备假插入状态,MCU不仅对USB供电检测,而且还对USB数据进行检测,只有这2种情况同时满足的情况下,才认为USB设备插入并对USB设备进行操作。2)USB-DET检测之所以会延迟7-8秒,是因为单纯的靠电容放电,没有负载泄放 电,是一个非常缓慢的过程。3)因本机器USB检测采用USB供

4、电检测和USB数据进行检测两种状态检测机制, 所以对拔出USB时,USB-DET延时了 7-8秒,机器本身工作不会影响,可以不作处理。软件部分1. USB 设备检测条件USB接口 DP、DN检测U盘4.2.9.11.4.USB接口 DP, DN上下拉电阻配置说明USB_RESCTRL(F4H)(写保护)Bit7Bit6Bit5Bit4Bit3Bit2Bit1BitODP RES UPENDP RES DNENDN RES UPENDN RES DNEN保留位 DP_RES_UPEN:USB DP端上拉电阻开启控制寄存器,为0时开启上拉电阻,缺省为4: DP_RES_DNEN:USB DP端下拉

5、电阻开启控制寄存器,为0时开启下拉电阻,缺省为4: DN_RES_UPEN:USBDN端上拉电阻开启控制寄存器,为0时开启上拉电阻,缺省为1; DN_RES_DNEN:USB DP端下拉电阻开启控制寄存器,为0时开启下拉电阻,缺省为4:Mplayer 命令体系上行数据 DeviceStatus名称字节 长度相对地址位分 配描述De vice Status10x07(h没有SD卡1:仃SD卡出h SD卡冇写保护2o:没有u盘1:有u盘30u盘没有写保护u盘育写保护40SD卡无效SD卡有效50U盘无效U盘有效60光盘无效光盘有效7nmXFlmh rfr Hlnandflmsh 可用MCU端检测GP

6、IO 口 PA4 (低电平表示U盘插入)2软件USB设备检测逻辑说明1)DevDe tect ()是USB设备检测函数,在mcu中每20ms进入检测一次2)USB检测是在解码初始化完成和rise正常工作状态进行检测。3)当dev_status的BIT2为1,MCU检测口 P_USB_DET=0时,将U盘插入标志置1 ,表示 U 盘插入4)当dev_status的BIT2为1,MCU检测口 P_USB_DET=1时,如果U盘插入标志 为1,若ACC0FF则返回,否则将U盘插入标志为0,表示U盘拔出。5)当dev_status的BIT2为0,(此时不做检测口判断)如果U盘插入标志为1, 若ACCO

7、FF则返回,否则将U盘插入标志为0,表示U盘拔出。6)若U盘插入标志为1,如果当前模式不是USB模式,则切换至USB模式。7)若U盘插入标志为0,如果当前模式是USB模式,则切换至RADIO模式。三、问题点原因分析:此问题在台面上无法复现,无打印信息抓取,目前现象是出现在第一次装车上电时,根据现象从以下 3 个 方面进行分析1 车机第一次上电初始化在 RTCRAM 中载入默认值,当 ACCON 时从 RTCRAM 中读取默认值,由于校验的 条件存在缺陷,软件在读取 RTCRAM 的值时,只是简单地判断数组的长度以及更新标志,出现记忆异常或者 断电长时间放置部分记忆值未恢复默认值导致在读取时可能

8、发生错误,因此当MCU读取错误默认值向RISC 发出错误命令,导致RISC异常工作。2 USB设备检测是在解码初始化完成和RISC正常工作状态才做检测若 RISC 正常工作,Flag_Mpstop=0,如果 Flag_Mpstop=l,则 RISC 异常工作。正常流程是判断到有U盘,加载设备,初始化设备,建立文件系统,建立文件列表,等待文件系统建 立完成之后才能转播放状态。从现象看界面显示USB,没有显示播放列表。底层RISC出现异常,未建立文件系统及列表。因此拔出 U盘,才会出现不跳转到收音的情况,切换MODE键还有USB存在。当插IPOD,会产生中断,退出异常状态。再插入U盘,恢复正常。3

9、拔出U盘时,MCU 直检测到RISC返回值有USB设备存在,RISC的返回值没有改变,正常状态时值返回 0x00。四、对策方案:1. 修改软件的 RTC 校验机制,使用五个字节做校验。修改之前if ( (data_n.uml8 8 i | | (data_rem ; 8 7 ; J = C i ) f f 初次 上电, 取 漱认蟹UPrint (n Load_Preset errn) ;UPrintD (data_n.uml);I I 1111 h: I L I I r T T T I I I r T I I I * r* T F T I I I L .f修改之后if ( (data_ELLi

10、ral93 j (da!=【:)I | (data_rem 8E ! =(data_reni ; 8 S ; ! = jxA5 i (data_rem ; S 1 ; J =jx3A)(da七日_二1112二J = l:xA3 | | | (da tm_=eni : 22 : !=匚:瓦三) 初茨 上电” 取 默认鏡2. 修改 USB 设备检测的逻辑修改之前if ( (ZF_DECODEF_F.EADY;i & (Flcig_MPstop = : i )UPrint ( n Zevdetet dev_statu.s j ; UPrintH (D启它_尢日七口8 :i ;/ if(P_USB_D

11、ET = 0-if ( ( (Dev_StatusS:BZT2 j != d)&F_USB_DET = :)修改之后if ( (zf_decodef_f.e,ady)/ 8(Flag_MPstop = 0;7 )/ UPrintC1 号;UPintH(D&j_5t3tuR;/ if(P_JSB_DET = 0if ( ( (Dev_StatusfiBZ22) != : ) & & (P_USB_DET = C)3. 在 MCU 端做一个监视底层 risc 运行的状态函数,如果 risc 异常或死机,会重启 risc。 若重启RISC后,还是不读USB设备,将会重启MCU。u8 reboot_f

12、lag = 0;void risc_check_recover(void)static u8 i=0;static u8 pre_cnt=0;static u8 err_cnt=0;if(P_AUTO_ACC_DET = 1) return;if(REQ_ACK_OK=0) return;if(mp_cb.status =5) / 100msi=0;Read_mpinfo_retry(3);if(pre_cnt = loop_cnt)err_cnt+;if(err_cnt(5*10) / 10sUPrint(loop cnt error, reset risc rn );err_cnt=0;F

13、lag_CMDACK_FAIL = 0;Flag_reload = 1; /需要异常恢复MpBreakPos_Save(); /当前播放状态信息保存,用于恢复mplayer_disable();mp_cb.status = MP_BOOT;mp_cb.sub_status = MP_SUB_POWOFF; / MP_SUB_HRST;DELAY_US_LONG(12000); /must 8000Flag_MPstop = 0;if(reboot_flag)while(l);/若重启RISC失败,则重启MCUelsereboot_flag = 1;elseerr_cnt=0;pre_cnt = loop_cnt;

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!