본문 바로가기

Hardware

(25)
MCU의 메모리 및 SRAM 구조 메모리 구조 1. C 컴파일러 C 컴파일러는 메모리 영역을 4개의 Segment로 나누어 사용한다. 1) Code Segment 작성한 코드가 저장되는 영역 2) Data Segment Static 변수 및 전역변수가 저장되는 영역 ※ Reset 후에 각 Segment 영역을 설정한 뒤 Flash Memory에 있는 변수를 SRAM에 복사하는 방식으로 동작한다. 3) Heap Segment 동적 메모리가 할당되는 영역 4) Stack Segment 함수에 선언된 지역변수 또는 매개변수들이 저장되며, 서브 루틴 또는 인터럽트 서비스 루틴들이 Call 되었을 때 돌아가야 할 주소들을 저장하는 영역 ※ 프로그램이 Booting 될 때 가장 먼저 Stack 영역부터 형성한다. 서브 루틴: 반복되어 사용하는 것을..
I2C 통신 라인에 Pull-up저항을 붙이는 이유 결론부터 말하면 I2C 통신라인에 Pull-up저항을 붙이는 이유는 I2C 통신은 GPIO 출력모드 중 Open-drain 출력모드로 구성되어 있기 때문이다. GPIO의 출력모드는 대표적으로 Push-pull과 Open-drain이 있으며 자세한 내용은 아래와 같다. 1. Push-pull 1) 동작원리 위 그림처럼 Push-pull은 두 개의 트랜지스터로 이루어져있다. GPIO를 HIGH로 설정하면 G1(Gate1)에 전류가 흐르면서 3.3V가 OUTPUT으로 나오고, GPIO를 LOW로 설정하면 G2(Gate2)에 전류가 흐르면서 OUTPUT이 GND에 연결되어 0V가 나온다. 2) 특징 Push-pull 구성은 두 개의 트랜지스터로 구성되기 때문에 신호를 HIGH, LOW에서 모두 능동적으로 구동한..
H.W 글 목록 1. TRIAC 동작 원리 2. 환류 다이오드 3. 오실로스코프 측정 시 주의사항 4. Pull-up, Pull-down Resistor 5. Pull-down 저항 값 선택
Pull-down 저항 값 선택 위 그림은 MCU에 pull-down저항을 연결한 것이다. pull-down저항의 역할은 스위치를 열었을 때 MCU에서 전류가 그라운드 쪽으로 흐르게 하여 Input의 기본값을 0으로 하는데 있다. 하지만 pull-down의 저항 값에 따라 Input의 기본값이 0으로 되지 않고 약간 떠있는 경우가 발생할 수도 있다. pull-down저항이 그 역할(Input핀을 확실하게 low로 만드는 것)을 더 잘하기 위해서는 저항 값을 낮춰야 한다. 그래야 MCU에서 전류가 그라운드 쪽으로 더 잘 흐르기 때문이다. 정리하면, Pull-down저항 값이 낮으면 Input핀을 더 확실하게 low로 만들지만 전류가 더 많이 흐른다. 반대로 pull-down저항 값이 높으면 Input핀을 조금 덜 확실하게 low로 만들지..
Pull-up, Pull-down Resistor 1. GPIO Input 모드에서 Pull-up, Pull-down Resistor가 필요한 이유 Pull-up, Pull-down Resistor가 필요한 이유를 설명하기 위해서는 Floating 상태를 알아야 한다. 디지털 신호는 High(1) 또는 Low(0)이지만 실제는 그렇지 않은 경우가 많다. Floating은 0과 1이 명확하지 않게 펄럭거리는 상황을 말하며 정전기, 잡음에 의해서 오류가 생기는 것이 가능하다. 그림1은 Floating 상태를 보여준다. Input을 1로 받을지 0으로 받을지 모르기 때문이다. 즉, 확실한 전압차이가 나지 않아서 전류가 흐르는지 아닌지도 불명확하기 때문에 1과 0이 확실하게 구분되지 않는다. 그래서 Input을 명확히 하기 위해서 Pull-up, Pull-do..
오실로스코프 측정 시 주의사항 1. 오실로스코프의 프로브 커넥터 구조 오실로스코프의 전면 하단을 보면 오실로스코프의 사양에 따라서 적게는 1개 혹은 2개에서 4개 정도의 BNC 커넥터가 있습니다. 이러한 BNC 커넥터는 오실로스코프의 프로브를 연결하기 위한 목적으로 사용됩니다. 위의 이미지를 자세히 보면 커넥터의 도체 부분이 크게 두 부분으로 이루어진 것을 볼 수가 있습니다. 하나는 바깥을 감싸고 있는 도체로 해당 부분은 그라운드로 사용됩니다. 나머지는 이미지 상에서 금색으로 보이는 내부 신호선으로 신호 전달을 위해 사용됩니다. 이렇게 신호선을 감싸는 형태로 케이블을 제작하면 전자기장 차폐로 노이즈의 간섭을 덜 받는 효과가 있습니다. BNC 커넥터에 대한 이야기를 위에서 한 이유는 그라운드로 사용되는 영역의 특징에 대해 설명하기 위해..
환류 다이오드 Inductor는 모터나 Relay에 사용되며 전류의 변화를 싫어한다. 따라서 전류가 증가한다면 Inductor는 그 증가를 억제하는 방향으로, 전류가 감소한다면 그 감소를 억제하는 방향으로 역기전력이 발생한다. 아래는 역기전력을 식으로 나타낸 것이다. 위의 식으로 직류를 예로 들어보면, 직류에서는 전류의 변화가 없으므로 전류의 변화가 0이다. 따라서 역기전력이 0이 된다. 그림1은 환류 다이오드 회로를 나타낸 것이다. 트랜지스터(스위치 역할)가 ON되면 파란색과 같이 전류가 흐르게 된다. 그럼 트랜지스터(스위치 역할)를 OFF하면 어떻게 될까? 트랜지스터가 OFF되면 전류가 급격히 감소하기 때문에 Inductor는 전류를 계속 흘리려고 할 것이다. 그래서 그림2처럼 반대방향으로 +-가 형성된다(+에서 ..
TRIAC 동작 원리 그림1(a)은 TRIAC을 기호로 나타낸 것이고, 그림1(b)는 TRIAC과 똑같은 동작을 하는 스위치 회로로 나타낸 것이다. 그림1(b)에서 G와 T1간에 전압을 공급하지 않고, T1과 T2간에만 전압을 공급한다면, 그림2와 같이 전류가 흐르겠지만 R의 저항이 대단히 크기 때문에 전류는 거의 흐르지 않는다. 그러나 전압을 점점 높여서 어느 한도 이상을 넘으면 m1이 전자석이 되어 SW1의 철편을 끌어당기므로 그림3과 같이 SW1이 ON 상태로 된다. SW1이 ON상태로 되면, T1, T2간의 전류에 의하여 m2가 전자석이 되므로 그림4와 같이 SW2는 ON 상태가 된다. 위와 반대로 공급전압이 점점 낮아져서 어느 한도 이하가 되면 그림5처럼 SW1이 OFF로 된다. 주전극 간의 전압이 0V에 가까워지면..