ฉันออกแบบบอร์ด STM32 ง่าย ๆ ด้านล่างนี้เป็นแผนผังและรูปภาพโครงร่าง PCB:
โครงร่าง PCB พร้อม VDD ไฮไลต์:
โครงร่าง PCB พร้อม GND ที่ไฮไลต์:
เฉพาะส่วนของการออกแบบนี้ที่เกี่ยวข้องกับคำถามของฉันเท่านั้นที่แสดงในภาพด้านบน
ปัญหาของฉันคือฉันพยายามใช้ ST-Link ในตัวของบอร์ด STM32 Discovery เพื่อตั้งโปรแกรมบอร์ดที่กำหนดเองนี้ แต่ฉันยังไม่ประสบความสำเร็จ แอปพลิเคชัน ST-Link Utility บนพีซีสามารถจดจำโปรแกรมเมอร์ แต่ไม่สามารถตรวจจับ MCU เป้าหมายได้ ข้อความแสดงข้อผิดพลาดที่ฉันได้รับคือ "เป้าหมายไม่ได้เชื่อมต่อ" และ "ข้อผิดพลาดการสื่อสาร USB ST-Link"
นี่คือข้อเท็จจริงบางอย่างที่เกี่ยวข้องกับปัญหาของฉัน:
- บอร์ด STM32 Discovery ทำงานได้ดี: ฉันสามารถใช้ ST-Link ในตัวเพื่อตั้งโปรแกรมบนบอร์ด STM32 MCU ไม่เป็นไร
- STM32 MCU ได้รับการบัดกรีด้วยการวางแนวที่ถูกต้องบนกระดานที่กำหนดเอง ฉันตรวจสอบสิ่งนี้สองครั้ง
- ฉันได้ตรวจสอบร่องรอย VDD และ SWD เชื่อมต่อได้ดี (ไม่มีปัญหาการบัดกรี) Pin Boot0 อยู่ที่ 0V Pin NRST อยู่ที่ 3.3V
- สายเคเบิล SWD สั้นความยาวเพียง 7-8 ซม.
- STM32 ในบอร์ดที่กำหนดเองของฉันเป็นประเภทเดียวกันกับบอร์ด Discovery
ฉันได้ปฏิบัติตามคำแนะนำในคู่มือของบอร์ด STM32 Discovery Board เกี่ยวกับวิธีการใช้ Discovery Board เพื่อตั้งโปรแกรม STM32 MCU ภายนอก เพื่อให้เจาะจงยิ่งขึ้นฉันได้ถอดจัมเปอร์ CN3 2 ตัวออกและจากนั้นฉันก็เชื่อมต่อบอร์ดดังตารางนี้
ฉันยังลบ Solder bridge SB11 บน Discovery Board (เพื่อให้ pin NRST สามารถทำงานได้อย่างถูกต้อง)
- ฉันลองทั้งแอพ ST-Link Utility และ Keil แล้ว ข้อความแสดงข้อผิดพลาดที่ฉันได้รับเหมือนกัน
- ตอนแรกฉันไม่ได้เชื่อมต่อขา 6 บนตารางด้านบน (SWO) เพราะความรู้ของฉันไม่จำเป็น อย่างไรก็ตามหลังจากนั้นฉันก็เชื่อมต่อด้วยเช่นกัน แต่สิ่งต่าง ๆ ยังไม่ได้ผล
- ฉันยังเพิ่มฝา 100nF จาก pin NRST ไปยัง GND และจากนั้นตัวต้านทานแบบดึงขึ้น 100k จาก pin นี้เป็น VDD ปัญหายังคงอยู่
- ฉันพยายามใช้โหมด "เชื่อมต่อภายใต้การรีเซ็ต" ของโปรแกรม ST-Link Utility ไม่มีโชคเช่นกัน
ฉันสงสัยว่าอาจมีบางอย่างผิดปกติกับการออกแบบ แต่ฉันไม่แน่ใจ โปรดช่วยฉันแก้ปัญหาด้วย
ขอบคุณมาก :)