Digital Output
/ Digital Input | CdS-Relay-Lamp
임의의 장치 또는 소자를 사용하여 High 또는 Low의 형식으로 두 종류의 신호 (High/Low, 5V/0V, On/Off)를 내 보내는 것을 이야기 한다.
간단히 신호를 0 또는 1을 내 보낼 수도 있고, 참 거짓의 신호를 낼 수도 있으며, LED를 켜거나 끌 수도 있으며, 전압을 0V 또는 5V를 낼 수도 있습니다. 모두가 두가지 경우의 수를 가지고 있는 디지탈 신호를 다루는 것이며 신호의 흐름을 생각하여 장치 또는 소자로 부터 나오는 형식이기때문에 디지탈 출력이라고 한다. 8bit PIC 마이크로컨트롤러의 경우 low 인경우 0V를 high 인 경우 5V를 내보낸다.
명령어는 low 출력인 경우 output_low (pin name), high 출력인 경우 output_high (pin name)이다.
아래 그림은 그림과 같이 회로를 만들고 스위치를 닫았을때와 열었을때 전압 비교를 한 것으로 스위치를 열면 연결이 끊기어 건전지 전압을 그대로 읽게 되어 5V(왼쪽)가, 닫으면 출력 부분이 건전지의 0V 기준전위(그라운드)와 연결되어 0V(오른쪽)가 그림과 같이 테스터에 표시가 된다.
스위치를 사용한 출력 신호 (왼쪽: 스위치 Off, 오른쪽: 스위치 On)
(그림을 마우스로 클릭하면 간단한 동영상을 볼 수 있다)
아래 그림은 위의 스위치 대신 마이크로컨트롤러 PIC12F617을 사용하여 프로그램으로 하여 위의 상황을 자동으로 0V, 5V를 반복하여 출력할 수 있도록 만든 회로로 간단한 프로그램(아래 프로그램 참고)으로 쉽게 0V 또는 5V를 쉽게 출력 할 수 있다.
아래 그림은 위의 디지탈 신호(전압)을 이용하여 LED를 켜고 끄는 모습을 나타내는 그립입니다.
디지탈 출력은 위 그림 처럼 간단히 LED를 on/off 할 수 있지만 확장한다면 다양한 기능을 구현 할 수 있다.
아래 그림은 디지탈 출력을 이용하여 Relay를 구동하는 회로이다. Relay는 주로 적은 전유를 큰 전류로 변환시키기 위하여 사용하는 전자 소자로 산업전반에서 많이 사용하고 있다.
PIC12F617의 Digital Output을 이용한 전등 켜고 끄기
(그림을 마우스로 클릭하면 간단한 동영상을 볼 수 있다)
아래 그림은 Relay를 구동하여 220V 전등을 켜고 끄는 방법을 나타낸 것으로 간단히 PIC12F617를 사용하여 아래 프로그램(내부 발진회로 사용)과 같이 PIN_A2(pin name)를 사용하여 디지탈 신호를 만들고 이를 트랜지스터를 구동시켜 Relay를 동작하고 Relay를 사용하여 220V 전등을 켜수 있도록 회로를 만들고 컨트롤 할 수 있다.
아래 그림은 Relay를 구동하여 220V 전등을 켜고 끄는 방법을 나타낸 것으로 간단히 PIC16F687를 사용하여 아래 프로그램(12F617 기준)과 같이 PIN_C2(pin name)를 사용하여 디지탈 신호를 만들고 이를 트랜지스터를 구동시켜 Relay를 동작하고 Relay를 사용하여 220V 전등을 켜수 있도록 회로를 만들고 컨트롤 할 수 있다. 전등대신 모터나 밸브 솔레노이드 등 산업에서사용하는 다른 전기장치를 이용할 수 있으며, relay 대신 전자소자로 바꾸어 활용 가능하다.
PIC16F18345의 Digital Output을 이용한 전등 켜고 끄기 (내부 발진회로 이용)
(그림을 마우스로 클릭하면 간단한 동영상을 볼 수 있다)
회로와 프로그램은 간단하지만 상당히 많은 장치를 쉽게 컨트롤 할 수 있다.
간단히 신호를 0 또는 1을 내 보낼 수도 있고, 참 거짓의 신호를 낼 수도 있으며, LED를 켜거나 끌 수도 있으며, 전압을 0V 또는 5V를 낼 수도 있습니다. 모두가 두가지 경우의 수를 가지고 있는 디지탈 신호를 다루는 것이며 신호의 흐름을 생각하여 장치 또는 소자로 부터 나오는 형식이기때문에 디지탈 출력이라고 한다. 8bit PIC 마이크로컨트롤러의 경우 low 인경우 0V를 high 인 경우 5V를 내보낸다.
명령어는 low 출력인 경우 output_low (pin name), high 출력인 경우 output_high (pin name)이다.
아래 그림은 그림과 같이 회로를 만들고 스위치를 닫았을때와 열었을때 전압 비교를 한 것으로 스위치를 열면 연결이 끊기어 건전지 전압을 그대로 읽게 되어 5V(왼쪽)가, 닫으면 출력 부분이 건전지의 0V 기준전위(그라운드)와 연결되어 0V(오른쪽)가 그림과 같이 테스터에 표시가 된다.
스위치를 사용한 출력 신호 (왼쪽: 스위치 Off, 오른쪽: 스위치 On)
(그림을 마우스로 클릭하면 간단한 동영상을 볼 수 있다)
아래 그림은 위의 스위치 대신 마이크로컨트롤러 PIC12F617을 사용하여 프로그램으로 하여 위의 상황을 자동으로 0V, 5V를 반복하여 출력할 수 있도록 만든 회로로 간단한 프로그램(아래 프로그램 참고)으로 쉽게 0V 또는 5V를 쉽게 출력 할 수 있다.
아래 그림은 위의 디지탈 신호(전압)을 이용하여 LED를 켜고 끄는 모습을 나타내는 그립입니다.
디지탈 출력은 위 그림 처럼 간단히 LED를 on/off 할 수 있지만 확장한다면 다양한 기능을 구현 할 수 있다.
아래 그림은 디지탈 출력을 이용하여 Relay를 구동하는 회로이다. Relay는 주로 적은 전유를 큰 전류로 변환시키기 위하여 사용하는 전자 소자로 산업전반에서 많이 사용하고 있다.
PIC12F617의 Digital Output을 이용한 전등 켜고 끄기
(그림을 마우스로 클릭하면 간단한 동영상을 볼 수 있다)
아래 그림은 Relay를 구동하여 220V 전등을 켜고 끄는 방법을 나타낸 것으로 간단히 PIC12F617를 사용하여 아래 프로그램(내부 발진회로 사용)과 같이 PIN_A2(pin name)를 사용하여 디지탈 신호를 만들고 이를 트랜지스터를 구동시켜 Relay를 동작하고 Relay를 사용하여 220V 전등을 켜수 있도록 회로를 만들고 컨트롤 할 수 있다.
아래 그림은 Relay를 구동하여 220V 전등을 켜고 끄는 방법을 나타낸 것으로 간단히 PIC16F687를 사용하여 아래 프로그램(12F617 기준)과 같이 PIN_C2(pin name)를 사용하여 디지탈 신호를 만들고 이를 트랜지스터를 구동시켜 Relay를 동작하고 Relay를 사용하여 220V 전등을 켜수 있도록 회로를 만들고 컨트롤 할 수 있다. 전등대신 모터나 밸브 솔레노이드 등 산업에서사용하는 다른 전기장치를 이용할 수 있으며, relay 대신 전자소자로 바꾸어 활용 가능하다.
PIC16F18345의 Digital Output을 이용한 전등 켜고 끄기 (내부 발진회로 이용)
(그림을 마우스로 클릭하면 간단한 동영상을 볼 수 있다)
//*********************************************************************** // PIC12F617을 사용하여 Relay 다루기 (Basic Circuit/08-Pin 참고) //*********************************************************************** #include <12f617.h> #fuses INTRC_IO #use delay (clock = 8000000) #define LAMP_PIN PIN_A2 //* PIN_A2를 LAMP_PIN으로 정의 #define LAMP_ON output_high (LAMP_PIN) //* output_high (LAMP_PIN) 을 LAMP_ON 으로 정의 #define LAMP_OFF output_low (LAMP_PIN) //* output_low (LAMP_PIN) 을 LAMP_OFF 로 정의 void main (void) { while (1) { LAMP_ON ; delay_ms (1000) ; LAMP_OFF ; delay_ms (1000) ; } } //***********************************************************************
회로와 프로그램은 간단하지만 상당히 많은 장치를 쉽게 컨트롤 할 수 있다.
참고:
TOP
|
Next > |