회원가입 ID/PW 찾기
AA

안녕하세요.

mega16 pd1 tx핀을 간단한 외부 풀업과 스위치를 달아서 입력핀으로 회로를 구성하였습니다.

핀에서 입력받아 led 키는 간단한 프로그램을 넣었는데 스위치 입력을 받지 못합니다.

테스터기로 핀을 찍어 보았더니, 외부 풀어을 달았음에도 전압은 10mV입니다. UART 기능 OFF 하였구요.

허허...결국 내부 풀업을 설정하여 해결을 하였지만, 누를때 마다 LED가 흐릿해 지네요.

왜 그럴까요?

 

  

꾼뭉

안녕하세요.  잘부탁드립니다.

댓글 13
  • No Profile

    구성한 전원상의 어떤 문제는 아닐까요?

  • 미니공님께
    No Profile
    글쓴이 꾼뭉 11.03.02 03:06 댓글 좋아요 0 싫어요 0

    전원상의 문제는 없습니다. 하지만 외부풀업저항을 달았음에도 입력핀 전압이 10mV는 이해가 가지 않습니다.

  • No Profile

    0 이라면, 핀 상태가 0으로 세팅된것으로 보고,

    TR을 꺼보죠. 즉, 먼저 초기화에서 TX에 1을 써보고 해보면 어떤지요?

  • 미니공님께
    No Profile
    글쓴이 꾼뭉 11.03.03 00:58 댓글 좋아요 0 싫어요 0

    답변 감사합니다.

    TX에서 1을 쓰라고 하셨는데. PORTD.1을 1을 설정하라는 말씀이신지요?

     

  • No Profile

    두 가지 경우를 생각해볼 수 있겠습니다. TX핀이라고 하여 그 역할이 TX만 하는것이 아니고 표현이 조금 잘못되었습니다. PA, PB, PC, PD... 시리즈 핀은 모두 IN/OUT이 가능한 Bidirectional 포트입니다. 거기에  UART 같은 특수한 기능을 선택적으로 사용하도록 되어있지요. 이런 포트를 GPIO 포트라 부르는데 말 그대로 제너럴한 목적을 갖는 IO 포트를 말합니다. 말씀하신 대로 Pull-up 하였는데 10mV 정도의 저전압이 발생한다면 다음 두 가지 경우를 살펴보시기 바랍니다. 첫 번째로 해당 포트의 해당 핀을 input 모드로 설정하였는지와 설정할 때 내부 pull-down 모드로 설정하지 않았는지 확인하셔야 합니다. 두번째로 전체 전원 구성상의 구조가 맞는지 확인하십시오. 보통 MCU로 LED를 제어 할 경우 MCU에서 내보낼 수 있는 최대 전류량이 제한적이므로 외부에 Pull-up을 달아 LED에 연결 후 MCU가 GND 역할을 하도록 하여 제어하는 것이 보편적입니다. 보통의 경우 LED는 20~30mA 정도 이므로 해당 값에 맞게 Pull-up 저항을 선택하셔야 합니다. 버튼을 누를 경우 LED가 흐릿해진다고 하심을 보니 회로 구성이 의심됩니다. 버튼이나 외부 조작에 LED 밝기가 변화하면 안됩니다. 이 경우 시스템 전체의 전압 강하게 의심되는 현상으로 어느 부분에서 쇼트를 의심해봐야 합니다. 또한 MCU의 Output 버퍼의 값은 Input에 전혀 영향을 미치지 않습니다. 내부적으로 회로 구성 자체가 분리되어 있기 때문입니다. 또한 MCU의 IO를 더 잘 이해하고 싶으시다면 CMOS 공정에서의 IN/OUT 포트 구성에 대해 찾아보세요~

  • flmusic님께
    No Profile
    글쓴이 꾼뭉 11.03.03 01:15 댓글 좋아요 0 싫어요 0

    답변 감사합니다.

    일단 코드비전을 사용하고요.

    말씀하신대로 LED는 MCU 핀에서 LED로 직접 출력을 내보내는것이 아니라, 외부에 Pull-up을 달아 LED에 연결 핀으로 통하도록 하였습니다. 

    PIND.0~3까지 같은 회로로  스위치가 4개가 달려 있습니다. 문제는 TX핀인 PIND.1에서 이런 현상이 일어난다는 것인데요.

    DDRD.1=0; 일때,

    PORTD.1=0; 일때는 스위치를 누르지 않은 상태로 PIND.1=LOW(10mV).

    PORTD.1=1;일때는 스위치를 눌렸을 때는 PIND.1=LOW이나, LED가 흐릿해지는 현상이 일어난다는 것입니다. 

    전원은 USB_ISP 전원을 쓰고 있으며, 다른 동작도 없이 심플한 회로입니다. 

    데이터시트에서 I/O 구조를 보고 있으나, 도통 감이 잡히지 않아서요.

  • 꾼뭉님께
    No Profile

    답변에 대한 답변입니다...^^;;

    글로만 봐서는 제가 지금 상황이 이해가 잘 안되는 부분이 있는데요...

    버튼을 입력받는 부분도 포트D LED 전원을 조정하기 위해 출력하는 부분도 포트D 를 사용하신다는 말씀이신가요?

    말씀하신 글로 봐서는 PIND.0~3까지 같은 회로로 스위치가 4개 달려있다고 하셨고,

    또한 LED 조정을 위해 LED의 캐소드 부분을 PIND.0~3 에 다셨다는 말씀 같은데 제가 맞게 이해 한건지요?

     

    만약 그렇게 구성을 하셨다면 설계 의도를 조금 다르게 가져가신 듯 합니다.

    보통 MCU를 이용한 LED 설계 시 스위치 입력을 위한 포트와 LED 온오프를 위한 포트를 따로 사용하는게 보편적입니다. 예를 들어 PINA.0~3의 스위치 입력을 받아 PIND.0~3에 그 값을 표현하여 온오프 하는 구조이지요. 그게 아니라면 구지 MCU를 이용할 필요가 없기 때문입니다. VCC->저항->스위치->LED->GND 이렇게만 해도 충분히 구현이 가능하기 때문이죠.

     

    회로도를 봐야 정확히 알 수 있겠지만 말씀하신 회로로는 말씀하신 기능을 구현하기에는 조금 동떨어져 보입니다.

  • flmusic님께
    No Profile
    글쓴이 꾼뭉 11.03.06 02:41 댓글 좋아요 0 싫어요 0

    답변 감사합니다.

    보충하겠습니다.

    스위치 입력은 PIND.0~4 이고요.

    LED는 PORTC.3, PORTC.4/ 녹/적 LED을 사용하였습니다.

    PORT_PIN(3,4)-->저항470옴-->LED-->5V 구성하였습니다.  스위치와 LED 출력은 다른 포트를 사용하였습니다.

    정말 제가 궁금한 것은 TX핀을 일반입력시에  외부 풀업과 스위치를 누르지  달았음에도 10mV가 뜬다는 것입니다.

  • No Profile

    회로도를 봐야 될 듯 합니다만..

     

    제 경험상으로는 분명 PortD쪽 TX 단자를 PIN OUT으로 설정한 경우 10mV가 뜨는 것을 보았습니다

     

     

  • No Profile

    외부 풀업 저항으로 일반 저항을 사용하였습니까? 아니면, 어레이 저항을 사용하였습니까?

  • 밝은전기구슬님께
    No Profile
    글쓴이 꾼뭉 11.04.07 11:42 댓글 좋아요 0 싫어요 0

    늦어 죄송합니다. 일반 저항을 사용하였습니다.

  • No Profile

    해당 포트가 죽었을 수도 있어요... 확인해보심이...

  • harry9004님께
    No Profile
    글쓴이 꾼뭉 11.04.07 11:43 댓글 좋아요 0 싫어요 0

    답글 감사합니다. 같은 것을 3개씩 만들었는데요, 3개 다 증상이 동일합니다. 3개가 다 죽은 걸까요?

