會員登陸
帳號:

密碼:

記住我



忘記密碼?

現在註冊!
網站導航
最新下載
訪問統計 (自2012/5/3)


正在流覽:   1 名訪客





33ep 系列的spi 的sdi腳位 讀不到資料 有可能是什麼問題
資深會員
註冊日期:
2005/02/01 19:56
所屬群組:
註冊會員
文章: 251
等級: 14; EXP: 81
HP : 0 / 345
MP : 83 / 13851
離線
大家好我想請問一下 我現在用33ep系列
利用PPS控制spi 發現sdi的輸入值我都抓不到 不知道有可能是什麼原因的ansel腳位已經設定. 用的是enhanced buffer mode 謝謝

9月19日 18:39:55
轉換PDF檔 列印


Re: 33ep 系列的spi 的sdi腳位 讀不到資料 有可能是什麼問題
資深會員
註冊日期:
2005/02/01 19:56
所屬群組:
註冊會員
文章: 251
等級: 14; EXP: 81
HP : 0 / 345
MP : 83 / 13851
離線
備註每次送完資料之後有去看 暫存器裡面的 srx MPT 結果每次都出現1 代表Rx FIFO 是空的, 不知道還有什麼地方要去設定

9月19日 19:14:38
轉換PDF檔 列印


Re: 33ep 系列的spi 的sdi腳位 讀不到資料 有可能是什麼問題
資深會員
註冊日期:
2005/02/01 19:56
所屬群組:
註冊會員
文章: 251
等級: 14; EXP: 81
HP : 0 / 345
MP : 83 / 13851
離線
有找到問題發現是sck的PPS在map時 要同時設為Input跟output, 但是不知道這隻腳的iO是要設為輸入還是輸出請教行家 目前讀進來的只會位移一個bit 比如說對方送42 我會讀到21 有可能是什麼原因嗎

9月19日 20:17:27
轉換PDF檔 列印


Re: 33ep 系列的spi 的sdi腳位 讀不到資料 有可能是什麼問題
版主
註冊日期:
2004/04/30 10:53
來自 CAE, Microchip
所屬群組:
站務管理者
註冊會員
MICROCHIP
文章: 14504
等級: 73; EXP: 6
HP : 1081 / 1801
MP : 4834 / 76234
離線
CLK 在 Master 要設成輸出模式,Slave 端則要設成輸入模式。所有被 SPI 使用的腳位,ADC 類比功輸入功能要 disable.

資料有位移,代表取樣點不對,請檢查一下 Mode 的設定。(Mode 00)

9月20日 09:49:37

Ryang 於 2018年09月20日 10:42:58
Ryang 於 2018年09月20日 10:43:59
轉換PDF檔 列印


Re: 33ep 系列的spi 的sdi腳位 讀不到資料 有可能是什麼問題
資深會員
註冊日期:
2005/02/01 19:56
所屬群組:
註冊會員
文章: 251
等級: 14; EXP: 81
HP : 0 / 345
MP : 83 / 13851
離線
謝謝板主所以Clock的部分雖然要同時 用PPS Map 陳薇 輸入和輸出 但是在 腳位的 設定上 要設為輸 出就對了
讀進來有問題好像真的是沒得設定問題 但我現在的 最新 問題是 用icd emulator去跑 sdi讀進來的資料都對 但把程式燒進去 sdi讀進來的資料就會 錯 掉 有可能是什麼原因嗎??

9月20日 11:56:38
轉換PDF檔 列印


Re: 33ep 系列的spi 的sdi腳位 讀不到資料 有可能是什麼問題
資深會員
註冊日期:
2005/02/01 19:56
所屬群組:
註冊會員
文章: 251
等級: 14; EXP: 81
HP : 0 / 345
MP : 83 / 13851
離線
重新整理一下:
1.要用SPI若要用到四腳位,當MASTER要送也要收資料,則SCK那個腳位要同時MAP到輸入和輸出
2.但是TRISX只能設一個方向,我在ICD3連到電路板上去跑,SCK這支腳好像要設為輸入才會正常,設為輸出則不會正常
3.把程式燒到微控器不用ICD3,發現讀回來資料會不正確,有人跟我說是ICD3的地面比較大,比較不會有干擾,不知道此說有合理嗎?
4.以前用DSPIC F30時,若ADCFG沒設的話,會有ICD3可跑,但燒錄之後不能正確執行的問題,所以在33EP有特別看ANSEL有沒有設成DIGITAL,看來是有。

想問有沒有什麼可能性,造成他ICD3跑正常,燒錄之後SPI讀取資料進來就不正確的問題,另外發現不正常的情況下,PIC 當MASTER送資料出去時,雖然在有CLK時會送,但是在沒有CLK的時間,有時信號也會有HIGH/LOW變化...不知道原因

9月21日 07:00:34
轉換PDF檔 列印


