답변:
좋은 질문; 그들은 그 정보를 매뉴얼에 넣을 것이라고 생각합니다 ... 또는 다음과 같은 최소한의 희미 함 ...
파고 들었을 때 STM32F10x 기술 교육 V0.3 에서 이것을 발견했습니다.
이벤트 출력 신호 생성
SEV 명령으로 펄스 생성 : 저전력 모드에서 다른 입력 신호를 통해 다른 MCU를 깨우기
추가 정보 / 확인을 위해 SEV 명령 을 찾았습니다 .
SEV는 다중 프로세서 시스템 내의 모든 프로세서에 이벤트가 발생하도록하는 힌트 명령입니다. 또한 로컬 이벤트 레지스터를 1로 설정합니다 (전원 관리 참조).
EVENTOUT 기능은 다중 프로세서 시스템의 전원 관리 기능인 것 같습니다. 출력 펄스의 모양에 따라 다른 방식으로 사용될 수 있다고 확신하지만 대부분의 유스 케이스는 각각의 EVENTIN 신호를 통해 다른 프로세서를 깨우는 것입니다.
익명으로 편집 (나중에 정확성과 구성을 위해 다시 편집) *
SEV
어셈블리 언어 명령어입니다. 예를 들어 __asm__ volatile ("sev");
정확한 형식은 컴파일러마다 다르지만 일부 C 컴파일러에서는 인라인 어셈블리를 통해이를 사용할 수 있습니다 .
실제 사용시, 명령어는 AFIO_EVCR
레지스터 를 통해 구성 및 활성화 되고 대체 기능 출력 모드에 있는 핀 중 하나의 클럭주기 (예 : 72MHz 코어 클럭의 14ns) 동안 펄스를 출력합니다.
일련의 SEV
명령 및 nop를 사용하여 클록 속도의 일부로 펄스 트레인을 출력 할 수 있다고 제안했다 . 아마도 두 개의 순차적 SEV
명령어가 더 긴 펄스를 생성 할 수 있지만 글리치 방지에 대한 보장은 없습니다.
* 검토 자의 의견. 익명의 등록되지 않은 사용자가 OP에 수정 사항으로 제출 한 답변입니다. 이런 종류의 편집은 지침에 위배됩니다 (너무 급진적 임). 이 편집에 대한 예외는 답을 잃지 않기 위해 화를 낼 수 있습니다. 새긴 금.