你好,是需要我們哪顆芯片的demo,關(guān)于GPIO的操作理論上我們EVT中就有相應(yīng)的例程。比如說你要咨詢CH559的IO操作,直接參考CH559EVT即可。
用ch554做USB設(shè)備,pc做usb 主機(jī),用ch375 bulk的vc程序測試,想要主機(jī)慢點(diǎn)發(fā)送數(shù)據(jù)。
為了讓主機(jī)發(fā)送數(shù)據(jù)慢一點(diǎn),在554的USB_DeviceInterrupt中,觸發(fā)了UIS_TOKEN_OUT | 2中斷,則設(shè)置NAK:
UEP2_CTRL = UEP2_CTRL & ~ MASK_UEP_R_RES | UEP_R_RES_NAK;
等到單片機(jī)處理完發(fā)送的數(shù)據(jù),再恢復(fù)ACK:UEP2_CTRL = UEP2_CTRL & ~ MASK_UEP_R_RES | UEP_R_RES_ACK;
結(jié)果調(diào)試發(fā)現(xiàn),無論是否設(shè)置UEP_R_RES_NAK,CH375WriteData都會成功,只是讀失敗了,返回的長度不對
請問:是設(shè)置NAK的方法不對,還是CH375WriteData不判斷usb端口狀態(tài)?
你好,針對你的說法我做了一個demo例程,實現(xiàn)的效果是將收到第一包out數(shù)據(jù)緩存下來,接下來對收到的數(shù)據(jù)都置NAK,直到我將緩存的數(shù)據(jù)上傳成功,才會把接下來收到的數(shù)據(jù)置ACK。demo可見附件,親測有效。測試的工具使用DEBUG372.EXE。測試方式是先下發(fā)一包數(shù)據(jù),接下來點(diǎn)擊下發(fā)數(shù)據(jù)都無效,直到點(diǎn)擊“上傳”,下發(fā)IN包獲取數(shù)據(jù)成功,才能下發(fā)第二包數(shù)據(jù)。
附件:
OUT中斷回NAK,數(shù)據(jù)處理完回ACK.zip
工具鏈接:http://www.findthetime.net/downloads/CH372DBG_ZIP.html
有沒有實現(xiàn)接U盤自動升級的例子
參考第九個demo
11,CH558/CH559模擬鍵盤,用于1~3鍵的特殊鍵盤,支持軟件配置鍵值。也可通過修改軟件支持更多的按鍵。
請問這個文件里的上位機(jī)的源碼能發(fā)我一份么,萬分感謝
你好,上位機(jī)源碼可參考附件。
下載程序時短暫短接下控制引腳. USB設(shè)備顯示出錯,認(rèn)不到芯片,無法下載。怎么解決這個問題?請教一下各位高手。
你好,CH551進(jìn)bootloader條件是上電前需要將P36接上拉到V33,上拉電阻為4.7K-10K。
請問CH554作為host驅(qū)動CP2102這個例子中,如何去添加FTDI相關(guān)的驅(qū)動呢?芯片官方有么有類似的例子可以參考?
模擬計算甲對USB設(shè)備的枚舉及通訊過程,參考EXAM20 ,http://www.findthetime.net/bbs/thread-65023-1.html
開始也準(zhǔn)備用CH552代替CH340+STC單片機(jī)方案,參考了下例程發(fā)現(xiàn)USB模擬串口需要挺多資源的,而單片機(jī)大部分資源要用于IO設(shè)備的運(yùn)用和運(yùn)算,串口只是把結(jié)果傳出去,這樣看還是老老實實用CH340了,這樣不會占用單片機(jī)資源.
我是主要想實現(xiàn)的是用554來作為host,向一些帶有串口芯片的設(shè)備發(fā)送指令,比如ch340, pl232之類的設(shè)備。 現(xiàn)在發(fā)現(xiàn)如果要支持很多的芯片類型,都要手動去添加驅(qū)動。
CH554使用ch554_uart_2_uart.rar進(jìn)行usb串口透傳,怎么操作FT232的USB轉(zhuǎn)串口芯片,案例中只有CH34X,PL2303,CP210x。怎么添加FT232的支持?謝謝?了
如果在原例程上修改添加更好不過了。
建議盡快出完整支持ARDUINO的庫和例程。C編輯器實在太麻煩了。