Re: 33ep 系列的spi 的sdi腳位 讀不到資料 有可能是什麼問題
版主
註冊日期:
2004/04/30 10:53
來自 CAE, Microchip
所屬群組:
站務管理者
註冊會員
MICROCHIP
文章: 14504
等級: 73; EXP: 6
HP : 1081 / 1801
MP : 4834 / 76234
離線
1.要用SPI若要用到四腳位,當MASTER要送也要收資料,則SCK那個腳位要同時MAP到輸入和輸出

Ans:Master 的 SCK 要設成輸出,Slave 的 SCK 永遠都是輸入模式。Clock 只會由 Master 重送出去給 Slave 的。


2.但是TRISX只能設一個方向,我在ICD3連到電路板上去跑,SCK這支腳好像要設為輸入才會正常,設為輸出則不會正常

Ans: 請再確認一下 SPI 是 Master 還是 Slave Mode?

3.把程式燒到微控器不用ICD3,發現讀回來資料會不正確,有人跟我說是ICD3的地面比較大,比較不會有干擾,不知道此說有合理嗎?

Ans: 不合理。程式是 IC 在執行的,ICD3 只是個通訊裝置而以它不會干擾程式的執行。

4.以前用DSPIC F30時,若ADCFG沒設的話,會有ICD3可跑,但燒錄之後不能正確執行的問題,所以在33EP有特別看ANSEL有沒有設成DIGITAL,看來是有。

Ans: ICD3 有專用的腳位,這些錯誤都是 I/O 設定上的錯誤。

還有 SPI 有四種 Mode 的設定,看一下底下的貼圖:

附加檔案:



jpg  擷取.JPG (117.52 KB)
16_5ba4675c5b0d1.jpg 871X656 px

9月21日 11:37:00
轉換PDF檔 列印


Re: 33ep 系列的spi 的sdi腳位 讀不到資料 有可能是什麼問題
資深會員
註冊日期:
2005/02/01 19:56
所屬群組:
註冊會員
文章: 251
等級: 14; EXP: 81
HP : 0 / 345
MP : 83 / 13851
離線
版主好,謝謝你的回應。
根據以下這份文件的3.1部份有提到
http://ww1.microchip.com/downloads/en/DeviceDoc/70005185a.pdf

If the device has a Peripheral Pin Select (PPS) feature, the SCKx pin must
be mapped as both input and output in Master mode

我是用MASTER MODE,發現把SPI_SCK的腳位同時用PPS MAP成輸入與輸出,在ICD3 EMULATOR的情況下跑才正常。但也因為這樣不確定這支SCK的TRIS設定是要設輸入還是輸出,實驗測試設定為輸入才會正常,設成輸出跑則不正常。這是我個人測試結果

但是燒進去之後不用ICD3跑讀取SLAVE送來的資料還是會亂掉,不知道和PPS是否有關




引用:

Ryang 寫道:
1.要用SPI若要用到四腳位,當MASTER要送也要收資料,則SCK那個腳位要同時MAP到輸入和輸出

Ans:Master 的 SCK 要設成輸出,Slave 的 SCK 永遠都是輸入模式。Clock 只會由 Master 重送出去給 Slave 的。


2.但是TRISX只能設一個方向,我在ICD3連到電路板上去跑,SCK這支腳好像要設為輸入才會正常,設為輸出則不會正常

Ans: 請再確認一下 SPI 是 Master 還是 Slave Mode?

3.把程式燒到微控器不用ICD3,發現讀回來資料會不正確,有人跟我說是ICD3的地面比較大,比較不會有干擾,不知道此說有合理嗎?

Ans: 不合理。程式是 IC 在執行的,ICD3 只是個通訊裝置而以它不會干擾程式的執行。

4.以前用DSPIC F30時,若ADCFG沒設的話,會有ICD3可跑,但燒錄之後不能正確執行的問題,所以在33EP有特別看ANSEL有沒有設成DIGITAL,看來是有。

Ans: ICD3 有專用的腳位,這些錯誤都是 I/O 設定上的錯誤。

還有 SPI 有四種 Mode 的設定,看一下底下的貼圖:

9月21日 14:18:40
轉換PDF檔 列印






無法在此發表文章
可以在此觀看文章
無法回覆文章
無法編輯自己的文章
無法刪除自己的文章
無法發起投票調查
無法在此投票
無法上傳附加檔案
無法不經審核直接發表文章

[進階搜尋]


搜尋
Microchip連結

網頁捷徑
2018 Winter Elite 報名
教育訓練
其它網站連結
電話: 02-25000405
產品技術問題產品技術支援專線:0800-717718 台北02-25088600 新竹03-5778366 Ext. 8600 高雄07-2137830 MicrochipDIRECT 專線: 07-2137830
Powered by XOOPS © 2001-2012 The XOOPS Project