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


Browsing this Thread:   1 Anonymous Users






Re: 請教 AN734 有關 I2C 的問題..
#5
版主
版主


查看用戶資訊
Master 寫入資料到 Slave 時,Data 是從Master 送出的,
則該筆的ACK/NAK會是由Slave回應的..由Master產生第9個Pulse讀入ACK/NAK...這樣想正確吧?

Ans: 是的,SCK 的 Pulse 一定是從 Master 送出來的,Master 會再送出第九個 SCK Pulse 同時去讀取 ACK/NAK 的回應。

那Master 在讀取 Slave 資料時, Data 不是從 Slave 送出的嗎? 然後ACK/NAK變成由Master告知Slave是否還要繼續讀取資料...感覺這樣想還滿合理的..我再想辦法Try看看..

Ans: 送 Data 出去的人就要負責檢查對方聳回傳的ACK/NAK 信號。

發表於: 2009/8/19 14:01
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請教 AN734 有關 I2C 的問題..
#4
高級會員
高級會員


查看用戶資訊
參照:

Ryang 寫道:
參照:
On the ninth clock pulse, the slave latches the value of the ACK bit received from the master.
問題: 在讀取資料時,第9個Clock Pulse,SDA腳上的 ACK 或 NACK 信號是 MASTER 控制,Slave 若接收為ACK時,則必須再準備下一筆資料傳送..我的想法對嗎?

錯。
若 Data 是從 Master 送出的,則該筆的 ACN/NAK 會是由 Slave 回傳的。I2C 的 SDA 是雙向的,且有Handshake 的協定。



謝謝板大...
因為Master端是用 89S52 的 IO 去寫的..然後Slave端要用PIC的SSP模組..還要實現1對多的通訊...所以必須搞清楚一些信號..
如果都可以用PIC的話,就不用這麼麻煩了..無奈~

再請教板大...
Master 寫入資料到 Slave 時,Data 是從Master 送出的,
則該筆的ACK/NAK會是由Slave回應的..由Master產生第9個Pulse讀入ACK/NAK...這樣想正確吧?

那Master 在讀取 Slave 資料時, Data 不是從 Slave 送出的嗎? 然後ACK/NAK變成由Master告知Slave是否還要繼續讀取資料...感覺這樣想還滿合理的..我再想辦法Try看看..

發表於: 2009/8/19 1:01
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請教 AN734 有關 I2C 的問題..
#3
版主
版主


查看用戶資訊
參照:
On the ninth clock pulse, the slave latches the value of the ACK bit received from the master.
問題: 在讀取資料時,第9個Clock Pulse,SDA腳上的 ACK 或 NACK 信號是 MASTER 控制,Slave 若接收為ACK時,則必須再準備下一筆資料傳送..我的想法對嗎?

錯。
若 Data 是從 Master 送出的,則該筆的 ACN/NAK 會是由 Slave 回傳的。I2C 的 SDA 是雙向的,且有Handshake 的協定。

發表於: 2009/8/18 15:59
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請教 AN734 有關 I2C 的問題..
#2
版主
版主


查看用戶資訊
問題: 若我要寫一個 Slave 端的程式,Slave 如何 holding SCL line?

Ans: PIC 的 I2C slave module 每當收完一個 Byte 的資料後會自動回 ACK 並把 SCL 載回完 ACK 後拉成 Low Level 已通知 Master 暫停,Slave 通常會進入中斷來優先處理接收,待處理完畢將 SSPCON1<CKP> 設為1 以放開 SCL。

bit 4 CKP: SCK Release Control bit
In Slave mode:
1 = Release clock
0 = Holds clock low (clock stretch). (Used to ensure data setup time.)

而且 Master 要讀幾個byte就產生幾個 Clock,Master 要如何知道 Slave release SCL..
ans: Timming 有規格的,要自行看I2C Specification
SCL 被放開後就會變High,這樣Master 就知道放開了。

發表於: 2009/8/18 15:49
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


請教 AN734 有關 I2C 的問題..
#1
高級會員
高級會員


查看用戶資訊
AN734 - page 2

After the address byte is received, the slave device sends an ACK pulse and holds the SCL line low (clock stretching).By holding the SCL line, the slave can take as much time as needed to prepare the data to be sent back to the master. When the slave is ready, it releases SCL and the master device clocks the data from the slave buffer.

問題: 若我要寫一個 Slave 端的程式,Slave 如何 holding SCL line?
而且 Master 要讀幾個byte就產生幾個 Clock,Master 要如何知道 Slave release SCL..
不然 Slave holding SCL, 然後 Master 一直在產生 Clock..這樣會造成資料錯亂吧?


On the ninth clock pulse, the slave latches the value of the ACK bit received from the master.
問題: 在讀取資料時,第9個Clock Pulse,SDA腳上的 ACK 或 NACK 信號是 MASTER 控制,Slave 若接收為ACK時,則必須再準備下一筆資料傳送..我的想法對嗎?

謝謝~~

發表於: 2009/8/18 12:23
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... ]

教育訓練中心

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