Re: 為什麼用can的listen mode接收資料就有問題
|
||||
---|---|---|---|---|
資深會員
|
己經搞定了,的確是設定的問題
我原來用normal mode是ok 直接換成listen mode就不行,所以才會覺得奇怪 我用的是application note的subroutine 所以不清楚問題何在,明明mode也都換了沒有錯誤 不過後來又更改設定,突然就ok了....
發表於: 2005/3/26 23:12
|
|||
|
Re: 為什麼用can的listen mode接收資料就有問題
|
||||
---|---|---|---|---|
資深會員
|
一、listen mode是正常的,不能用是使用者的問題,不關 pull hi的事
二、我用 18f458 +mpc 2551來測試(和另外兩組can node測式),can tx rx腳不會因 normal mode / listen mode 而浮動 三、只有兩個node, listen mode 不適合使用,沒有ack 會讓 tx 端『一直』重送,listen 端會『一直 rx』,設斷點 +示波器,一看就很清楚 硬要這麼做,那 tx端的程式就有做額外的處理,我不清楚你為何要用listen mode。 四、microchip 有一組 demo board ,我就是用這做實驗的,如果你的can的了解不夠深入,花錢取的一個動作正確無誤的demoboard對你的開發曲線是很有幫助的 五、 http://www.microchip.com.tw/material.htm "CAN202的講義暨實做" 建議你參考這實作教材來做
發表於: 2005/3/23 10:03
|
|||
|
Re: 為什麼用can的listen mode接收資料就有問題
|
||||
---|---|---|---|---|
高級會員
|
應該是的 , 如果你只有一個發射一個接收而且接收為LISTEN ONLY , 因為LISTEN ONLY MODE並不會送出任何的訊息 , 而發射端看到沒有人回ACK信號給他 , 所以會認為自己發送錯誤 , 可能因此而發生BUS OFF的現象而不再傳送資料 ,
再加一個接收端設在NORMAL MODE , 然後不回送資料 , 看看是否可以解決這個問題
發表於: 2005/3/22 14:21
|
|||
|
為什麼用can的listen mode接收資料就有問題
|
||||
---|---|---|---|---|
資深會員
|
我寫了一個程式是用兩個can,一個收一個丟
收的用18f458內建的can,丟的用mcp2515 原來在normal mode時資料收的好好的, 資料收到後會用不同速度從另一個can丟出去, 後來想說用listen mode來收資料不會影響接收端資料 比較合乎功能要求 可是同樣的程式改成listen_only接收就不正確了 不知道有什麼可能問題呢?是否只有自身和另外一個端點 不能用listen_only呢?我看datasheet應該是只有 自動測baudrate才會有問題啊.....不解為何資料都收不到了 我是採用檢查旗標的輪詢方式, 回報一下bug 另外,can303的sequential_read和sequential_write 的副函式好像不正確,我用的時候都沒有辦法正常動作
發表於: 2005/3/19 21:51
|
|||
|