마이크로 컨트롤러로 제어 가능한 소프트 전원 스위치를 구현하는 방법은 무엇입니까?


16

마이크로 컨트롤러가 GPIO 핀을 토글하고 전체 시스템 (마이크로 컨트롤러 자체 포함)을 종료 할 수 있도록 회로를 설계하고 싶습니다. 사용자가 순간 버튼을 누르면 전원이 다시 켜집니다.

이게 가능해?

답변:


11

대체 텍스트

이 예는 Maxim MAX1835 승압 레귤레이터를 사용하지만 셧다운 핀이있는 다른 제품에도 적용될 수 있습니다.

회로는 일반적으로 전원이 꺼져 있습니다. 사용자가 푸시 버튼을 누르면 배터리가 -SHDN 핀에 공급되어 레귤레이터를 활성화하고 3.3V를 마이크로 컨트롤러로 켭니다. 그런 다음 마이크로 컨트롤러는 사용자가 푸시 버튼을 놓은 후 전원을 켜서 POWER ON 리드에 로직 1을 설정합니다. 마이크로 컨트롤러가 자체 종료를 원하면 POWER ON 리드를 0으로 설정합니다.


2
제 생각에 매우 중요한 것은 그 스위치를 제거하는 것입니다.
Kortuk

2
@Kortuk, 좋은 지적. 나는 핀을 높이 올리는 것이 마이크로가 한 첫 번째 일이라고 가정했을 때 마이크로가 첫 번째 바운스 전에 스위치를 무시할 수있을 정도로 빠르게 켜질 것이라고 가정했다. 그렇지 않은 경우 -SHDN 리드에 커패시터를 추가하여 켜는 시간 상수를 생성 할 수 있습니다 (이 경우에도 약간의 지연이 발생할 수 있음). 노이즈 억제를 위해 10nF를 남겨 ​​두어야 할 수도 있습니다 (데이터 시트 샘플 회로도에 포함되어 있음). 또는 스위치에만 RC 회로를 추가 할 수 있습니다.
tcrosley

전에 스위치에 미친 바운스가 나타났습니다.
Kortuk

스위치 바운스의 큰 문제는 전원을 끄는 동안의 프로세서 동작입니다. 특히, VDD가 올바른 작동이 보장되는 지점보다 높을 경우에만 프로세서가 전원을 켤 수 있는지 확인하는 것이 좋습니다. VDD가 유효한 작동 전압 아래로 떨어질 때 프로세서가 임의 코드를 실행하는 결과로 때때로 실패하는 일부 자동 전원 차단 회로를 조정해야했습니다. 임의 코드는 "전원 켜기"출력을 높게 설정하여 임의의 주소에서 코드를 실행하여 장치 전원을 다시 켤 수 있습니다.
supercat

1

이를 수행하는 한 가지 방법은 마이크로 컨트롤러에서 완전 절전 모드로 들어가는 것입니다.

많은 마이크로 컨트롤러는 IO 핀의 에지와 같은 외부 인터럽트에 의해 깨어나도록 지원합니다.


그런 다음 레귤레이터 공급 전력의 대기 전류를 마이크로로 가져옵니다.
cksa361

예. 당신은 할 것입니다.
Toby Jaffey

@ cksa361, 일부 마이크로는 나노 또는 마이크로 암페어입니다. MSP430을 사용하고 약 3-5 마이크로 암페어를 유지합니다.
Kortuk

0

예, 물론 가능합니다. 그러나이를 달성하는 방법은 어떤 종류의 부하를 켜고 끄는 지에 따라 다릅니다.

마이크로 컨트롤러의 출력 PIN (트랜지스터 및 보호 다이오드를 통해)에 연결된 릴레이와 입력으로 구성된 핀에 연결된 푸시 버튼 스위치를 사용하는 것만 큼 간단합니다.

다음은 간단한 회로도 예입니다. 마이크로 컨트롤러로 제어되는 릴레이 회로도

순간 푸시 버튼 스위치를 사용할 때는 디 바운스에 주의 해야합니다. 릴레이를 전환하기 전에 일정 시간 (예 : 1ms) 동안 푸시 버튼의 상태를 확인하려면 마이크로 컨트롤러 코드에서 지연을 구현해야합니다. 다시. 그렇지 않은 경우 마이크로 컨트롤러가 짧은 시간 내에 여러 신호를 수신하고 릴레이를 여러 번 전환 할 수 있으며 버튼이 간헐적으로 작동하는 것을 알 수 있습니다.

업데이트 방금 마이크로 컨트롤러의 전원을 끄는 것에 대한 편집을 보았습니다. 실제로하려는 일에 대해 더 많은 정보를 줄 수 있습니까? 전체 시스템을 이해하지 않고 질문에 대답하기는 어렵습니다.

마이크로 컨트롤러도 종료하려면 마이크로 컨트롤러에 전원을 다시 공급할 방법이 필요합니다. 아마도 릴레이를 사용하여 마이크로 컨트롤러를 포함한 모든 것에 전원을 공급할 수 있습니다. 그런 다음 푸시 버튼을 릴레이 스위치에 연결하여 효과적으로 단락시켜 전원을 켜고 릴레이 자체를 열어 둘 수있는 충분한 시간을줍니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.