โลโก้ราสเบอร์รี่

Raspberry Pi SC1631 ไมโครคอนโทรลเลอร์ Raspberry

ภาพผลิตภัณฑ์ไมโครคอนโทรลเลอร์ Raspberry-Pi-SC1631-Raspberry

ข้อมูลจำเพาะผลิตภัณฑ์

  • รุ่น : RP2350
  • แพคเกจ: QFN-60
  • ที่เก็บข้อมูลแฟลชภายใน: ไม่มี
  • เล่มที่tage Regulator: ตัวควบคุมการสลับบนชิป
  • พินตัวควบคุม: 5 (อินพุต 3.3V, เอาท์พุต 1.1V, VREG_AVDD, VREG_LX, VREG_PGND)

คำแนะนำการใช้ผลิตภัณฑ์

  • บทที่ 1: บทนำ
  • ซีรีส์ RP2350 นำเสนอตัวเลือกแพ็คเกจที่แตกต่างกันเมื่อเทียบกับซีรีส์ RP2040 โดย RP2350A และ RP2354A มาในแพ็คเกจ QFN-60 ที่มีและไม่มีหน่วยความจำแฟลชภายในตามลำดับ ในขณะที่ RP2354B และ RP2350B มาในแพ็คเกจ QFN-80 ที่มีและไม่มีหน่วยความจำแฟลช
  • บทที่ 2: พลัง
    ซีรีส์ RP2350 นำเสนอการสลับบนชิปใหม่tagตัวควบคุมแรงดันไฟฟ้าแบบ 2040 พิน ตัวควบคุมแรงดันไฟฟ้านี้ต้องใช้ส่วนประกอบภายนอกในการทำงาน แต่มีประสิทธิภาพการใช้พลังงานที่สูงกว่าเมื่อรับกระแสโหลดที่สูงกว่าเมื่อเปรียบเทียบกับตัวควบคุมเชิงเส้นในซีรีส์ RPXNUMX โปรดใส่ใจกับความไวต่อสัญญาณรบกวนในพิน VREG_AVDD ที่จ่ายไฟให้กับวงจรแอนะล็อก

คำถามที่พบบ่อย (FAQ)

  • ถาม: ความแตกต่างหลักระหว่าง RP2350A และ RP2350B คืออะไร?
    A: ความแตกต่างหลักอยู่ที่การมีพื้นที่จัดเก็บแฟลชภายใน โดย RP2350A ไม่มีพื้นที่จัดเก็บแฟลชภายใน ในขณะที่ RP2350B มี
  • ถาม: โวลุ่มมีกี่พินtagตัวควบคุม e ในซีรีย์ RP2350 มีอะไรบ้าง?
    A: ฉบับtagตัวควบคุมแรงดันไฟฟ้าในซีรีย์ RP2350 มี XNUMX พิน

การออกแบบฮาร์ดแวร์ด้วย RP2350 การใช้ไมโครคอนโทรลเลอร์ RP2350 เพื่อสร้างบอร์ดและผลิตภัณฑ์

โคโลฟอน

  • © 2023-2024 บริษัท ราสเบอร์รี่ พีไอ จำกัด
  • เอกสารนี้ได้รับอนุญาตภายใต้ Creative Commons Attribution-NoDerivatives 4.0 International (CC BY-ND) วันที่สร้าง: 2024-08-08 เวอร์ชันที่สร้าง: c0acc5b-clean
  • ประกาศปฏิเสธความรับผิดชอบทางกฎหมาย
  • ข้อมูลทางเทคนิคและความน่าเชื่อถือสำหรับผลิตภัณฑ์ RASPBERRY PI (รวมถึงแผ่นข้อมูล) ตามที่แก้ไขเป็นครั้งคราว (“ทรัพยากร”) จัดทำโดย RASPBERRY PI LTD (“RPL”) “ตามที่เป็น” และการรับประกันโดยชัดแจ้งหรือโดยนัยใดๆ รวมถึงแต่ไม่จำกัดเฉพาะการรับประกันโดยนัยของความสามารถในการขายและความเหมาะสมสำหรับจุดประสงค์เฉพาะนั้นจะถูกปฏิเสธ ในขอบเขตสูงสุดตามที่กฎหมายที่ใช้บังคับอนุญาต ในกรณีใดๆ RPL จะไม่รับผิดชอบต่อความเสียหายใดๆ อันเกิดขึ้นโดยตรงหรือโดยอ้อม ไม่ว่าจะเป็นโดยบังเอิญ พิเศษ เป็นตัวอย่าง หรือเป็นผลสืบเนื่อง (รวมถึงแต่ไม่จำกัดเพียง การจัดหาสินค้าหรือบริการทดแทน การสูญเสียการใช้งาน ข้อมูล หรือผลกำไร หรือการหยุดชะงักทางธุรกิจ) ไม่ว่าจะเกิดขึ้นอย่างไรก็ตาม และจากทฤษฎีความรับผิดใดๆ ไม่ว่าจะอยู่ในสัญญา ความรับผิดที่ร้ายแรง หรือการละเมิด (รวมทั้งการประมาทเลินเล่อหรืออื่นใด) ที่เกิดขึ้นจากการใช้ทรัพยากรไม่ว่าในรูปแบบใดๆ แม้ว่าจะได้รับการแจ้งเตือนเกี่ยวกับความเป็นไปได้ของความเสียหายดังกล่าวก็ตาม
  • RPL ขอสงวนสิทธิ์ในการปรับปรุง พัฒนา แก้ไข หรือปรับเปลี่ยนใดๆ ต่อทรัพยากรหรือผลิตภัณฑ์ใดๆ ที่อธิบายไว้ในทรัพยากรดังกล่าวได้ตลอดเวลา และโดยไม่ต้องแจ้งให้ทราบล่วงหน้า
    ทรัพยากรมีไว้สำหรับผู้ใช้ที่มีทักษะและมีความรู้ด้านการออกแบบในระดับที่เหมาะสม ผู้ใช้จะต้องรับผิดชอบแต่เพียงผู้เดียวในการเลือกและใช้งานทรัพยากรและการนำผลิตภัณฑ์ที่อธิบายไว้ในทรัพยากรไปใช้ ผู้ใช้ตกลงที่จะชดเชยและถือว่า RPL ไม่มีส่วนรับผิดต่อภาระผูกพัน ค่าใช้จ่าย ความเสียหาย หรือการสูญเสียอื่นๆ ที่เกิดขึ้นจากการใช้ทรัพยากร
  • RPL ให้สิทธิ์ผู้ใช้ในการใช้ RESOURCES ร่วมกับผลิตภัณฑ์ Raspberry Pi เท่านั้น ห้ามใช้ RESOURCES ในลักษณะอื่นใด และไม่อนุญาตให้ใช้สิทธิ์ในทรัพย์สินทางปัญญาของ RPL หรือบุคคลที่สามอื่นใด
  • กิจกรรมที่มีความเสี่ยงสูง ผลิตภัณฑ์ Raspberry Pi ไม่ได้รับการออกแบบ ผลิต หรือตั้งใจให้ใช้งานในสภาพแวดล้อมอันตรายที่ต้องมีประสิทธิภาพการทำงานที่ปลอดภัยจากความล้มเหลว เช่น ในการดำเนินงานของโรงงานนิวเคลียร์ ระบบนำทางหรือการสื่อสารของเครื่องบิน การควบคุมการจราจรทางอากาศ ระบบอาวุธ หรือแอปพลิเคชันที่สำคัญต่อความปลอดภัย (รวมถึงระบบช่วยชีวิตและอุปกรณ์ทางการแพทย์อื่นๆ) ซึ่งความล้มเหลวของผลิตภัณฑ์อาจนำไปสู่การเสียชีวิต การบาดเจ็บส่วนบุคคล หรือความเสียหายทางกายภาพหรือสิ่งแวดล้อมที่รุนแรง ("กิจกรรมที่มีความเสี่ยงสูง") RPL ปฏิเสธการรับประกันโดยชัดแจ้งหรือโดยนัยใดๆ ว่าเหมาะสมสำหรับกิจกรรมที่มีความเสี่ยงสูง และไม่ยอมรับความรับผิดใดๆ ต่อการใช้หรือการรวมผลิตภัณฑ์ Raspberry Pi ไว้ในกิจกรรมที่มีความเสี่ยงสูง
  • ผลิตภัณฑ์ Raspberry Pi จัดทำขึ้นภายใต้เงื่อนไขมาตรฐานของ RPL การจัดเตรียมทรัพยากรของ RPL จะไม่ขยายหรือแก้ไขเงื่อนไขมาตรฐานของ RPL ซึ่งรวมถึงแต่ไม่จำกัดเฉพาะการปฏิเสธความรับผิดชอบและการรับประกันที่แสดงไว้ในเงื่อนไขมาตรฐานดังกล่าว

บทที่ 1. บทนำ

รูปที่ 1 การเรนเดอร์ 3D ของ KiCad ของ RP2350A ตัวอย่างการออกแบบขั้นต่ำampleRaspberry-Pi-SC1631-ไมโครคอนโทรลเลอร์ราสเบอร์รี่- (1)

