728x90

I2C 6

RTL - I2C (Master / Slave - Simulation, Code)

https://insoobaik.tistory.com/672위 I2C 이론을 기반으로 RTL 코드를 설계할 것이다.- Simulation- Master Write / Slave Read 동작(현재 Master와 Slave 신호를 둘 다 보기 때문에 둘 사이에 동일하게 동작하는 신호의 경우 위와 같이 동일한 2개의 신호가 나오는 것 처럼 보일 것이다.)Master에서 Address 포함 Write 동작에 대한 전체 Simulation은 위와 같다. 1. Start ConditionSCL이 1인 상태에서 SDA가 0으로 떨어지는 구간은 Start Condition을 나타내고 I2C 프로토콜이 동작하기 시작하는 구간에 해당한다.bitcount, state, pulse의 값이 동작하기 시작한다. 2. Addre..

I2C 구조 및 동작 원리

I2C에 대해 알아보기 전에 Open Drain이란 개념이 등장하기 Open Drain에 대해 간단하게 알아보겠다. - I2C에서 Open Drain을 사용하는 이유I2C는 여러 장치가 동일한 선을 공유하는 방식이다. Open Drain 방식을 사용하면 하나의 선에 여러 장치가 데이터를 공유할 수 있기 때문이다. 또 신호 충돌을 방지할 수 있기 때문이다. 자세한 내용은 아래를 참고하길 바란다. ■ Open Drain Open Drain은 위 그림과 같이 Drain이 Output Pin에 연결된 구조를 의미한다.위와 같이 Pull-Up 저항이 없게 되면 Floating 상태가 되어 신호가 불안정해지고 잡음의 영향을 받을 수 있다.위와 같이 Pull-Up 저항을 사용하게 되면 Data 선에 1의 신호를 지속..

STM32 - 알람 시계 구현하기 (1) (시간, 알람 띄우기)

이번 글에서는 알람 시계를 가장 기본 단계에서 구현할 것이다.1. 지정한 날짜, 시간을 기준으로 시계가 동작하고2. 알람으로 설정한 시간에 Alarm이 울렸다는 화면을 띄우는 작업을 할 것이다. https://insoobaik.tistory.com/638  STM32 - I2C를 이용한 LCD 문자 출력 (함수 분석)https://insoobaik.tistory.com/624 STM32 - LCD 문자 출력 (I2C)https://insoobaik.tistory.com/626 STM32 - I2C 이론보호되어 있는 글입니다. 내용을 보시려면 비밀번호를 입력하세요.insoobaik.tistory.comI2C 이론에 이어 I2Cinsoobaik.tistory.comI2C에 대한 함수 분석은 위 글을 참고한다..

STM32 - I2C를 이용한 LCD 문자 출력 (함수 분석)

https://insoobaik.tistory.com/624 STM32 - LCD 문자 출력 (I2C)https://insoobaik.tistory.com/626 STM32 - I2C 이론보호되어 있는 글입니다. 내용을 보시려면 비밀번호를 입력하세요.insoobaik.tistory.comI2C 이론에 이어 I2C 통신을 이용하여 LCD에 문자를 출력해볼 것이다.LCDinsoobaik.tistory.com이전에 LCD에 I2C를 이용하여 문자를 출력했었는데, LCD를 출력하기까지 함수를 제대로 파악하지 않고 사용했다.이번 글은 LCD를 사용하기 위한 함수에 대해 자세히 알아보기 위해 LCD 관련 DataSheet와 함수에 대해 파악해보려 한다. LCD 관련 코드#include "lcd.h"extern I2..

STM32 - LCD 문자 출력 (I2C)

https://insoobaik.tistory.com/626 STM32 - I2C 이론보호되어 있는 글입니다. 내용을 보시려면 비밀번호를 입력하세요.insoobaik.tistory.comI2C 이론에 이어 I2C 통신을 이용하여 LCD에 문자를 출력해볼 것이다.LCD에 문자를 출력하기 위해 아두이노 LCM1602 IIC 쉴드를 사용할 것이다. 해당 쉴드에는 PCF8574가 내장되어 있다.PCF8574는 I2C 통신 프로토콜을 이용하여 데이터를 주고 받는다. Slave 주소를 정하는 7bit는 앞에 0100은 고정이며 A0, A1, A2에 의해 Slave가 정해진다.슬레이브 주소를 정하는 A0, A1, A2의 경우 Pull Up 저항이 달려있기 때문에 A0, A1, A2에는 1의 값이 전달된다.코드를 생성..

STM32 - I2C 이론

I2CInter-Integrated Circuit 반도체 칩과 반도체 칩간의 통신 방법으로 널리 사용된다. Data(SDA) 선과 Clock(SCL) 선 2개로만 통신이 가능하다. 주로 control용으로 사용되며 저속이기 때문에 전용 HW없이 일반 GPIO로도 구현이 가능하다. I2C는 하나의 마스터와 여러개의 Slave로 구성되어 있다.  Master의 SDA는 Slave의 SDA와 Master의 SCL은 Slave의 SCL과 연결되어 있다.또한 각각의 라인들은 Pull Up 저항에 연결되어 있다. Slave 장치에는 7bit 장치 주소가 있고, Slave 장치 내부에는 8bit or 16bit 내부 저장 영역 (또는 레지스터) 주소가 있다.위 그림은 Slave의 Address 주소와 내주 저장 영역..

728x90