1. 개발환경 : Atmega128
2. 동작목표 : RxD0(PE0)에 몇볼트 이상이 인가되어야 High level로 인식이 되는지 확인.
3. 문제점 : 5Vdc기준(Vcc)으로 자작된 128보드가, 상대장비(3Vdc)의 Tx로부터 약 3V level로 신호를 받을때
(통신을 할때) 별도의 전위변환없이 정상 통신이 가능한지 궁금합니다.
위 3가지 명제로 저의 뜻이 제대로 전달이 되었는지 모르겠습니다.
사족 같지만, 몇마디 더 드리겠습니다.
자작보드는 Vcc = 5Vdc로 사용중입니다. taget보드는 Vcc=3.3Vdc이구요~
서로 uart로 통신을 해야 하는데~ 자작보드가 data를 보낼때는 무리가 없을듯 싶습니다.
하지만 자작보드가 data를 받을때가 문제가 될수 있을것 같아서요.
앞으로는 중간에 chip을 하나 넣어서 레벨 전환을 하려고 하지만,
이미 만들어 놓은놈들은...ㅠㅠ. 꽤나 난처한 상황입니다.
그래서 궁여지책으로 다이랙트로 신호를 넣어 봤습니다. 일단 통신은 호전이 되기는 했는데...
확신이 서질 않아서 이렇게 자판을 두드리게 되었습니다.
조언을 부탁드리겠습니다. 감사합니다.
2. 동작목표 : RxD0(PE0)에 몇볼트 이상이 인가되어야 High level로 인식이 되는지 확인.
3. 문제점 : 5Vdc기준(Vcc)으로 자작된 128보드가, 상대장비(3Vdc)의 Tx로부터 약 3V level로 신호를 받을때
(통신을 할때) 별도의 전위변환없이 정상 통신이 가능한지 궁금합니다.
위 3가지 명제로 저의 뜻이 제대로 전달이 되었는지 모르겠습니다.
사족 같지만, 몇마디 더 드리겠습니다.
자작보드는 Vcc = 5Vdc로 사용중입니다. taget보드는 Vcc=3.3Vdc이구요~
서로 uart로 통신을 해야 하는데~ 자작보드가 data를 보낼때는 무리가 없을듯 싶습니다.
하지만 자작보드가 data를 받을때가 문제가 될수 있을것 같아서요.
앞으로는 중간에 chip을 하나 넣어서 레벨 전환을 하려고 하지만,
이미 만들어 놓은놈들은...ㅠㅠ. 꽤나 난처한 상황입니다.
그래서 궁여지책으로 다이랙트로 신호를 넣어 봤습니다. 일단 통신은 호전이 되기는 했는데...
확신이 서질 않아서 이렇게 자판을 두드리게 되었습니다.
조언을 부탁드리겠습니다. 감사합니다.
보통 0.6VCC 이니까 5볼트일때 3볼트까지는 입력으로 받을 수 있습니다.
따라서 3.3V 레벨 칩에서 5V 칩으로 데이터를 보내는 것은 문제가 없는것으로 보입니다.
그런데 반대일때가 님이 걱정하시는 것처럼 문제가 됩니다.
만약 판매용.. 대량생산용이라면 다시 수정을 하는게 바람직 합니다.
그런데 이때 실용적으로 본다면 만약 5v레벨로 출력을 3.3v 칩에 한 일주일 정도 보내고.. 열풍기로 좀 열도
가해 주면서 해도 멀쩡 하다면 크게 문제가 없을듯 합니다. 그래도 불안하다면 5V 레벨을 4.5V로 줄여서
사용해 보심도 괜찮습니다. (이때는 파워의 출력단 리플을 데이터 시트로 확인해야 합니다. 리플이 0.1이라면 4.6V 까지만 내려서...) ADC 만 안하신다면 그나마 좀 간단하게 해볼 수 있을듯 하네요.
보통 이럴때 보드에 따라 틀리지만 직렬 저항을 넣어서 20mA 출력을 이용해서 드랍을 시켜서 하는 방법이
정석은 아니지만 자주 쓰이기도 하는 방법이기도 합니다. (쓰진 마세요^^)
실용상 에너지는 W 개념이니까 칩을 하나 쓰기엔 뭐하고 보호는 해 주고 싶고 할때 가끔 사용하는 방법입니다.
이때는 저 같은 경우는 pcb 상에서 다 가능하도록 뜬 다음 간단하게 저항 하나 넣고 출하 하기도 합니다.
국내용일때만.... (소량일때)
문제 생기면 다시 바꾸어 주면 되니깐요. 보통 생기는 것을 못봤습니다. ^^
팁으로 하나 더 말씀 드리면 보통 3.3V 칩에 5V의 출력을 넣으면 전압이 가끔 상승하는 칩들이 있습니다.
내부 구조를 보면 당연하겠지만 어쨌든 칩마다 차이는 있으니까요.
한번 5V 출력을 넣어서 3.3V 레벨이 변하는지 안변하는지 보심이 좋을듯 합니다.
3.4V 까지는 괜찮지만 4V 까지 되는 넘들도 있고....
이유는 5V와 3.3V가 서로 충돌나면 그의 반값 정도 뜰 경우도 있습니다.
이때는 좀...... 문제가 애매해 집니다. 조치 방법이 좀 -_-;; 그렇다고 그렇게 죽진 않는데요.
데이터 시트에 최대 허용 표기값이 있는데 이넘을 넘는다고 죽는다는 것이 아니라 보장 안하겠다는 것입니다.
데이터 시트의 값들은 서로 상호작용으로 되어 있기 때문에 한쪽만 넘긴다고 해서 반드시 죽진 않습니다.
한번 이번건은 이렇게 조치 하시고 다음번엔 레벨 시프터를 쓰시던가 혹은 걍 232c 칩을 사용해서 해보심도 좋을듯 하네요. 수고요.
저도 데이터쉬트 지겨워요....
5v 와 3.3v사이의 UART통신을 할때 저희는 보통 포토커플러를 사용합니다.
산업현장에서 사용하는 제어기기에는 노이즈에 대한 대책 및 여러가지 이유로
걍 광케이블로 UART통신을 하는데요, RX / TX 각각에 따른 부품이 개당 만원이 넘는다는 단점이...;;;