เมื่อเราเปิดตัว Raspberry Pi RP2040 เป็นครั้งแรก เรายังเปิดตัวรุ่นดีไซน์ 'Minimal' อีกด้วยampคู่มือการออกแบบฮาร์ดแวร์พร้อม RP2040 ซึ่งหวังว่าจะอธิบายได้ว่า RP2040 สามารถใช้งานในแผงวงจรธรรมดาได้อย่างไร และเหตุใดจึงต้องเลือกส่วนประกอบต่างๆ เมื่อซีรีส์ RP235x มาถึง ก็ถึงเวลาที่จะทบทวนการออกแบบ RP2040 Minimal ดั้งเดิม และอัปเดตเพื่อรองรับคุณสมบัติใหม่ๆ และยังรวมถึงแพ็คเกจแต่ละแบบด้วย ได้แก่ RP2350A พร้อมแพ็คเกจ QFN-60 และ RP2350B ซึ่งเป็น QFN-80 อีกครั้ง การออกแบบเหล่านี้อยู่ในรูปแบบ Kicad (7.0) และพร้อมให้ดาวน์โหลดได้ (https://datasheets.raspberrypi.com/rp2350/Minimal-KiCAD.zip).

 บอร์ดมินิมอล
บอร์ด Minimal ดั้งเดิมเป็นความพยายามในการจัดทำการออกแบบอ้างอิงที่เรียบง่ายโดยใช้ส่วนประกอบภายนอกที่จำเป็นขั้นต่ำในการเรียกใช้ RP2040 และยังคงเปิดเผยและเข้าถึง IO ทั้งหมดได้ ซึ่งโดยพื้นฐานแล้วประกอบด้วยแหล่งจ่ายไฟ (ตัวควบคุมเชิงเส้น 5V ถึง 3.3V) ออสซิลเลเตอร์คริสตัล หน่วยความจำแฟลช และการเชื่อมต่อ IO (ซ็อกเก็ต micro USB และขั้วต่อ GPIO) บอร์ด Minimal ซีรีส์ RP235x ใหม่นั้นส่วนใหญ่ยังคงเหมือนเดิม แต่มีการเปลี่ยนแปลงบางอย่างที่จำเป็นเนื่องมาจากฮาร์ดแวร์ใหม่ นอกจากนี้ และแม้ว่าจะขัดกับธรรมชาติขั้นต่ำของการออกแบบเล็กน้อย ฉันได้เพิ่มปุ่มสองสามปุ่มสำหรับ bootsel and run พร้อมกับขั้วต่อ SWD แยกต่างหาก ซึ่งควรจะทำให้ประสบการณ์การดีบักครั้งนี้น่าหงุดหงิดน้อยลงอย่างมาก การออกแบบไม่จำเป็นต้องมีปุ่มเหล่านี้โดยเฉพาะ สัญญาณยังคงพร้อมใช้งานบนขั้วต่อ และสามารถละเว้นได้หากคุณคำนึงถึงต้นทุนหรือพื้นที่เป็นพิเศษ หรือมีแนวโน้มซาดิสม์

 ซีรี่ส์ RP2040 เทียบกับ RP235x
การเปลี่ยนแปลงที่เห็นได้ชัดเจนที่สุดอยู่ที่แพ็คเกจ ในขณะที่ RP2040 เป็น QFN-7 ขนาด 7x56 มม. ซีรีส์ RP235x ในปัจจุบันมีสมาชิกที่แตกต่างกันสี่ตัว มีอุปกรณ์สองตัวที่ใช้แพ็คเกจ QFN-60 เดียวกัน ได้แก่ RP2350A ซึ่งไม่มีหน่วยความจำแฟลชภายใน และ RP2354A ซึ่งมี ในทำนองเดียวกัน QFN-80 ยังมีอยู่สองแบบ ได้แก่ RP2354B พร้อมแฟลช และ RP2350B ไม่มี อุปกรณ์ QFN-60 และ RP2040 ดั้งเดิมมีแพ็คเกจที่เหมือนกันtage.

ชิป QFN-30 แต่ละชิปมี GPIO จำนวน 7 ตัว โดย 7 ตัวเชื่อมต่อกับ ADC ด้วย และมีขนาด 2350x2040 มม. แม้จะเป็นเช่นนั้น RP80A ก็ไม่ใช่ตัวทดแทน RP48 เนื่องจากจำนวนพินบนชิปแต่ละตัวแตกต่างกัน ในทางตรงกันข้าม ชิป QFN-60 ในปัจจุบันมี GPIO จำนวน 80 ตัว และตอนนี้ 2350 ตัวรองรับ ADC แล้ว ด้วยเหตุนี้ ตอนนี้เราจึงมีบอร์ด Minimal สองบอร์ด บอร์ดหนึ่งสำหรับอุปกรณ์ 2354 พิน และอีกบอร์ดหนึ่งสำหรับ 80 พิน บอร์ด Minimal เหล่านี้ได้รับการออกแบบมาโดยเฉพาะสำหรับชิ้นส่วนที่ไม่มีแฟลชภายใน (RPXNUMX) อย่างไรก็ตาม การออกแบบสามารถใช้กับอุปกรณ์แฟลชภายใน (RPXNUMX) ได้อย่างง่ายดาย เพียงแค่ละเว้นหน่วยความจำแฟลชบนบอร์ด หรือแม้แต่ใช้เป็นอุปกรณ์แฟลชรอง (จะอธิบายเพิ่มเติมในภายหลัง) บอร์ดทั้งสองบอร์ดมีความแตกต่างกันเพียงเล็กน้อย นอกเหนือจากข้อเท็จจริงที่ว่าเวอร์ชัน QFN-XNUMX มีแถวของส่วนหัวที่ยาวกว่าเพื่อรองรับ GPIO เพิ่มเติม และด้วยเหตุนี้ บอร์ดจึงใหญ่กว่า

นอกเหนือจากแพ็คเกจแล้ว ความแตกต่างที่ใหญ่ที่สุดระหว่างบอร์ดซีรีส์ RP235x และ RP2040 ก็คือแหล่งจ่ายไฟ ซีรีส์ RP235x มีพินไฟใหม่ และตัวควบคุมภายในที่แตกต่างกัน ตัวควบคุมเชิงเส้น 100mA ของ RP2040 ถูกแทนที่ด้วยตัวควบคุมแบบสวิตชิ่ง 200mA ดังนั้น จึงต้องใช้วงจรเฉพาะบางอย่าง และต้องใส่ใจกับเลย์เอาต์มากพอสมควร ขอแนะนำอย่างยิ่งให้คุณติดตามเลย์เอาต์และการเลือกส่วนประกอบของเราอย่างใกล้ชิด เราเคยผ่านความยุ่งยากในการต้องทำการออกแบบซ้ำหลายครั้งแล้ว ดังนั้น หวังว่าคุณจะไม่ต้องทำแบบนั้น

รูปที่ 2 การเรนเดอร์ 3D ของ KiCad ของ RP2350B ตัวอย่างการออกแบบขั้นต่ำample Raspberry-Pi-SC1631-ไมโครคอนโทรลเลอร์ราสเบอร์รี่- (2)

 การออกแบบ
ความตั้งใจของการออกแบบแบบมินิมอลคือamples คือการสร้างบอร์ดธรรมดาสองบอร์ดโดยใช้ซีรีส์ RP235x ซึ่งควรจะผลิตได้ง่ายและราคาถูกโดยไม่ต้องใช้เทคโนโลยี PCB ที่แปลกใหม่โดยไม่จำเป็น บอร์ด Minimal จึงมีการออกแบบ 2 ชั้นโดยใช้ส่วนประกอบที่ควรมีทั่วไปและติดตั้งทั้งหมดไว้ด้านบนของบอร์ด แม้ว่าจะดีที่จะใช้ส่วนประกอบขนาดใหญ่ที่สามารถบัดกรีด้วยมือได้ง่าย แต่ระยะห่างระหว่างชิป QFN ที่เล็ก (0.4 มม.) ทำให้ไม่สามารถหลีกเลี่ยงการใช้ส่วนประกอบแบบพาสซีฟ 0402 (1005 เมตริก) ได้หากจะใช้ GPIO ทั้งหมด แม้ว่าการบัดกรีส่วนประกอบ 0402 ด้วยมือจะไม่ยากเกินไปด้วยหัวแร้งที่ดี แต่การบัดกรี QFN โดยไม่มีอุปกรณ์เฉพาะนั้นแทบจะเป็นไปไม่ได้เลย

ในส่วนต่อๆ ไป ฉันจะพยายามอธิบายว่าวงจรเพิ่มเติมมีไว้เพื่ออะไร และหวังว่าเราจะมาเลือกได้อย่างไร เนื่องจากฉันจะพูดถึงการออกแบบแยกกันสองแบบ โดยแต่ละแบบมีขนาดแพ็คเกจต่างกัน ฉันจึงพยายามทำให้ทุกอย่างเรียบง่ายที่สุดเท่าที่จะทำได้ เท่าที่เป็นไปได้ การอ้างอิงส่วนประกอบทั้งหมดสำหรับบอร์ดทั้งสองนั้นเหมือนกัน ดังนั้น หากฉันอ้างถึง U1, R1 เป็นต้น ก็จะเกี่ยวข้องกับบอร์ดทั้งสองเท่าๆ กัน ข้อยกเว้นที่ชัดเจนคือ เมื่อส่วนประกอบอยู่บนบอร์ดเพียงบอร์ดเดียว (ในทุกกรณี จะอยู่บนบอร์ดรุ่น 80 พินที่ใหญ่กว่า) ส่วนประกอบที่เกี่ยวข้องจะอยู่บนบอร์ดรุ่น QFN-80 เท่านั้น ตัวอย่างเช่นampR13 ปรากฏเฉพาะบนบอร์ดนี้เท่านั้น

บทที่ 2. อำนาจ

แหล่งจ่ายไฟของซีรีส์ RP235x และ RP2040 มีความแตกต่างกันบ้างในครั้งนี้ ถึงแม้ว่าในการกำหนดค่าที่เรียบง่ายที่สุด ซีรีส์ RP3.3x ยังคงต้องใช้แหล่งจ่ายไฟสองแหล่งคือ 1.1V และ 235V ซีรีส์ RP2040x กินไฟมากกว่าในเวลาเดียวกัน เนื่องจากมีประสิทธิภาพที่สูงขึ้น และยังประหยัดไฟมากขึ้น (เมื่ออยู่ในสถานะพลังงานต่ำ) เมื่อเทียบกับรุ่นก่อนหน้า ดังนั้นตัวควบคุมเชิงเส้นบน RP200 จึงได้รับการอัปเกรดด้วยตัวควบคุมแบบสวิตชิ่ง ซึ่งช่วยให้เรามีประสิทธิภาพการใช้พลังงานที่สูงขึ้นที่กระแสไฟที่สูงขึ้น (สูงสุดถึง 100mA เมื่อเทียบกับ XNUMXmA ก่อนหน้านี้)

 ชิปใหม่tagอี เรกูเลเตอร์

รูปที่ 3 ส่วนแผนผังแสดงวงจรควบคุมภายในRaspberry-Pi-SC1631-ไมโครคอนโทรลเลอร์ราสเบอร์รี่- (1)

ตัวควบคุมเชิงเส้นของ RP2040 มีพิน 3.3 พิน อินพุต 1.1V และเอาต์พุต 235V เพื่อจ่ายไฟให้ DVDD บนชิป ในครั้งนี้ ตัวควบคุมของซีรีส์ RPXNUMXx มีพิน XNUMX พิน และต้องมีส่วนประกอบภายนอกบางส่วนเพื่อให้ทำงานได้ แม้ว่าจะดูเหมือนเป็นการก้าวถอยหลังเล็กน้อยในแง่ของการใช้งาน แต่ตัวควบคุมแบบสวิตชิ่งมีข้อได้เปรียบtagเพื่อให้มีประสิทธิภาพการใช้พลังงานที่ดีขึ้นเมื่อรับกระแสโหลดที่สูงขึ้น

ตามชื่อที่บ่งบอก ตัวควบคุมจะเปิดและปิดทรานซิสเตอร์ภายในที่เชื่อมต่อแรงดันไฟฟ้าอินพุต 3.3V อย่างรวดเร็วtage (VREG_VIN) ไปที่พิน VREG_LX และด้วยความช่วยเหลือของตัวเหนี่ยวนำ (L1) และตัวเก็บประจุเอาต์พุต (C7) จึงสามารถผลิตกระแสไฟฟ้าขาออก DC ได้tage ซึ่งถูกลดระดับลงจากอินพุต พิน VREG_FB จะตรวจสอบปริมาณเอาต์พุตtage และปรับอัตราส่วนการเปิด/ปิดของรอบการสลับเพื่อให้แน่ใจว่าปริมาณที่ต้องการtage ยังคงอยู่ เนื่องจากกระแสขนาดใหญ่ถูกสลับจาก VREG_VIN เป็น VREG_LX จึงต้องใช้ตัวเก็บประจุขนาดใหญ่ (C6) ใกล้กับอินพุต เพื่อไม่ให้แหล่งจ่ายไฟ 3.3V เสียหายมากเกินไป เมื่อพูดถึงกระแสสวิตชิ่งขนาดใหญ่เหล่านี้ ตัวควบคุมแรงดันไฟฟ้ายังมาพร้อมกับการเชื่อมต่อกลับกราวด์ของตัวเองที่เรียกว่า VREG_PGND เช่นเดียวกับ VREG_VIN และ VREG_LX การจัดวางการเชื่อมต่อนี้มีความสำคัญ และแม้ว่า VREG_PGND จะต้องเชื่อมต่อกับ GND หลัก แต่จะต้องทำในลักษณะที่กระแสสวิตชิ่งขนาดใหญ่ทั้งหมดจะกลับไปยังพิน PGND โดยตรง โดยไม่รบกวน GND ส่วนที่เหลือมากเกินไป

พินสุดท้ายคือ VREG_AVDD ซึ่งจ่ายวงจรแอนะล็อกภายในตัวควบคุม ซึ่งมีความไวต่อสัญญาณรบกวนมาก

รูปที่ 4 ส่วนแผนผังแสดงเค้าโครง PCB ของตัวควบคุม Raspberry-Pi-SC1631-ไมโครคอนโทรลเลอร์ราสเบอร์รี่- (3)

  • เค้าโครงของตัวควบคุมบนบอร์ดขั้นต่ำนั้นสะท้อนให้เห็นอย่างใกล้ชิดของ Raspberry Pi Pico 2 การออกแบบวงจรนี้ต้องใช้ความพยายามอย่างมาก โดยต้องทำซ้ำ PCB หลายครั้งเพื่อให้ได้วงจรที่ดีที่สุดเท่าที่จะเป็นไปได้ แม้ว่าคุณจะวางส่วนประกอบเหล่านี้ในรูปแบบต่างๆ มากมาย แต่ตัวควบคุมก็ยัง "ทำงาน" ได้ (เช่น สร้างเอาต์พุตโวลท์)tage ในระดับที่เหมาะสมโดยประมาณ เพียงพอที่จะทำให้มันรันโค้ดได้ เราพบว่าตัวควบคุมของเราจำเป็นต้องได้รับการปฏิบัติอย่างถูกต้องเพื่อให้มันทำงานได้อย่างมีความสุข และที่ว่าทำงานได้อย่างมีความสุข ฉันหมายถึงการผลิตเอาต์พุตปริมาตรที่ถูกต้องtagภายใต้สภาวะกระแสโหลดที่หลากหลาย
  • ในขณะที่ทำการทดลองเกี่ยวกับเรื่องนี้ เรารู้สึกผิดหวังเล็กน้อยเมื่อได้ทราบว่าเราไม่สามารถละเลยโลกฟิสิกส์ที่แสนจะยุ่งยากได้เสมอไป ในฐานะวิศวกร เราพยายามทำสิ่งนี้โดยส่วนใหญ่ นั่นคือ การลดความซับซ้อนของส่วนประกอบ ละเลยคุณสมบัติทางกายภาพที่ (มักจะ) ไม่มีนัยสำคัญ และมุ่งเน้นไปที่คุณสมบัติที่เราสนใจแทน ตัวอย่างเช่นampตัวต้านทานแบบง่ายไม่ได้มีแค่ความต้านทานเท่านั้น แต่ยังมีตัวเหนี่ยวนำด้วย ในกรณีของเรา เราค้นพบอีกครั้งว่าตัวเหนี่ยวนำมีสนามแม่เหล็กเกี่ยวข้องด้วย และที่สำคัญคือ แผ่ออกไปในทิศทางที่ขึ้นอยู่กับทิศทางที่ขดลวดพัน และทิศทางการไหลของกระแสไฟฟ้า นอกจากนี้ เรายังได้รับการเตือนว่าตัวเหนี่ยวนำที่ได้รับการป้องกัน "เต็มรูปแบบ" ไม่ได้หมายความถึงสิ่งที่คุณคิด สนามแม่เหล็กจะถูกลดทอนลงอย่างมาก แต่บางส่วนก็ยังหลุดรอดออกมาได้ เราพบว่าประสิทธิภาพของตัวควบคุมสามารถปรับปรุงได้อย่างมากหากตัวเหนี่ยวนำ "อยู่ถูกทาง"
  • ปรากฏว่าสนามแม่เหล็กที่ปล่อยออกมาจากตัวเหนี่ยวนำที่ "หมุนผิดด้าน" จะรบกวนตัวเก็บประจุเอาต์พุตของตัวควบคุม (C7) ซึ่งจะทำให้วงจรควบคุมภายใน RP2350 เสียหาย หากตัวเหนี่ยวนำอยู่ในทิศทางที่ถูกต้อง และใช้เลย์เอาต์และการเลือกส่วนประกอบอย่างแม่นยำ ปัญหานี้ก็จะหมดไป แน่นอนว่าจะต้องมีเลย์เอาต์ ส่วนประกอบ ฯลฯ อื่นๆ ที่สามารถทำงานร่วมกับตัวเหนี่ยวนำในทิศทางใดก็ได้ แต่ส่วนใหญ่แล้ว เลย์เอาต์เหล่านี้จะใช้พื้นที่ PCB มากขึ้นเพื่อให้ใช้งานได้ เราได้จัดทำเลย์เอาต์ที่แนะนำนี้ขึ้นเพื่อประหยัดเวลาด้านวิศวกรรมที่เราใช้ในการพัฒนาและปรับปรุงโซลูชันที่กะทัดรัดและทำงานได้ดีนี้
  • ยิ่งไปกว่านั้น เราพูดไปไกลถึงขั้นว่าหากคุณเลือกที่จะไม่ใช้แฟนเก่าของเราampถ้าอย่างนั้น คุณต้องทำสิ่งนี้ด้วยความเสี่ยงของคุณเอง เช่นเดียวกับที่เราทำกับ RP2040 และวงจรคริสตัลอยู่แล้ว โดยที่เรายืนกราน (หรือขอแนะนำอย่างยิ่ง) ให้คุณใช้ชิ้นส่วนเฉพาะ (เราจะทำเช่นเดียวกันนี้อีกครั้งในส่วนของคริสตัลของเอกสารนี้)
  • ทิศทางของตัวเหนี่ยวนำขนาดเล็กเหล่านี้ถูกละเลยโดยทั่วไป เนื่องจากไม่สามารถระบุทิศทางของขดลวดได้ และยังกระจายแบบสุ่มไปตามรีลของส่วนประกอบต่างๆ อีกด้วย ตัวเรือนตัวเหนี่ยวนำขนาดใหญ่กว่ามักจะพบเครื่องหมายขั้วอยู่บ่อยครั้ง อย่างไรก็ตาม เราไม่พบตัวเรือนขนาด 0806 (เมตริก 2016) ที่เหมาะสมที่เราเลือก เพื่อจุดประสงค์นี้ เราจึงทำงานร่วมกับ Abracon เพื่อผลิตชิ้นส่วนขนาด 3.3μH ที่มีจุดเพื่อระบุขั้ว และที่สำคัญคือ ผลิตบนรีลที่ทุกชิ้นส่วนเรียงกันในลักษณะเดียวกัน TBD จะวางจำหน่ายให้กับสาธารณชนทั่วไปผ่านผู้จัดจำหน่าย (หรือจะวางจำหน่ายในเร็วๆ นี้) ดังที่กล่าวไว้ก่อนหน้านี้ แหล่งจ่ายไฟ VREG_AVDD นั้นไวต่อสัญญาณรบกวนมาก ดังนั้นจึงจำเป็นต้องมีการกรอง เราพบว่าเนื่องจาก VREG_AVDD ดึงกระแสเพียงประมาณ 200μA ตัวกรอง RC ขนาด 33Ω และ 4.7μF จึงเพียงพอ
  • สรุปคร่าวๆ ส่วนประกอบที่ใช้ก็จะเป็นดังนี้…
    • C6, C7 และ C9 – 4.7μF (0402, 1005 เมตริก)
    • L1 – Abracon TBD (0806, 2016 เมตริก)
    •  R3 – 33Ω (0402, 1005 เมตริก)
  • แผ่นข้อมูล RP2350 มีการอภิปรายโดยละเอียดเพิ่มเติมเกี่ยวกับคำแนะนำในการจัดวางตัวควบคุม โปรดดูส่วนประกอบภายนอกและข้อกำหนดการจัดวาง PCB

อุปทานอินพุต

Raspberry-Pi-SC1631-ไมโครคอนโทรลเลอร์ราสเบอร์รี่- (2)

การเชื่อมต่อพลังงานอินพุตสำหรับการออกแบบนี้คือผ่านพิน VBUS 5V ของขั้วต่อ Micro-USB (มีป้ายกำกับ J1 ในรูปที่ 5) นี่เป็นวิธีทั่วไปในการจ่ายไฟให้กับอุปกรณ์อิเล็กทรอนิกส์ และมีความสมเหตุสมผลในกรณีนี้ เนื่องจาก RP2350 มีฟังก์ชัน USB ซึ่งเราจะต่อสายเข้ากับพินข้อมูลของขั้วต่อนี้ เนื่องจากเราต้องการเพียง 3.3V สำหรับการออกแบบนี้ (แหล่งจ่ายไฟ 1.1V มาจากภายใน) เราจึงต้องลดแหล่งจ่ายไฟ USB 5V ขาเข้า ในกรณีนี้ โดยใช้แหล่งจ่ายไฟภายนอกอื่นtagตัวควบคุม e ในกรณีนี้คือตัวควบคุมเชิงเส้น (หรือที่เรียกว่าตัวควบคุม Low Drop Out หรือ LDO) ก่อนหน้านี้ได้ยกย่องคุณประโยชน์ของการใช้ตัวควบคุมการสลับที่มีประสิทธิภาพ การใช้ตัวควบคุมนี้อาจเป็นตัวเลือกที่ชาญฉลาดเช่นกัน แต่ฉันได้เลือกความเรียบง่าย ประการแรก การใช้ LDO มักจะง่ายกว่าเสมอ ไม่จำเป็นต้องคำนวณเพื่อหาขนาดตัวเหนี่ยวนำที่คุณควรใช้ หรือตัวเก็บประจุเอาต์พุตมีขนาดใหญ่เพียงใด และโดยทั่วไปแล้วเลย์เอาต์จะตรงไปตรงมามากกว่ามาก ประการที่สอง การประหยัดพลังงานทุกหยดสุดท้ายไม่ใช่เป้าหมายที่นี่ ถ้าเป็นเช่นนั้น ฉันจะพิจารณาอย่างจริงจังในการใช้ตัวควบคุมการสลับ และคุณสามารถหาตัวอย่างได้ampวิธีทำสิ่งนี้บน Raspberry Pi Pico 2 และประการที่สาม ฉันสามารถ "ยืม" วงจรที่ฉันเคยใช้ในบอร์ด Minimal เวอร์ชัน RP2040 มาใช้ NCP1117 (U2) ที่เลือกไว้ที่นี่มีเอาต์พุตคงที่ที่ 3.3V มีจำหน่ายทั่วไป และสามารถจ่ายกระแสได้สูงถึง 1A ซึ่งเพียงพอสำหรับการออกแบบส่วนใหญ่ เมื่อดูแผ่นข้อมูลของ NCP1117 จะพบว่าอุปกรณ์นี้ต้องใช้ตัวเก็บประจุ 10μF ที่อินพุต และอีกตัวหนึ่งที่เอาต์พุต (C1 และ C5)

ตัวเก็บประจุแบบแยกส่วน

รูปที่ 6 ส่วนแผนผังแสดงอินพุตแหล่งจ่ายไฟ RP2350 เล่มที่tagตัวควบคุมและตัวเก็บประจุแยกRaspberry-Pi-SC1631-ไมโครคอนโทรลเลอร์ราสเบอร์รี่- (3)

อีกแง่มุมหนึ่งของการออกแบบแหล่งจ่ายไฟคือตัวเก็บประจุแบบแยกส่วนที่จำเป็นสำหรับ RP2350 ตัวเก็บประจุเหล่านี้มีหน้าที่พื้นฐานสองประการ ประการแรก ตัวเก็บประจุจะกรองสัญญาณรบกวนจากแหล่งจ่ายไฟ และประการที่สอง จะจ่ายประจุไฟฟ้าในพื้นที่ที่วงจรภายใน RP2350 สามารถใช้ได้ในระยะเวลาอันสั้น ซึ่งจะช่วยป้องกันแรงดันไฟฟ้าตกtagระดับ e ในบริเวณใกล้เคียงจากการลดลงมากเกินไปเมื่อความต้องการกระแสไฟเพิ่มขึ้นอย่างกะทันหัน ด้วยเหตุนี้ จึงมีความสำคัญที่จะต้องวางการแยกสัญญาณใกล้กับพินไฟฟ้า โดยปกติแล้ว เราขอแนะนำให้ใช้ตัวเก็บประจุ 100nF ต่อพินไฟฟ้า อย่างไรก็ตาม เราเบี่ยงเบนจากกฎนี้ในบางกรณี

รูปที่ 7 ส่วนเค้าโครงแสดงการกำหนดเส้นทางและการแยก RP2350 Raspberry-Pi-SC1631-ไมโครคอนโทรลเลอร์ราสเบอร์รี่- (4)

  • ประการแรก เพื่อให้มีพื้นที่เพียงพอสำหรับพินชิปทั้งหมดที่จะสามารถเดินออกจากอุปกรณ์ได้ เราต้องประนีประนอมกับจำนวนตัวเก็บประจุแบบแยกตัวที่สามารถใช้ได้ ในการออกแบบนี้ พิน 53 และ 54 ของ RP2350A (พิน 68 และ 69 ของ RP2350B) ใช้ตัวเก็บประจุตัวเดียว (C12 ในรูปที่ 7 และรูปที่ 6) เนื่องจากไม่มีพื้นที่มากนักที่ด้านนั้นของอุปกรณ์ และส่วนประกอบและเค้าโครงของตัวควบคุมจะมีความสำคัญเหนือกว่า
  • พื้นที่ที่ไม่เพียงพอนี้สามารถเอาชนะได้ในระดับหนึ่งหากเราใช้เทคโนโลยีที่ซับซ้อนและมีราคาแพงกว่า เช่น ส่วนประกอบที่มีขนาดเล็กกว่า หรือ PCB สี่ชั้นที่มีส่วนประกอบทั้งด้านบนและด้านล่าง นี่คือการแลกเปลี่ยนด้านการออกแบบ เราได้ลดความซับซ้อนและต้นทุนลง โดยแลกกับการมีความจุแยกส่วนน้อยลง และตัวเก็บประจุที่อยู่ห่างจากชิปมากกว่าที่เหมาะสมเล็กน้อย (ซึ่งจะเพิ่มค่าเหนี่ยวนำ) ซึ่งอาจมีผลจำกัดความเร็วสูงสุดที่การออกแบบสามารถทำงานได้ เนื่องจากปริมาณไฟฟ้าtagแหล่งจ่ายไฟอาจมีเสียงดังเกินไปและลดลงต่ำกว่าระดับขั้นต่ำที่อนุญาตtagแต่สำหรับแอปพลิเคชั่นส่วนใหญ่ ข้อแลกเปลี่ยนนี้ควรเป็นที่ยอมรับได้
  • การเบี่ยงเบนอื่น ๆ จากกฎ 100nF คือเพื่อให้เราสามารถปรับปรุงปริมาตรเพิ่มเติมได้tagประสิทธิภาพตัวควบคุมแรงดันไฟฟ้า เราขอแนะนำให้ใช้ 4.7μF สำหรับ C10 ซึ่งวางไว้ที่ด้านอื่นของชิปจากตัวควบคุมแรงดันไฟฟ้า

บทที่ 3. หน่วยความจำแฟลช

 แฟลชหลัก

รูปที่ 8 ส่วนแผนผังแสดงหน่วยความจำแฟลชหลักและวงจร USB_BOOT

Raspberry-Pi-SC1631-ไมโครคอนโทรลเลอร์ราสเบอร์รี่- (4)

  • เพื่อให้สามารถจัดเก็บโค้ดโปรแกรมที่ RP2350 สามารถบูตและรันได้ เราจำเป็นต้องใช้หน่วยความจำแฟลช โดยเฉพาะหน่วยความจำแฟลช Quad SPI อุปกรณ์ที่เลือกในที่นี้คืออุปกรณ์ W25Q128JVS (U3 ในรูปที่ 8) ซึ่งเป็นชิปขนาด 128 เมกะบิต (16 เมกะไบต์) ซึ่งเป็นขนาดหน่วยความจำที่ใหญ่ที่สุดที่ RP2350 รองรับได้ หากแอปพลิเคชันเฉพาะของคุณไม่ต้องการพื้นที่จัดเก็บมากนัก ก็สามารถใช้หน่วยความจำขนาดเล็กกว่าและราคาถูกกว่าแทนได้
  • เนื่องจากดาต้าบัสนี้อาจมีความถี่ค่อนข้างสูงและใช้งานเป็นประจำ พิน QSPI ของ RP2350 จึงควรต่อสายโดยตรงกับแฟลชโดยใช้การเชื่อมต่อแบบสั้นเพื่อรักษาความสมบูรณ์ของสัญญาณ และเพื่อลดสัญญาณรบกวนในวงจรโดยรอบ สัญญาณรบกวนคือจุดที่สัญญาณบนเครือข่ายวงจรหนึ่งสามารถทำให้เกิดโวลท์ที่ไม่ต้องการได้tagอยู่ในวงจรใกล้เคียง ซึ่งอาจทำให้เกิดข้อผิดพลาดได้
  • สัญญาณ QSPI_SS เป็นกรณีพิเศษ โดยเชื่อมต่อกับแฟลชโดยตรง แต่ยังมีตัวต้านทานสองตัว (หรือสี่ตัว แต่ฉันจะพูดถึงเรื่องนั้นในภายหลัง) เชื่อมต่ออยู่ด้วย ตัวต้านทานตัวแรก (R1) เป็นตัวดึงขึ้นจากแหล่งจ่าย 3.3V หน่วยความจำแฟลชต้องใช้อินพุตเลือกชิปที่โวลท์เดียวกันtage เป็นพินจ่ายไฟ 3.3V ของตัวเองเมื่ออุปกรณ์เปิดเครื่อง มิฉะนั้น อุปกรณ์จะทำงานไม่ถูกต้อง เมื่อเปิดเครื่อง RP2350 พิน QSPI_SS จะตั้งค่าเป็นพูลอัปโดยอัตโนมัติ แต่มีช่วงเวลาสั้นๆ ระหว่างการเปิดเครื่องที่ไม่สามารถรับประกันสถานะของพิน QSPI_SS ได้ การเพิ่มตัวต้านทานพูลอัปช่วยให้มั่นใจได้ว่าข้อกำหนดนี้จะเป็นไปตามนั้นเสมอ R1 ถูกทำเครื่องหมายเป็น DNF (Do Not Fit) บนแผนผัง เนื่องจากเราพบว่าอุปกรณ์แฟลชรุ่นนี้ไม่จำเป็นต้องใช้พูลอัปภายนอก อย่างไรก็ตาม หากใช้แฟลชรุ่นอื่น อาจมีความสำคัญที่จะต้องสามารถใส่ตัวต้านทาน 10kΩ ไว้ที่นี่ ดังนั้นจึงได้รวมตัวต้านทานนี้ไว้ในกรณีที่จำเป็น
  • ตัวต้านทานตัวที่สอง (R6) เป็นตัวต้านทาน 1kΩ เชื่อมต่อกับปุ่มกด (SW1) ที่มีป้ายว่า 'USB_BOOT' เนื่องจากพิน QSPI_SS ถูกใช้เป็น 'สายรัดบูต' RP2350 จะตรวจสอบค่าของ I/O นี้ในระหว่างลำดับการบูต และหากพบว่าเป็นลอจิก 0 RP2350 จะกลับสู่โหมด BOOTSEL โดยที่ RP2350 จะแสดงตัวเองเป็นอุปกรณ์จัดเก็บข้อมูลขนาดใหญ่ USB และสามารถคัดลอกโค้ดไปยังอุปกรณ์ได้โดยตรง หากเราเพียงแค่กดปุ่ม เราจะดึงพิน QSPI_SS ลงกราวด์ และหากอุปกรณ์ถูกรีเซ็ตในภายหลัง (เช่น โดยการสลับพิน RUN) RP2350 จะรีสตาร์ทในโหมด BOOTSEL แทนที่จะพยายามรันเนื้อหาของแฟลช ตัวต้านทานเหล่านี้ R2 และ R6 (รวมถึง R9 และ R10) ควรวางไว้ใกล้กับชิปแฟลช เพื่อหลีกเลี่ยงความยาวของแทร็กทองแดงเพิ่มเติมที่อาจส่งผลต่อสัญญาณ
  • ที่กล่าวมาทั้งหมดข้างต้นใช้ได้กับ RP2350 โดยเฉพาะ ซึ่งไม่มีแฟลชภายใน แน่นอนว่าอุปกรณ์ RP2354 มีหน่วยความจำแฟลชภายใน 2MB ดังนั้นจึงไม่จำเป็นต้องใช้หน่วยความจำ U3 ภายนอก จึงสามารถถอด U3 ออกจากแผนผังได้อย่างปลอดภัย หรือปล่อยทิ้งไว้เฉยๆ ในกรณีใดๆ ก็ตาม เรายังคงต้องการให้สวิตช์ USB_BOOT เชื่อมต่อกับ QSPI_SS เพื่อให้เราเข้าสู่โหมดบูต USB ได้

 แฟลชรองหรือ PSRAM

  • ซีรีส์ RP235x รองรับอุปกรณ์หน่วยความจำที่สองโดยใช้พิน QSPI เดียวกัน โดยที่ GPIO จะให้การเลือกชิปเพิ่มเติม ดังนั้น หากเราใช้ RP2354 (ซึ่งมีแฟลชภายใน) เราก็สามารถใช้ U3 เป็นแฟลชรอง หรือแม้กระทั่งแทนที่ด้วยอุปกรณ์ PSRAM ในการดำเนินการนี้ เราต้องตัดการเชื่อมต่อ QSPI_SS จาก U3 และเชื่อมต่อกับ GPIO ที่เหมาะสมแทน GPIO ที่ใกล้ที่สุดที่สามารถเลือกชิปได้ (XIP_CS1n) คือ GPIO0 ดังนั้น การลบ 0Ω ออกจาก R10 และใส่เข้ากับ R9 ทำให้เราสามารถเข้าถึง U3 ได้นอกเหนือจากแฟลชบนชิป เพื่อให้สามารถดำเนินการได้อย่างเต็มที่tagฟีเจอร์นี้ซึ่งเรามีอุปกรณ์หน่วยความจำภายนอกสองตัวเพื่อให้ชิ้นส่วน RP2350 ที่ไม่มีแฟลชได้รับประโยชน์ โดยบอร์ด Minimal ที่มีขนาดใหญ่กว่าสองบอร์ดสำหรับ RP2350B จะรวมถึงพื้นที่ติดตั้งเสริม (U4) สำหรับชิปหน่วยความจำเพิ่มเติม

รูปที่ 9 ส่วนแผนผังแสดงอุปกรณ์หน่วยความจำรองเสริม

Raspberry-Pi-SC1631-ไมโครคอนโทรลเลอร์ราสเบอร์รี่- (5)

หากต้องการใช้อุปกรณ์นี้ได้ จำเป็นต้องเพิ่ม R11 (0Ω) และ R13 (10KΩ) เข้าไปด้วย การเพิ่ม R11 จะเชื่อมต่อ GPIO0 (สัญญาณ XIP_CS1n) เข้ากับชิปซีเล็กต์ของหน่วยความจำที่สอง จำเป็นต้องมีการดึงพินชิปซีเล็กต์ขึ้นมาในครั้งนี้ เนื่องจากสถานะเริ่มต้นของ GPIO0 จะถูกดึงลงมาต่ำเมื่อเปิดเครื่อง ซึ่งจะทำให้อุปกรณ์แฟลชของเราล้มเหลว นอกจากนี้ ยังต้องใช้ C22 เพื่อจัดเตรียมการแยกแหล่งจ่ายไฟในพื้นที่สำหรับ U4

รองรับชิปแฟลช
ลำดับโพรบแฟลชเริ่มต้นที่ใช้โดยด้านล่างเพื่อแยกวินาทีที่สองtage จากแฟลชใช้คำสั่งอ่านแบบอนุกรม 03h พร้อมการกำหนดแอดเดรส 24 บิต และนาฬิกาแบบอนุกรมประมาณ 1MHz โดยจะวนซ้ำผ่านชุดค่าผสมทั้งสี่ของขั้วนาฬิกาและเฟสนาฬิกา เพื่อค้นหาวินาทีที่ถูกต้องtagและผลรวมตรวจสอบ CRC32
ในขณะที่วินาทีที่สองtagจากนั้น e จะสามารถกำหนดค่าการดำเนินการในสถานที่โดยใช้คำสั่งอ่านแบบอนุกรม 03h เดียวกันได้ RP2350 สามารถดำเนินการแฟลชแคชในสถานที่ได้โดยใช้ชิปใดๆ ที่รองรับการอ่านแบบอนุกรม 03h พร้อมการกำหนดที่อยู่ 24 บิต ซึ่งรวมถึงอุปกรณ์แฟลช 25 ซีรีส์ส่วนใหญ่ SDK มอบตัวอย่างampวินาทีที่สองtage สำหรับ CPOL=0 CPHA=0 ที่ https://github.com/raspberrypi/pico-sdk/blob/master/src/rp2350/boot_stage2/boot2_generic_03h.Sเพื่อรองรับการเขียนโปรแกรมแฟลชโดยใช้รูทีนด้านล่าง อุปกรณ์จะต้องตอบสนองต่อคำสั่งต่อไปนี้ด้วย:

  • โปรแกรมเพจ 02h 256 ไบต์
  • สถานะ 05h อ่านทะเบียน
  • 06h ตั้งค่าให้เขียนเปิดใช้งานสลัก
  • ลบเซกเตอร์ 20 ชม. 4kB

RP2350 ยังรองรับโหมดการเข้าถึง SPI และ QSPI แบบคู่ที่หลากหลาย เช่นampเล, https://github.com/raspberrypi/pico-sdk/blob/master/src/rp2350/boot_stage2/boot2_w25q080.S กำหนดค่าอุปกรณ์ Winbond ซีรีส์ W25Q สำหรับโหมดอ่านต่อเนื่องแบบ Quad-IO โดยที่ RP2350 จะส่งที่อยู่แบบ Quad-IO (โดยไม่มีคำนำหน้าคำสั่ง) และแฟลชตอบสนองด้วยข้อมูลแบบ Quad-IO

จำเป็นต้องใช้ความระมัดระวังกับโหมดแฟลช XIP ที่อุปกรณ์แฟลชหยุดตอบสนองต่อคำสั่งแบบอนุกรมมาตรฐาน เช่น โหมดอ่านต่อเนื่องของ Winbond ที่กล่าวถึงข้างต้น ซึ่งอาจทำให้เกิดปัญหาได้เมื่อรีเซ็ต RP2350 แต่ไม่ได้ปิดและเปิดอุปกรณ์แฟลชใหม่ เนื่องจากแฟลชจะไม่ตอบสนองต่อลำดับการตรวจสอบแฟลชของ bootrom ก่อนที่จะออกคำสั่งอ่านแบบอนุกรม 03h bootrom จะออกลำดับคงที่ต่อไปนี้เสมอ ซึ่งเป็นลำดับความพยายามที่ดีที่สุดสำหรับการหยุดใช้ XIP บนอุปกรณ์แฟลชหลากหลายประเภท:

  • CSn=1, IO[3:0]=4'b0000 (ผ่านระบบดึงลงเพื่อหลีกเลี่ยงการโต้แย้ง) ออกนาฬิกา ×32 เรือน
  • CSn=0, IO[3:0]=4'b1111 (ผ่านการดึงขึ้นเพื่อหลีกเลี่ยงการแข่งขัน) ออก ×32 นาฬิกา
  • CSn=1
  • CSn=0, MOSI=1'b1 (ขับเคลื่อนด้วย low-Z, I/O อื่นๆ ทั้งหมดเป็น Hi-Z), ออก ×16 คล็อก

หากอุปกรณ์ที่คุณเลือกไม่ตอบสนองต่อลำดับนี้เมื่ออยู่ในโหมดอ่านต่อเนื่อง อุปกรณ์จะต้องอยู่ในสถานะที่การถ่ายโอนแต่ละครั้งจะนำหน้าด้วยคำสั่งอนุกรม มิฉะนั้น RP2350 จะไม่สามารถกู้คืนได้หลังการรีเซ็ตภายใน
สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับ QSPI โปรดดู QSPI Memory Interface (QMI) ในแผ่นข้อมูล RP2350

บทที่ 4. คริสตัลออสซิลเลเตอร์

รูปที่ 10 ส่วนแผนผังแสดงออสซิลเลเตอร์คริสตัลและตัวเก็บประจุโหลดRaspberry-Pi-SC1631-ไมโครคอนโทรลเลอร์ราสเบอร์รี่- (6)

  • หากพูดอย่างเคร่งครัด RP2350 ไม่ต้องการแหล่งสัญญาณนาฬิกาภายนอก เนื่องจากมีออสซิลเลเตอร์ภายในของตัวเอง อย่างไรก็ตาม เนื่องจากความถี่ของออสซิลเลเตอร์ภายในนี้ไม่ได้ถูกกำหนดหรือควบคุมไว้อย่างชัดเจน แตกต่างกันไปตามชิป รวมถึงปริมาณแหล่งจ่ายที่แตกต่างกันtagและอุณหภูมิ ขอแนะนำให้ใช้แหล่งความถี่ภายนอกที่เสถียร การใช้งานที่ต้องอาศัยความถี่ที่แน่นอนไม่สามารถทำได้หากไม่มีแหล่งความถี่ภายนอก โดย USB เป็นอุปกรณ์หลักampเล.
  • การจัดเตรียมแหล่งความถี่ภายนอกสามารถทำได้สองวิธี: โดยจัดเตรียมแหล่งสัญญาณนาฬิกาที่มีเอาต์พุต CMOS (คลื่นสี่เหลี่ยมของ IOVDD voltage) เข้าสู่พิน XIN หรือโดยใช้คริสตัล 12MHz ที่เชื่อมต่อระหว่าง
  • XIN และ XOUT การใช้คริสตัลเป็นตัวเลือกที่ดีกว่า เนื่องจากทั้งสองแบบมีราคาค่อนข้างถูกและมีความแม่นยำสูง
  • คริสตัลที่เลือกสำหรับการออกแบบนี้คือ ABM8-272-T3 (Y1 ในรูปที่ 10) ซึ่งเป็นคริสตัล 12MHz เดียวกับที่ใช้ใน Raspberry Pi Pico และ Raspberry Pi Pico 2 เราขอแนะนำให้ใช้คริสตัลนี้ร่วมกับวงจรที่มาพร้อมกันเพื่อให้แน่ใจว่านาฬิกาจะเริ่มต้นอย่างรวดเร็วภายใต้เงื่อนไขทั้งหมดโดยไม่ทำให้คริสตัลเสียหาย คริสตัลมีค่าความคลาดเคลื่อนของความถี่ 30ppm ซึ่งน่าจะเพียงพอสำหรับการใช้งานส่วนใหญ่ นอกจากค่าความคลาดเคลื่อนของความถี่ที่ +/-30ppm แล้ว ยังมี ESR สูงสุดที่ 50Ω และความจุโหลดที่ 10pF ซึ่งทั้งสองอย่างนี้มีผลต่อการเลือกส่วนประกอบที่มาพร้อมกัน
  • เพื่อให้คริสตัลสั่นที่ความถี่ที่ต้องการ ผู้ผลิตจะระบุความจุโหลดที่ต้องการให้ทำเช่นนั้นได้ และในกรณีนี้คือ 10pF ความจุโหลดนี้ทำได้โดยวางตัวเก็บประจุสองตัวที่มีค่าเท่ากัน โดยวางตัวหนึ่งไว้ที่ด้านใดด้านหนึ่งของคริสตัลกับกราวด์ (C3 และ C4) จากจุดที่คริสตัลอยู่ viewตัวเก็บประจุเหล่านี้เชื่อมต่อแบบอนุกรมระหว่างขั้วทั้งสอง ทฤษฎีวงจรพื้นฐานบอกเราว่าเมื่อรวมกันแล้วจะได้ความจุเท่ากับ (C3*C4)/(C3+C4) และเมื่อ C3=C4 ก็จะได้ C3/2 ในตัวอย่างนี้ampเราใช้ตัวเก็บประจุ 15pF ดังนั้นชุดค่าผสมแบบอนุกรมจึงเป็น 7.5pF นอกเหนือจากความจุโหลดที่ตั้งใจนี้แล้ว เรายังต้องเพิ่มค่าสำหรับความจุพิเศษที่ไม่ได้ตั้งใจ หรือความจุปรสิตที่เราได้รับจากแทร็ก PCB และพิน XIN และ XOUT ของ RP2350 เราจะถือว่าค่าเป็น 3pF สำหรับสิ่งนี้ และเนื่องจากความจุนี้ขนานกับ C3 และ C4 เราจึงเพียงแค่เพิ่มสิ่งนี้เพื่อให้ได้ความจุโหลดรวม 10.5pF ซึ่งใกล้เคียงกับเป้าหมายที่ 10pF เพียงพอ อย่างที่คุณเห็น ความจุปรสิตของรอยวงจร PCB เป็นปัจจัยหนึ่ง ดังนั้นเราจึงต้องทำให้มันมีขนาดเล็ก เพื่อไม่ให้คริสตัลเสียหายและหยุดการสั่นตามที่ตั้งใจไว้ พยายามทำให้เลย์เอาต์สั้นที่สุด
  • ข้อพิจารณาที่สองคือค่า ESR (ความต้านทานอนุกรมเทียบเท่า) สูงสุดของคริสตัล เราเลือกใช้อุปกรณ์ที่มีค่าสูงสุด 50Ω เนื่องจากเราพบว่าค่านี้เมื่อใช้ร่วมกับตัวต้านทานอนุกรม 1kΩ (R2) ถือเป็นค่าที่ดีเพื่อป้องกันไม่ให้คริสตัลทำงานเกินกำลังและเสียหายเมื่อใช้ระดับ IOVDD ที่ 3.3V อย่างไรก็ตาม หาก IOVDD น้อยกว่า 3.3V กระแสขับเคลื่อนของพิน XIN/XOUT จะลดลง และคุณจะพบว่า ampลิจูดของคริสตัลจะต่ำกว่าหรืออาจไม่สั่นเลย ในกรณีนี้ จำเป็นต้องใช้ตัวต้านทานแบบอนุกรมที่มีค่าน้อยกว่า การเบี่ยงเบนใดๆ จากวงจรคริสตัลที่แสดงที่นี่ หรือด้วยระดับ IOVDD ที่ไม่ใช่ 3.3V จะต้องได้รับการทดสอบอย่างละเอียดเพื่อให้แน่ใจว่าคริสตัลจะสั่นภายใต้เงื่อนไขทั้งหมด และเริ่มทำงานอย่างรวดเร็วเพียงพอที่จะไม่ก่อให้เกิดปัญหาในการใช้งานของคุณ

 คริสตัลที่แนะนำ

  • สำหรับการออกแบบดั้งเดิมที่ใช้ RP2350 เราขอแนะนำให้ใช้ Abracon ABM8-272-T3 ตัวอย่างเช่นampนอกจากการออกแบบที่เรียบง่ายแล้วampโปรดดูแผนผังบอร์ด Pico 2 ในภาคผนวก B ของแผ่นข้อมูล Raspberry Pi Pico 2 และการออกแบบ Pico 2 files.
  • หากต้องการประสิทธิภาพและเสถียรภาพสูงสุดในช่วงอุณหภูมิการทำงานทั่วไป ให้ใช้ Abracon ABM8-272-T3 คุณสามารถสั่งซื้อ ABM8-272-T3 ได้โดยตรงจาก Abracon หรือจากตัวแทนจำหน่ายที่ได้รับอนุญาต Pico 2 ได้รับการปรับแต่งโดยเฉพาะสำหรับ ABM8-272-T3 ซึ่งมีคุณลักษณะดังต่อไปนี้:
  • แม้ว่าคุณจะใช้คริสตัลที่มีคุณสมบัติคล้ายคลึงกัน แต่คุณก็ยังจำเป็นต้องทดสอบวงจรในช่วงอุณหภูมิต่างๆ เพื่อให้มั่นใจถึงความเสถียร
  • คริสตัลออสซิลเลเตอร์ได้รับพลังงานจาก IOVDD voltage. เป็นผลให้คริสตัล Abracon และ d เฉพาะนั้นampตัวต้านทานจะถูกปรับให้ทำงานที่ 3.3V หากคุณใช้โวลุ่ม IO อื่นtagอี คุณจะต้องปรับแต่งใหม่
  • การเปลี่ยนแปลงใดๆ ต่อพารามิเตอร์คริสตัลอาจทำให้เกิดความไม่เสถียรระหว่างส่วนประกอบใดๆ ที่เชื่อมต่อกับวงจรคริสตัล
  • หากคุณไม่สามารถหาคริสตัลที่แนะนำได้โดยตรงจาก Abracon หรือตัวแทนจำหน่าย โปรดติดต่อ applications@raspberrypi.com.

บทที่ 5. IOs

 ยูเอสบี
รูปที่ 11 ส่วนแผนผังแสดงพิน USB ของ RP2350 และการสิ้นสุดแบบอนุกรม

Raspberry-Pi-SC1631-ไมโครคอนโทรลเลอร์ราสเบอร์รี่- (7)

  • RP2350 มีพินสองพินสำหรับใช้กับ USB ความเร็วเต็ม (FS) หรือความเร็วต่ำ (LS) โดยอาจเป็นโฮสต์หรืออุปกรณ์ก็ได้ ขึ้นอยู่กับซอฟต์แวร์ที่ใช้ ดังที่เราได้กล่าวไปแล้ว RP2350 สามารถบูตเป็นอุปกรณ์จัดเก็บข้อมูลขนาดใหญ่ USB ได้เช่นกัน ดังนั้นการเชื่อมต่อพินเหล่านี้เข้ากับขั้วต่อ USB (J1 ในรูปที่ 5) จึงมีความสมเหตุสมผล พิน USB_DP และ USB_DM บน RP2350 ไม่จำเป็นต้องมีการดึงขึ้นหรือดึงลงเพิ่มเติม (จำเป็นสำหรับระบุความเร็ว FS หรือ LS หรือว่าเป็นโฮสต์หรืออุปกรณ์) เนื่องจากพินเหล่านี้ถูกสร้างไว้ใน I/O แล้ว อย่างไรก็ตาม I/O เหล่านี้ต้องใช้ตัวต้านทานการยุติแบบอนุกรม 27Ω (R7 และ R8 ในรูปที่ 11) ซึ่งวางไว้ใกล้กับชิป เพื่อให้ตรงตามข้อกำหนดอิมพีแดนซ์ของ USB
  • แม้ว่า RP2350 จะจำกัดอยู่ที่อัตราข้อมูลความเร็วเต็ม (12Mbps) แต่เราก็ควรพยายามตรวจสอบให้แน่ใจว่าค่าอิมพีแดนซ์ลักษณะเฉพาะของสายส่ง (แทร็กทองแดงที่เชื่อมต่อชิปกับขั้วต่อ) ใกล้เคียงกับ
  • ข้อกำหนด USB 90Ω (วัดแบบดิฟเฟอเรนเชียล) บนบอร์ดหนา 1 มม. เช่นนี้ หากเราใช้แทร็กกว้าง 0.8 มม. บน USB_DP และ USB_DM โดยมีช่องว่างระหว่างกัน 0.15 มม. เราควรได้รับอิมพีแดนซ์ลักษณะดิฟเฟอเรนเชียลประมาณ 90Ω เพื่อให้แน่ใจว่าสัญญาณสามารถเดินทางตามสายส่งเหล่านี้ได้อย่างสะอาดที่สุด และลดปริมาณเสียงให้เหลือน้อยที่สุดtagการสะท้อนแสงที่สามารถลดความสมบูรณ์ของสัญญาณได้ เพื่อให้สายส่งเหล่านี้ทำงานได้อย่างถูกต้อง เราต้องตรวจสอบให้แน่ใจว่ามีสายดินอยู่ใต้สายเหล่านี้โดยตรง สายดินทองแดงที่แน่นหนาและต่อเนื่องกันซึ่งทอดยาวตลอดความยาวของแทร็ก ในการออกแบบนี้ ชั้นทองแดงด้านล่างเกือบทั้งหมดจะอุทิศให้กับกราวด์ และมีการเอาใจใส่เป็นพิเศษเพื่อให้แน่ใจว่าแทร็ก USB จะผ่านเฉพาะกราวด์เท่านั้น หากคุณเลือก PCB ที่มีความหนามากกว่า 1 มม. สำหรับงานสร้างของคุณ เราจะมีสองทางเลือก เราสามารถออกแบบสายส่ง USB ใหม่เพื่อชดเชยระยะห่างที่มากขึ้นระหว่างแทร็กและกราวด์ด้านล่าง (ซึ่งอาจเป็นไปไม่ได้ในทางกายภาพ) หรือเราจะละเลยมันและหวังว่าจะดีที่สุด USB FS อาจให้อภัยได้ค่อนข้างมาก แต่ระยะการใช้งานของคุณอาจแตกต่างกันไป มีแนวโน้มว่าจะใช้งานได้ในแอปพลิเคชันมากมาย แต่มีแนวโน้มว่าจะไม่เป็นไปตามมาตรฐาน USB

 เฮดเดอร์ I/O

รูปที่ 12 ส่วนแผนผังแสดงส่วนหัว I/O ขนาด 2.54 มม. ของเวอร์ชัน QFN60

Raspberry-Pi-SC1631-ไมโครคอนโทรลเลอร์ราสเบอร์รี่- (8)

  • นอกจากขั้วต่อ USB ที่กล่าวถึงแล้ว ยังมีขั้วต่อขนาด 2.54 มม. สองแถว (J2 และ J3 ในรูปที่ 12) หนึ่งคู่ที่ด้านข้างของบอร์ด ซึ่งเชื่อมต่อ I/O ที่เหลือไว้แล้ว RP30A มี GPIO 2350 ตัว ในขณะที่ RP48B มี GPIO 2350 ตัว ดังนั้นขั้วต่อบนบอร์ด Minimal รุ่นนี้จึงมีขนาดใหญ่ขึ้นเพื่อรองรับพินเพิ่มเติม (ดูรูปที่ 13)
  • เนื่องจากเป็นการออกแบบเพื่อวัตถุประสงค์ทั่วไป โดยไม่มีการใช้งานเฉพาะ จึงทำให้ I/O พร้อมใช้งานเพื่อเชื่อมต่อตามที่ผู้ใช้ต้องการ พินแถวในบนแต่ละส่วนหัวคือ I/O และแถวนอกทั้งหมดเชื่อมต่อกับกราวด์ การรวมกราวด์จำนวนมากบนขั้วต่อ I/O ถือเป็นแนวทางปฏิบัติที่ดี วิธีนี้ช่วยรักษากราวด์อิมพีแดนซ์ให้ต่ำ และยังช่วยให้มีเส้นทางกลับที่เป็นไปได้มากมายสำหรับกระแสไฟฟ้าที่เดินทางไปและกลับจาก
  • การเชื่อมต่อ I/O เป็นสิ่งสำคัญเพื่อลดการรบกวนทางแม่เหล็กไฟฟ้า ซึ่งอาจเกิดจากกระแสย้อนกลับของสัญญาณที่สลับไปมาอย่างรวดเร็วซึ่งต้องใช้เส้นทางยาวและวนซ้ำเพื่อให้วงจรเสร็จสมบูรณ์
  • ขั้วต่อทั้งสองอยู่บนกริดเดียวกันขนาด 2.54 มม. ซึ่งทำให้เชื่อมต่อบอร์ดนี้กับอุปกรณ์อื่นๆ เช่น แผงทดลองได้ง่ายขึ้น คุณอาจต้องการพิจารณาติดตั้งขั้วต่อแถวเดียวเท่านั้นแทนที่จะเป็นขั้วต่อแถวคู่ โดยละทิ้งการเชื่อมต่อกราวด์ในแถวด้านนอก เพื่อให้ติดตั้งกับแผงทดลองได้สะดวกยิ่งขึ้น

รูปที่ 13 ส่วนแผนผังแสดงส่วนหัว I/O ขนาด 2.54 มม. ของเวอร์ชัน QFN80

Raspberry-Pi-SC1631-ไมโครคอนโทรลเลอร์ราสเบอร์รี่- (9)

ตัวเชื่อมต่อดีบัก

รูปที่ 14 ส่วนแผนผังแสดงขั้วต่อ JST เสริมสำหรับการดีบัก SWD

Raspberry-Pi-SC1631-ไมโครคอนโทรลเลอร์ราสเบอร์รี่- (10)
สำหรับการดีบักบนชิป คุณอาจต้องการเชื่อมต่อกับอินเทอร์เฟซ SWD ของ RP2350 พินสองพิน คือ SWD และ SWCLK พร้อมใช้งานบนพิน J2.54 ขนาด 3 มม. เพื่อให้สามารถเชื่อมต่อโพรบดีบักที่คุณเลือกได้อย่างง่ายดาย นอกจากนี้ ฉันยังรวมพิน JST เสริมไว้ด้วย ซึ่งช่วยให้สามารถเชื่อมต่อกับ Raspberry Pi Debug Probe ได้อย่างง่ายดาย คุณไม่จำเป็นต้องใช้พินนี้ พินขนาด 2.54 มม. ก็เพียงพอแล้วหากคุณตั้งใจจะดีบักซอฟต์แวร์ แต่ฉันพบว่าสะดวกกว่าที่จะทำเช่นนั้น ฉันเลือกขั้วต่อแนวนอน ส่วนใหญ่เป็นเพราะฉันชอบรูปลักษณ์ของมัน แม้ว่าจะไม่อยู่ที่ขอบของบอร์ดก็ตาม แต่ก็มีขั้วต่อแนวตั้งให้เลือกใช้ แม้ว่าจะมีขนาดพื้นที่ที่แตกต่างกันเล็กน้อย

ปุ่ม
การออกแบบแบบมินิมอลในปัจจุบันมีปุ่มอยู่ไม่ใช่แค่ปุ่มเดียว แต่มีถึงสองปุ่ม ในขณะที่รุ่น RP240 ไม่มีเลย ปุ่มหนึ่งใช้เลือกบูตผ่าน USB ตามที่เราได้กล่าวถึงไปก่อนหน้านี้ ส่วนปุ่มที่สองเป็นปุ่ม 'รีเซ็ต' ที่เชื่อมต่อกับพิน RUN ทั้งสองปุ่มนี้ไม่จำเป็นอย่างยิ่ง (แม้ว่าปุ่ม BOOTSEL จะต้องถูกแทนที่ด้วยส่วนหัวหรือปุ่มที่คล้ายกันหากจำเป็นต้องใช้โหมดบูตผ่าน USB) และสามารถถอดออกได้หากพื้นที่หรือต้นทุนเป็นปัญหา แต่ปุ่มเหล่านี้ทำให้การใช้ RP2350 เป็นประสบการณ์ที่น่าพึงพอใจมากขึ้นอย่างแน่นอน

ภาคผนวก A: แผนผังวงจรสมบูรณ์ - เวอร์ชัน RP2350A

รูปที่ 15 แผนผังเต็มของการออกแบบขั้นต่ำสำหรับ RP2350ARaspberry-Pi-SC1631-ไมโครคอนโทรลเลอร์ราสเบอร์รี่- (11) Raspberry-Pi-SC1631-ไมโครคอนโทรลเลอร์ราสเบอร์รี่- (12)

ภาคผนวก B: แผนผังสมบูรณ์ - เวอร์ชัน RP2350B

รูปที่ 16 แผนผังเต็มของการออกแบบขั้นต่ำสำหรับ RP2350B

Raspberry-Pi-SC1631-ไมโครคอนโทรลเลอร์ราสเบอร์รี่- (13) Raspberry-Pi-SC1631-ไมโครคอนโทรลเลอร์ราสเบอร์รี่- (14)

ภาคผนวก H: ประวัติการเผยแพร่เอกสาร

8 สิงหาคม 2024
การเปิดตัวครั้งแรก

ฉัน Raspberry Pi
Raspberry Pi เป็นเครื่องหมายการค้าของ Raspberry Pi Ltd
ราสเบอร์รี่ ปิ จำกัด

เอกสาร / แหล่งข้อมูล

Raspberry Pi SC1631 ไมโครคอนโทรลเลอร์ Raspberry [พีดีเอฟ] คู่มือการใช้งาน
SC1631 ไมโครคอนโทรลเลอร์ Raspberry, SC1631, ไมโครคอนโทรลเลอร์ Raspberry, ไมโครคอนโทรลเลอร์

อ้างอิง

ฝากความคิดเห็น

ที่อยู่อีเมลของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องกรอกข้อมูลมีเครื่องหมาย *