회원가입 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
번호 분류 제목 글쓴이 조회 수 날짜
214 PADS HOTDC/DC Step Down 하나 만들어 올려봅니다.2 고민중 2169 2011.03.06
213 PADS HOTpads9.3 과 pads2007.4의 차이점이 무엇인가요?8 그녕군v 3415 2011.03.05
212 PADS HOTpads9.2 질문입니다.. 눈물에게 1988 2011.03.04
211 PADS HOTPADS 2007, 2009 호환6 아이스으 2982 2011.03.03
210 Allegro & OrCAD HOT[orcad] design cache 제거방법...1 세번째 4870 2011.03.01
209 Allegro & OrCAD HOTorcad에서 부품라이브러리가 안보이는 문제...2 세번째 2217 2011.03.01
208 PADS HOTPADS library 생성 관련 질문이요6 마모루 2496 2011.02.28
207 PADS HOTPADS 버젼에 대해 알려주세요..4 누구라도 1995 2011.02.27
206 PADS HOTpads 2007 windows7 에 설치하기6 누구라도 5835 2011.02.27
205 PADS HOTpads lyout high speed 설정방법4 설계하자 3072 2011.02.26
204 PADS HOTDifferential Pairs trace 간격 맟추는 방법6 soso79 3248 2011.02.21
203 PADS HOTCAM Plane이 무엇인가요?4 공돌이의꿈 3105 2011.02.15
202 Allegro & OrCAD HOTLayout에서 보드아웃라인 여러개일때~3 뽀뽀뽀젤리 2218 2011.02.11
201 Allegro & OrCAD HOTAllegro OrCAD V16.0의 OrCAD PCB Editor 질문드립니다.2 start 2154 2011.02.08
200 Allegro & OrCAD HOT좌표에 의한 배치문제 질문드립니다.1 파워마이스터 1493 2011.01.25
199 ECAD 아무거나 HOTPads2007과 pads9.2의 사용법이 많이 다른가요?3 릭정 3756 2011.01.25
198 ECAD 아무거나 HOTwin7과 Artwork 프로그램(Pads, Cadstar등)간의 호환성 어떤가요?1 릭정 2864 2011.01.25
197 ECAD 아무거나 HOTwin7에서 Pads2007이 호환되나요?2 릭정 2706 2011.01.25
196 Allegro & OrCAD HOTorcad16.2 windows7에서 에러 잡는법 아시는 분3 호랑이21 3111 2011.01.25
195 Allegro & OrCAD HOTOrCAD 16.3 버전부터 PCB Editer5 하늘계곡 3898 2011.01.21
Prev 1 ... 17 18 19 20 21 22 23 24 25 26 ... 32 Next
  • 절제는 모든 미덕의 진주고리를 이어주는 비단의 실이다.
    - 홀
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.