BASIC4MCU | 통신 | I2C-IIC,TWI | AT24C256 시리얼 EEPROM - 9. ack 신호 확인
페이지 정보
작성자 키트 작성일2017-09-01 10:52 조회2,727회 댓글0건본문
void main(void){
PORTD.2=1; DDRD.2=1; //wp
Wr_randum(0,0);
while(1){}}
1바이트 쓰기 예제로 테스트한 파형입니다.
제일 위 사진은 24LC256을 연결하지 않은 상태에서 AVR출력 파형을 측정한 것이고
가운데 사진은 24LC256을 연결하고 측정한 파형입니다.
3번째 사진의 적색 부분은 슬레이브(24LC256)가 응답한 ACK 신호입니다.
아래 강좌 3. Acknowledge 글의 사진과 비교 해보세요
void eeprom_write(char d){
char i;
for(i=0;i<8;i++){
if(d&(0x80>>i))SDA_hi; else SDA_lo;
eeprom_clock();
}
eeprom_nack();
}
1바이트를 시프트 해서 출력하는 eeprom_write(() 함수에서
마지막에 nack() 신호를 주는 것은 nack를 주려고 한 것이 아니고
슬레이브의 ACK를 받기 위해서 I2C 버스를 release 시키려고 high를 출력한 것입니다.
//-------
void main(void){
PORTD.2=1; DDRD.2=1; //wp
Rd_Sequential(0,2);
while(1){}
}연속으로 두바이트를 읽을 때의 파형 중에서 뒷부분입니다.
댓글 0
조회수 2,727등록된 댓글이 없습니다.