我使用CH372Event中pub TEST,單片機使用avr,與376使用spi,上位機中測試數(shù)據(jù)很多次,但是只有第一次成功,之后的就全是return length err, 這個應該表示的是上位機向下位機的讀,寫都成功了吧,但是length,total都為0,看樣子是上位機讀數(shù)據(jù)超時。還有我觀察了下位機的狀況,只有第一次接受了一個斷點2的out成功,然后進入中斷程序,執(zhí)行了批量下傳與上傳,并且顯然這個操作是成功的,但是之后就再也接受不到中斷了,只有斷電,重新上電才能又重新接受一次中斷,現(xiàn)在想明白這是怎么回事。請教一下。Thanks。
進入中斷之后,讀取到的數(shù)據(jù)長度是多少?這個估計問題還在于你的單片機和CH376之間的硬件連線有問題。建議你做測試命令,看下數(shù)據(jù)返回是否成功。
你好,我沒有更改單片機和ch376之間的連線,只是在軟件部分,中斷程序中每個中斷狀態(tài)程序后加了一個測試ch376的命令,返回成功。同時上位機測試的數(shù)據(jù)全部正確了。不明白這是為什么,只加了測試376的命令就可以使376與計算機通信正常。
這個問題為啥沒人回答呀!求教!
你的單片機和CH376之間的硬件接口是什么?采用什么單片機?估計還是出現(xiàn)在通信上面有問題。
我用avr,atmega64,硬件接口是spi,你說的通信問題是指CH376與單片機之間的SPI通信是吧,我用的SPI通信之前已經(jīng)實現(xiàn)SD卡和U盤得讀寫,現(xiàn)在仍然使用之前的寫命令,寫數(shù)據(jù),讀數(shù)據(jù)的函數(shù)控制CH376與計算機通信,難道問題出在這?
雖然我現(xiàn)在能夠正常與計算機通信,但是總不能在程序中加這么多測試CH376的命令吧,感覺這個測試CH376的命令有點像清除CH376內(nèi)部的某些寄存器中的值,起了個復位作用,所以我非常想知道這是什么原因。
這個測試是測試通訊的,你的感覺不對。 如果出現(xiàn)這種問題,建議你用用CH372DBG來調(diào)試,相關(guān)軟件可以到在線下載里搜索一下。 你可以用這個軟件發(fā)送一個字節(jié),然后調(diào)試一下你的下位機,看是否可以收到數(shù)據(jù)。
你先進行CHECK_EXIST,要保證這個通過,雖然以前你用過,但是建議你還是要測試一下。