新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 結(jié)合單片機(jī)用匯編實(shí)現(xiàn)I2CBUS總線協(xié)議

結(jié)合單片機(jī)用匯編實(shí)現(xiàn)I2CBUS總線協(xié)議

作者: 時(shí)間:2013-02-16 來源:網(wǎng)絡(luò) 收藏

  CLR A

  LOOP4:CLR P1.3

  NOP

  NOP

  NOP

  SETB P1.3;P1.3=1

  MOV C,P1.2

  RLC A

  DJNZ R0,LOOP4

  MOV R2,A

  POP 00H

  POP 0EH

  RET

  (3)寫數(shù)據(jù)程序:

  WRITE:PUSH 0EH

  CLR P1.4

  LCALL BSTART

  MOV A,#0A0H

  LCALL SENDBYTE;

  SEND CONTROL BYTE

  LCALL ACK

  MOV A,R1;SEND THE ADDRESS

  LCALL SENDBYTE

  CLALL ACK

  MOV A,R2;WERITE THE CONTENT

  LCALL SENDBYTE

  LCALL ACK

  LCALL BSTOP

  POP 0EH

  RET

  連續(xù)寫的兩個(gè)字節(jié)之間最好是要有10ms的延時(shí)。當(dāng)然,也可以進(jìn)行頁寫(PAGE WTITE),一次性連續(xù)寫8個(gè)字節(jié),每個(gè)字節(jié)后要一個(gè)應(yīng)答信號。

 ?。?)停止位程序:

  BSTOP:CL的P1.3

  NOP

  NOP

  CLR P1.2

  NOP

  NOP

  NOP

  SETB P1.3

  NOP

  NOP

  NOP

  SETB P1.2

  RET


上一頁 1 2 3 4 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