我現(xiàn)在情況是這樣的(有點(diǎn)長 希望大家耐心看下): 一片USb芯片實(shí)現(xiàn)U盤存儲和上位機(jī)通信 問題 : 因?yàn)槲冶仨毾茸x到上位機(jī)數(shù)據(jù)才能發(fā)送,因此我在專門用一個線程來讀取上位機(jī)數(shù)據(jù)。另一個線程中讀寫U盤。 我的做法是 :默認(rèn)初始化為從機(jī) ,當(dāng)需要U盤存儲的時候再初始化為主機(jī) 存儲完畢 又初始化為從機(jī)。 但問題是從機(jī)轉(zhuǎn)主機(jī)沒問題 但主機(jī)轉(zhuǎn)從機(jī)就不能讀取上位機(jī)數(shù)據(jù)了。要是不操作U盤,那么從機(jī)完全正確。請問是什么問題呢? 還有 從機(jī)轉(zhuǎn)主機(jī)時 需要初始化為主機(jī)模式并初始化磁盤,主機(jī)轉(zhuǎn)從機(jī)時除了初始化為從機(jī)還有其他操作嗎?
從主機(jī)轉(zhuǎn)成從機(jī)之后需要從新初始化芯片。同時計算機(jī)需要從新檢測設(shè)備的插入。上位機(jī)而不是一直在發(fā)送或者接收數(shù)據(jù)。
我就是一直檢測中斷管教的,但是主機(jī)切換從既可以 從機(jī)切換主機(jī)就不行了 請問 主機(jī)轉(zhuǎn)從機(jī) 只需要初始化為從機(jī)模式就可以了嗎?
還有就是主機(jī)模式可以查詢U盤和單片機(jī)連接 那么從機(jī)模式下 有沒有方法查詢從機(jī)和上位機(jī)連接?
只需要設(shè)置下模式即可,或者你發(fā)0X05的復(fù)位命令延時50MS之后在設(shè)置設(shè)備模式也可以。設(shè)備模式下查詢可以參考以下流程: ...... while(1){ set_mode(1){ if(setup)set_mode(2){ while(1){ PC-376 transfer data if(SUSPEND)break; } } else{ set_mode(6){ while(1){ if(INT==0)device_inter else break; } } } } }