STM32 회로 리뷰 방법 - 리셋

STM32는 외부에서 RESET을 할 수 있도록 NRST라는 핀을 제공합니다. 이번에는 NRST의 특성에 대해 알아보도록 하겠습니다.

기본적으로 STM32에 RESET을 걸어주기 위해서 외부의 특별한 회로가 필요하지 않습니다. 아래 블럭도 처럼 내부에 Pull-up (Rpu) 이 존재하기 때문입니다.

STM32G4 Datasheet 발췌

외부에는 노이즈 제거목적의 MCU에 가깝게 배치되는 캐패시터와 리셋을 발생시킬 오픈드레인의 스위치 정도면 됩니다. 그렇다면 리셋을 걸리게할 수 있는 Low Level의 특성은 어떻게 될까요? 데이터 시트에 아래와 같이 나와있습니다.

0.3xVDD Logic low

0.3xVDD 를 Logic low, 그리고 0.7xVDD를 Logic high 중간이 레벨은 어떻게 인식될지 알 수 없으니 중간 레벨이 되지 않도록 회로가 꾸며져야 합니다. 그리고 Low 레벨이 인식되기 위해서는 최소 350ns 이상 끌어줘야 한다는 것도 유념하여야 하겠습니다. 70ns 이하의 펄스는 확실히 필터링 되나 70ns ~ 350ns의 펄스는 리셋일 걸릴 수도 안걸릴 수도 있다는 점 유의하여야 하겠습니다.

NRST는 내부의 리셋 신호를 외부로 출력할 수도 있습니다. 디폴트 NRST 기능으로 내부 시스템 리셋이 발생하며 외부로 최소 20us 의 펄스를 발생 시킵니다. 외부에 다른 IC들을 RESET 시킬 경우 유용하게 쓰일 수 있습니다. 마지막으로 Option byte 사용으로 NRST 핀을 GPIO로 사용할 수 있는데 이럴경우 처음의 RESET 이후 리셋 용도로는 사용 할 수 없습니다.

이상입니다!