PIC을 이용한 4개 FND 켜기

2011. 11. 24. 15:21전자 제어/인큐렙

이번에는 4개의 FND을 켜는 실험이다. 이제 막 시작을 하였다. 여기에 사용되는 FND는 WDUR-41561K이다.

인터넷에서 이름을 치면 이렇게 제품에 대한 상세 설명이 나온다 이것을 보고 만드는 것 이다.

PIN넘버거 적혀 있는게 보일 것이다. 이 제품은 12개의 핀이 있다. 

이것을 보고 기초로 하여 만들어 본다.
핀번호를 만들어 보면


 

1번 핀부터 12번 핀까지 적은 것이다. 각 핀번호에 보면 DIG.1~4까지의 번호가 있는데 이건 4개의 FND에 각각에 순서를 정해주는 것이다. 이것을 걸어 주냐 안주냐에 따라 걸리고 안걸리고가 결정이 된다.

솔직히 지금도 프로그램을 어떻게 만들어야 될지 감이 안잡힌다.
 

16F84A의 구성도이다. 핀배치가 어떻게 되어 있는지 나타내어준다.

지금 사용하지 않는 핀이 
RA0~3까지
RB0~5까지 총 10개 핀이 사용을 하지 않는다.

전에 사용하였던 그 프로그램에 돌리면 이렇게 한버에 4개의 숫자가 다 개방이 된다. 내가 원하는건 타이머 인데 앞으로 갈길이 아주 멀어 보인다. 생각을 해봐야 겠다.
DIG를 그냥 그라운드에 물리면 안될꺼 같다. 분명 어떤 장치를 해줘야 이 프로 그램이 제대로 작종이 될꺼 같다.
과연 어떻게 해줘야 되는 것일까?

4444가 찍힌다. 한번에 다 돌아 가는 것이다. 으 당연한 결과 지만 너무나도 아쉽다는...

솔직히 정확히 c구문을 만든게 아니라 말그대로 노가다 식으로 만든 1의 쉬프트다? 
문제 됬던 그라운드를 16f84a 칩에 나머지 칸에 넣어 1을 넣으면 동작을 하지 않고 0을 넣으면 동작을 하는 것에 착안 하여 만들어 보았다.


동영상은

이번에 다시 포트를 바꾸어 보았다.
그동안 좀 복잡하게 포트 구성이 되어 있었다.  배열을 선언 해주고 싶어서 정리를 새로 하였다.
RA에 단자를 설정을 하고.
RB에 0번 핀부터 7번 핀까지 만들었다

4단자 FND 0~9까지 숫자 배열

PORTA=0x00; PORTB=0x3f;

delay_ms(10000); //0

PORTA=0x00; PORTB=0x06;

delay_ms(10000); //1

PORTA=0x00; PORTB=0x6b;

delay_ms(10000); //2

PORTA=0x00; PORTB=0x4f;

delay_ms(10000); //3

PORTA=0x00; PORTB=0x56;

delay_ms(10000); //4

PORTA=0x00; PORTB=0x5d;

delay_ms(10000); //5

PORTA=0x00; PORTB=0x7d;

delay_ms(10000); //6

PORTA=0x00; PORTB=0x17;

delay_ms(10000); //7

PORTA=0x00; PORTB=0x7f;

delay_ms(10000); //8

PORTA=0x00; PORTB=0x5f;

delay_ms(10000); //9  

동영상을 만들어 보았다. 핀 배정을하고

다시 전부 뛰어 보았다.

이번에는 0001을 뛰어 보겠다.  이건 다음 기회에

 

'전자 제어 > 인큐렙' 카테고리의 다른 글

MPLAB 사용법  (0) 2012.04.03
PIC을 사용하여 한개 FND 켜기  (0) 2011.11.10
레귤레이터 만들기  (0) 2011.10.28
PIC 으로 가기 위한 시작  (0) 2011.10.28