CH375A中斷問題

按照你說的,在先插上U盤操作不正常那么你的程序停在什么地方呢????有返回錯誤代碼嗎??


每次都是死在: void xQueryInterrupt( void ) /* 查詢中斷狀態(tài),等待硬件中斷 */ { while ( CH375IntStatus == 0 ); /* 子程序庫調用該子程序之前CH375IntStatus=0,硬件中斷后,由中斷服務程序置為非0的實際中斷狀態(tài)后返回 */ }

應該沒有中斷信號了! 所以我不知道貴公司提供的子程序庫中是在哪里調用了該函數! 我一直都沒有調用該函數!


我知道是停在了這里,關鍵問題是是哪個庫函數停在了這個地方?


ucErr = CH375FileRead();


當熱插拔U盤的時候,都會產生一個中斷信號! 我想問問: 當我上電前插上U盤,再初始化, 和上電初始化完畢后,再插上U盤! 這兩個過程中是不是處理不同? 比如說,初始化完畢后,再插上U盤,會有進入中斷,檢測到了U盤已經連接后,內部是不是做了什么處理, 而先插上U盤,再上電初始化,則沒有做那些相應的處理過程! 才使得兩種方式,得到結論不同! 我的中斷函數如下: void CH375Interrupt(void) { //INT8U ucErr;

xWriteCH375Cmd( CMD_GET_STATUS ); /* 獲取中斷狀態(tài)并取消中斷請求 */ CH375IntStatus = xReadCH375Data( ); /* 獲取中斷狀態(tài) */ if ( CH375IntStatus == USB_INT_DISCONNECT ) { CH375DiskStatus = DISK_DISCONNECT; g_ulUDiskCurStatus = DISK_DISCONNECT; } else if ( CH375IntStatus == USB_INT_CONNECT ) { CH375DiskStatus = DISK_CONNECT; g_ulUDiskCurStatus = DISK_CONNECT; } }

我自己沒有做什么處理,你們公司的子程序庫有沒有做什么處理呢? 麻煩貴公司的技術人員,能幫我查查這個問題,非常感謝!


你可以這樣試下看可以不可以,就是在初始化我們庫的時候,也就是CH375LIBInit()這個函數的時候,將中斷關閉掉,當所有的初始化完成之后在將中斷打開試下看看


我先看看


還是不行??! 現在咋整?


void xQueryInterrupt( void ) /* 查詢中斷狀態(tài),等待硬件中斷 */ { while ( CH375IntStatus == 0 ); /* 子程序庫調用該子程序之前CH375IntStatus=0,硬件中斷后,由中斷服務程序置為非0的實際中斷狀態(tài)后返回 */ } 你們子程序庫是在哪個地方調用的! 為什么總是死在這個位置上?


請問一下: 怎么編寫一個函數,該函數的功能為模擬U盤的斷開與連接! 我想編寫一個這樣的函數,看看是不是能解決問題! 還貴公司的技術人員繼續(xù)幫忙,非常感謝!


有中斷的時候才會進這個函數,具體的哪些命令會產生中斷的話,那你可以參考CH375DS1和CH375DS2


好,我先查查!

請問一下: 怎么編寫一個函數,該函數的功能為模擬U盤的斷開與連接! 我想編寫一個這樣的函數,看看是不是能解決問題! 還貴公司的技術人員繼續(xù)幫忙,非常感謝!


模擬U盤的插拔你可以將375的模式設置在模式6和模式7之間進行切換。設置為模式6后,U盤在的話可以產生U盤連接的中斷USB_INT_CONNECT,也就相當于模擬U盤的插入;但設置模式7模擬U盤拔出,并不能產生U盤斷開的中斷USB_INT_DISCONNECT。


只有登錄才能回復,可以選擇微信賬號登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频