แก้ไข : คำถามนี้ผิด stm325105 มีขาปลุกเพียงอันเดียว แต่ชิ้นส่วน ST อื่น ๆ นั้นมีมากกว่าหนึ่ง Pinup Wakeup ดังนั้นคำตอบที่ให้นั้นจะถูกต้องสำหรับสิ่งเหล่านั้น
ฉันมี stm32f105 ที่มีสองปุ่มชั่วขณะเชื่อมต่อกับอินพุตปลุก ตัวประมวลผลถูกวางใน STANDBY MODE เมื่อกดปุ่มใดปุ่มหนึ่งหรือตัวจับเวลา RTC เริ่มทำงาน cpu จะกลับมาทำงานอีกครั้ง
ปัญหาคือฉันต้องการให้ซีพียูทำสิ่งต่าง ๆ โดยขึ้นอยู่กับการกระตุ้นการทำงานของอินพุต ตาม5.3.5จากคู่มืออ้างอิง ST stm32f105xx จะไม่มีการบันทึกการลงทะเบียนยกเว้นการลงทะเบียนสถานะที่ระบุว่าเราได้ถูกปลุก (แต่ไม่ใช่โดยใคร) และการลงทะเบียนสำรอง 42 รายการ
โหมดสแตนด์บายอนุญาตให้ใช้พลังงานต่ำที่สุด มันขึ้นอยู่กับโหมด Cortex ® -M3 deepsleep เมื่อปิดการทำงานของตัวควบคุมแรงดันไฟฟ้า ดังนั้นโดเมน 1.8 V จึงถูกปิดการทำงาน PLL, HSI oscillator และ HSE oscillator ก็ถูกปิดเช่นกัน SRAM และเนื้อหาการลงทะเบียนสูญหายไปยกเว้นการลงทะเบียนในโดเมนสำรองและวงจรสแตนด์บาย
หลังจากตื่นขึ้นจากโหมดสแตนด์บายการดำเนินการของโปรแกรมจะเริ่มต้นใหม่ในลักษณะเดียวกับหลังการรีเซ็ต สถานะสถานะ SBF ในการควบคุมพลังงาน / การลงทะเบียนสถานะ (PWR_CSR) ระบุว่า MCU อยู่ในโหมดสแตนด์บาย
โพสต์ฟอรั่ม ST นี้, วิธีการตรวจสอบที่มาของ Wakeup จาก Standby? แสดงให้เห็นว่าฉันไม่สามารถตรวจพบว่ามีการเรียกใช้การปลุกในซอฟต์แวร์ใด ฉันไม่พบโพสต์อื่นที่นั่นซึ่งให้ความกระจ่างมากขึ้น
ฉันจะใช้ซอฟต์แวร์หรือฮาร์ดแวร์ในการพิจารณาหลังจากตื่นขึ้นมาได้ซึ่งทริกเกอร์อินพุทใดถูกเรียก?