하드웨어 설계 및 개발에 대하여 개발자들이 자유롭게 토론하는 공간입니다.
- Q&A, 자유주재 토론, 관련 정보 공유
- 분야 : 마이크로프로세서 응용, 전기/전자(아날로그/디지털) 회로 설계, C/C++ 프로그래밍, 펌웨어,
         PCB Artwork, 트러블슈팅 등 하드웨어 설계에 관한 전반인 내용
※ 게시글에 맞는 분류를 선택하여 글을 작성해 주시면 쾌적한 사이트 운영에 많은 도움이 됩니다.
※ 하드웨어 인사이트는 회원들간의 거래정보를 게재할 뿐이지, 그 어떤 책임과 의무도 가지지 않습니다.

search
번호 분류 제목 글쓴이 조회 수 날짜
2247 자유주제 왜 프로그래밍할때 a, b, c, i, j, k, x, y, z를 많이 쓰는가? 아크마 13 2011.03.05
2246 자유주제 HOT[버그신고]요런거도 신고되나요...^^2 hoony184 16131 2011.03.01
2245 자유주제 HOT댓글은 어떻게 다는거죠?6 미니공 20664 2011.02.28
2244 자유주제 HOT운영자님 봐주이소6 마모루 19343 2011.02.23
2243 자유주제 HOT무연납, 납이 없는 납이라니?14 밝은전기구슬 25725 2011.02.22
2242 자유주제 HOTGraphic LCD Designer를 소개합니다4 밝은전기구슬 17946 2011.02.22
2241 자유주제 HOTLED 간판 제작 문의드립니다..1 미늘인 9349 2011.02.18
2240 자유주제 HOT공부 못한것이 후회 됩니다..14 미늘인 20417 2011.02.18
2239 자유주제 HOT혹시 win7 xp 가상 모드로 pcad설치 해 보신분....5 울림 16828 2011.02.18
2238 자유주제 HOTPCL공부 하시는 분에게 조금의 도움이 되시길 바라며..4 하루백만원 15459 2011.02.17
2237 자유주제 HOT노트북을 골랐는데 한번 봐주세요 ㅠㅠ12 owen 14879 2011.02.17
2236 자유주제 HOT버그 신고1 jaoji 12809 2011.02.16
2235 자유주제 HOT자료 등록 시 주의했으면 하는 사항3 jaoji 12645 2011.02.16
2234 자유주제 HOT버그신고1 neoplay 12896 2011.02.16
2233 자유주제 HOT컴퓨터공학 출신으로...1 라드 17429 2011.02.15
2232 자유주제 HOT미루고미루다.. 질문입니다4 나트륨 15435 2011.02.14
2231 자유주제 HOTwin7 PADS2007 설치 인증샷8 뭉게구름 12968 2011.02.11
2230 자유주제 HOT크롬에서도 잘 동작하나요?2 뭉게구름 14506 2011.02.11
2229 자유주제 HOT휴가를 나왔는데 내주머니에....17 오스카킴 2625 2011.02.08
2228 자유주제 HOT컴터 작업 많이 하시는 분들을 위한 손 마사지 방법^^11 2차도전 3361 2011.02.08
Prev 1 ... 18 19 20 21 22 23 24 25 26 27 ... 135 Next
  • 좋은 친구는 건강에도 좋다
    - 사라손
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.