SDA와 SCL 라인에 1k 풀업을 달고 사용하고 있었는데 이 경우 I2C는 잘 되는데
배터리가 충전 중에 SMBus가 에러가 나는 현상이 있엇다.
SW적으로 잡으려고 했으나 잘 되지 않아서 찾아보니 spec이 달랐다.....
3.3V기준에 pull-up저항이 8k보다는 커야 한다고 해서 10k를 달자 smbus는 잘 되는데 i2c(eeprom)이 갑자기 안되는 것이다..
그래서 저항값을 줄이다가 2.2k를 달자 제대로 동작한다. !!
고작 1k차이인데..3.3V기준으로 3.3mA인데... 이 차이가 큰가 보다.
In general, the I2C bus and SMBus are compatible, but there are some subtle differences between the two that could cause some problems. The following table summarizes the differences between the two buses.
I2C | SMBus | |||||||
Clock Speed | ||||||||
Minimum | none | 10 kHz | ||||||
Maximum |
|
100 kHz | ||||||
Timeout | none | 35 ms | ||||||
Electrical Characteristics | ||||||||
VHIGH |
|
2.1V -> VDD | ||||||
VLOW |
|
to 0.8V | ||||||
Max Current | 3 mA | 350 µA |
For more detailed information, check out:
For more detailed information, check out:
'Enginius > Hardware' 카테고리의 다른 글
Anti-drop sensor module spec (4) | 2012.05.09 |
---|---|
mini Pic Board and F/W (0) | 2012.03.29 |
MAX3232 (0) | 2010.05.10 |
usb 오실로스코프 (0) | 2010.05.04 |
mcu로 릴레이를 이용해서 10mA 이상 소자 구동하기 (1) | 2010.04.28 |