검색결과 리스트
글
[Tiva] I2CMasterDataGet()
임베디드/TI
2014. 8. 26. 00:23
uint32_t I2CMasterDataGet(uint32_t ui32Base)
설명 : I2C 통신을 통해 Slave로부터 받아온 값을 return값으로 받습니다.
uint32_t ui32Base
Slave와 통신을 했던 I2C의 Base Address를 설정합니다.
위 함수를 사용하기 위해 I2CMasterControl() 함수를 사용하에 Slave로부터 값을 받아야 합니다.
다음은 위의 함수를 실행하기 위한 코드와 그 결과입니다.
unsigned int rcv = 0;
ROM_I2CMasterSlaveAddrSet(I2C0_BASE, 0xE0 / 2, true);
ROM_I2CMasterControl(I2C0_BASE, I2C_MASTER_CMD_SINGLE_RECEIVE);
rcv = ROM_I2CMasterDataGet(I2C0_BASE);
while (ROM_I2CMasterBusy(I2C0_BASE)) {
}
① : START
② : Slave address
7비트로 전송된 Slave의 address값은 7비트이므로 0xE0 / 2 입니다.
③ : R/S
HIGH 상태이므로 SLAVE로부터 DATA를 전달받게 됩니다.
④ : ACK
⑤ : DATA
Slave로부터 DATA를 전달받습니다. 전달받게된 DATA의 값은 0x00입니다.
⑥ : ACK
⑦ : STOP
300x250
'임베디드 > TI' 카테고리의 다른 글
[CCS] The program generated is not compatible with any of the CPUs in your target configuration. (0) | 2014.08.28 |
---|---|
[Tiva] TM4C MCU와 ECHO UART 통신 (2) | 2014.08.27 |
[Tiva] I2CMasterControl() (0) | 2014.08.25 |
[Tiva] tm4c 시리즈 MCU로 TextLCD(CLCD) 동작 (0) | 2014.08.21 |
[Tiva]startup_ccs.c 파일에 외부 인터럽트 추가하기 (0) | 2014.08.09 |