• slider image 442
  • slider image 483
  • slider image 484
  • slider image 485
  • slider image 486
  • slider image 487
:::


Browsing this Thread:   1 Anonymous Users




(1) 2 »


Re: IIC的附屬端模式
#14
資深會員
資深會員


查看用戶資訊
可是這兩顆都是SMD的 ^^"
實驗時是可以用啦
不過如果要生產時就很不方便
不好黏 ="=

找很久才找到MAXIM有DIP的
其他廠商都是SMD的 ~"~

發表於: 2004/9/9 17:32
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: IIC的附屬端模式
#13
版主
版主


查看用戶資訊
Microchip有TC1320,TC1321。合用嗎?

發表於: 2004/9/9 14:25
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: IIC的附屬端模式
#12
資深會員
資深會員


查看用戶資訊
謝謝各位的幫忙

接下來只剩下找尋IIC介面的DAC了
在MAXIM有找到
但代理商說沒樣品
線上跟美國申請好幾天了
不知道何時才會收到 /_\

發表於: 2004/9/9 10:50
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: IIC的附屬端模式
#11
版主
版主


查看用戶資訊
首先,恭喜您問題解決了。

另外,其實想拿EEPROM做實驗的話,原來的SLAVE端PIC並不用抜下來的。只要把SCL和SDA的腳並上去就可以了。

因為,看來您所定的ADDRESS和EEPROM的ADDRESS 0XA0並不同。存取PIC時,EEPROM不會回ACK (其實是根本就不理);而存取EEPROM時,PIC不會回ACK。兩者可以並行不悖,互不影響。

發表於: 2004/9/9 9:43
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: IIC的附屬端模式
#10
資深會員
資深會員


查看用戶資訊
我一直不想拿EEPROM來實驗
因為是從實驗板上拔下來唯一的一顆
以後還必須用到
要是實驗時不小心程式寫錯
瞬間讀寫個幾千幾萬次
這顆就毀了

這個問題昨晚發現出在哪了
問題不在主控端而是在slave的PIC位址定義
所以MASTER端還是正確的沒錯...

我原本以為7位元位址slave模式時
PIC自定位址SSPADD是向右靠齊的SSPADD<6,0>
結果昨晚再仔細看規格書時才發現
7位元時他是向左靠齊 SSPADD<7,1>
所以錯的是我SLAVE端的自訂位址
而不是MASTER端的呼叫位址

發表於: 2004/9/9 8:46
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: IIC的附屬端模式
#9
版主
版主


查看用戶資訊
參照:

jubel 寫道:

剛剛發現一個怪問題
MASTER發出的位址不對但SLAVE卻有回應
MOVLW B'01001100' ;送出接收端位址碼+R/W
MOVWF SSPBUF ;
照理說SLAVE的位址應該設定為
MOVLW B'00100110' ;設定接收端位址
MOVWF SSPADD ;
可是這麼一來SLAVE都不會回應ACK
必須設定為 SSPADD = B'01001100' 才有回應給MASTER
這是什麼情形 = =?

看來,您以為對的,其實是錯的;您以為錯的,其實是對的。
就好像您如果對I2C的EEPROM來存取的話,SSPBUF應該是填B'10100000'以送出位址,而不是B'01010000'。
這也就是為什我說,先對EEPROM作存取實驗,以確保MASTER端正確無誤,才不會弄不清楚問題出在那裏的緣故。

發表於: 2004/9/8 20:55
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: IIC的附屬端模式
#8
資深會員
資深會員


查看用戶資訊
謝謝板主的回答

每一個階段都要靠中斷判別來執行嗎?

我是打算一接到呼叫之後就停止其他工作
把資料全部收完直到停止條件出來
再離開中斷
不過這麼做接到的資料都有問題
我試試分段好了...

剛剛發現一個怪問題
MASTER發出的位址不對但SLAVE卻有回應
MOVLW B'01001100' ;送出接收端位址碼+R/W
MOVWF SSPBUF ;
照理說SLAVE的位址應該設定為
MOVLW B'00100110' ;設定接收端位址
MOVWF SSPADD ;
可是這麼一來SLAVE都不會回應ACK
必須設定為 SSPADD = B'01001100' 才有回應給MASTER
這是什麼情形 = =?

發表於: 2004/9/8 16:17
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: IIC的附屬端模式
#7
版主
版主


查看用戶資訊
不是沒人理你,實在是事情很多....
1. 在I2C的規範理,並不是所有的Slave都要回Ack(因為位址不一樣所以也就收不到),只要位址相符的那個Slave回Ack(low)就可以了。
2. 一般我都是使用中斷的方式接收資料,所以我是檢查SSPIF的旗號離開中斷前再將其清除,I2C的中斷要去check到底是Address或Data的接收中斷
(可檢查 D/A bit at SSPSTA Register),如果是D/A=0(中斷時)就代表此 Slave的Address Match SSPBUF內的資料可不用理它,只要將SPPIF清除並將
CKT Set to Hi將 SCL 放開讓 MASTER 可以傳送下一你資料近來。
3. Master 與 Slave的 HAndshake 是透過 SCL 能否便 Hi來決定的,而slave的CKP位元就是來控制 SCL的Hi或Low
4. 圖17-8,你可能看錯了Master是發出READ的Command,所以後面的data是從Slave端送給Master的信號,此時的ACK是由MAster傳回給Slave,第一個ACK代表
Master還要再讀取資料(ACK=0), 第二個ACK代表Master即將完成讀取動作ACK=1,緊接著發出STOP。
5. PIC18Fxxxx的Slave回ACK都是硬體自動的回應ACK

發表於: 2004/9/8 15:12
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: IIC的附屬端模式
#6
資深會員
資深會員


查看用戶資訊
我已經可以正確控制iic的dac了
所以問題應該不在MASTER那裡 /_\

發表於: 2004/9/8 14:39
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: IIC的附屬端模式
#5
版主
版主


查看用戶資訊
建議先以I2C的EEPROM,如24LC02B,為SLAVE端;以一顆PIC為MASTER端:先能夠正確存取再說。然後再把SLAVE端,用一顆PIC取代。

不然,問題到底出在MASTER或SLAVE端會弄不清楚。

發表於: 2004/9/8 13:30
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部







You can view topic.
不可以 發起新主題
You cannot reply to posts.
You cannot edit your posts.
You cannot delete your posts.
You cannot add new polls.
You cannot vote in polls.
You cannot attach files to posts.
You cannot post without approval.
You cannot use topic type.
You cannot use HTML syntax.
You cannot use signature.
You cannot create PDF files.
You cannot get print page.

[進階搜尋]


:::

Microchip連結

https://www.facebook.com/microchiptechnologytaiwan/
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=13
https://mu.microchip.com/page/tmu
http://elearning.microchip.com.tw/modules/tad_link/index.php?cate_sn=1
https://page.microchip.com/APAC-PrefCenters-TW.html
http://www.microchip.com/
http://www.microchip.com/treelink
http://www.microchipdirect.com/
http://www.microchip.com.cn/newcommunity/index.php?m=Video&a=index&id=103
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=2
http://www.microchip.com.tw/Data_CD/eLearning/index.html
http://www.microchip.com.tw/RTC/RTC_DVD/
https://www.microchip.com/development-tools/
https://www.youtube.com/user/MicrochipTechnology
[ more... ]

教育訓練中心

!開發工具購買
辦法說明 [業界客戶] [教育單位]
----------------------------------
!校園樣品申請
辦法說明 [教師資格] [學生資格]
----------------------------------