รีวิวไมโครคอนโทรลเลอร์ RP2040
ขนาดที่เหมาะสม
- RP2040 เป็นไมโครคอนโทรลเลอร์ที่ Raspberry Pi ผลิตขึ้น
- มี ราคาถูก และสามารถฝังลงในอุปกรณ์อิเล็กทรอนิกส์สำหรับผู้บริโภคได้อย่างง่ายดาย
- ต่างจากผู้ผลิตรายอื่น ตรงที่มีเพียง รุ่นเดียว ช่วยลดความสับสนในการเลือกใช้
ข้อดีของรุ่นเดียว
- RP2040 มีราคาถูกที่ประมาณ 70 เซนต์
- ด้วยความเป็น รุ่นเดียว ทำให้นักพัฒนาทั่วโลกได้ใช้ชิ้นส่วนแบบเดียวกัน
- สามารถค้นหา ข้อมูล และ เครื่องมือ จำนวนมากได้ง่ายจาก StackExchange, บล็อก, Github เป็นต้น
การออกแบบไมโครคอนโทรลเลอร์
- มี สองคอร์ จึงสามารถใช้เพิ่มได้เมื่อจำเป็น
- มี ขา GPIO 30 ขา
- ลงงบประมาณกับ RAM ภายใน จึงตัดแฟลชเมมโมรีที่เชื่อมต่อภายนอกได้ยากออกไป
- มีฟังก์ชัน Programmable I/O (PIO) ที่ช่วยรัน IO ด้วยจังหวะเวลาที่แม่นยำพร้อมประหยัดเวลา CPU
ตัวอย่างการใช้งาน PIO
- การทำ โปรโตคอลการสื่อสาร (เช่น DShot ESC)
- การทำ USB stack เพื่อให้มี USB controller ตัวที่สอง
- การทำ display driver เพื่อ offload การสื่อสารระหว่างจอแสดงผล+ทัชจาก CPU ได้ทั้งหมด
บูตโหลดเดอร์และความปลอดภัย
- มี บูตโหลดเดอร์แบบอ่านอย่างเดียว ทำให้อัปเดตเฟิร์มแวร์ได้ง่าย
- ลดฟีเจอร์ด้านความปลอดภัยให้เหลือน้อยที่สุด เพื่อลด ความซับซ้อนและต้นทุนด้านประสบการณ์ผู้ใช้
ความเห็นของ GN⁺
- RP2040 มีให้เลือกเป็นรุ่นเดียว จึงได้รับการสนับสนุนอย่างมากจาก ชุมชนนักพัฒนา
- ฟังก์ชัน Programmable I/O (PIO) สามารถนำไปใช้ประโยชน์ได้ในแอปพลิเคชันที่หลากหลาย
- เนื่องจากมี ฟีเจอร์ด้านความปลอดภัย น้อย จึงอาจไม่เหมาะกับโครงการที่ต้องใช้ข้อมูลอ่อนไหว
- ด้วย ราคาถูก และ การออกแบบที่ยืดหยุ่น จึงเหมาะมากสำหรับโครงการเพื่อการศึกษาและงานอดิเรก
- เมื่อเทียบกับ ไมโครคอนโทรลเลอร์ตัวอื่น อาจขาดฟีเจอร์ขั้นสูงบางอย่าง จึงควรตรวจสอบว่าเหมาะกับความต้องการของโครงการหรือไม่
1 ความคิดเห็น
ความคิดเห็นจาก Hacker News
PIO ของ RP2040: PIO ของ RP2040 มอบความสามารถที่ชิปคู่แข่งอย่าง ESP32 ตามไม่ได้ กำลังถูกใช้งานอย่างมากในวงการแฮ็กคอนโซล หวังว่าจะมีการเพิ่มโหมดพลังงานต่ำสำหรับแอปพลิเคชันแบตเตอรี่สำรองในเวอร์ชัน V2
งานประชุมความปลอดภัย RVASec: งานประชุมความปลอดภัย RVASec ใช้ RP2040 ในอิเล็กทรอนิกส์แบดจ์มาโดยตลอด การเขียนซอฟต์แวร์ทำได้สะดวกมาก สามารถดูตัวจำลองแบดจ์ได้ใน GitHub repository
ตัวเลือกแพ็กเกจของ RP2040: แม้จะเป็นไมโครคอนโทรลเลอร์ตัวเดียวกัน แต่มีตัวเลือกแพ็กเกจ 2 แบบ แบบหนึ่งเป็นรีลขนาด 7 นิ้ว บรรจุ 500 ชิ้น อีกแบบเป็นรีลขนาด 13 นิ้ว บรรจุ 3400 ชิ้น
นักทำอิเล็กทรอนิกส์งานอดิเรก: สำหรับนักทำอิเล็กทรอนิกส์งานอดิเรก บอร์ด RP2040 มีราคาถูกและเข้าถึงง่าย บอร์ดอย่าง Raspberry Pi Pico มีราคา $5 และยังมีรุ่นที่รวม WiFi ด้วย RP-2040 Zero มีขนาดเล็กกว่าและมีขา IO น้อยกว่า แต่มี USB-C และปุ่มรีเซ็ต
การเปรียบเทียบ RP2040 กับ ESP32: RP2040 เป็นชิปที่เรียบง่าย ขณะที่ ESP32 มาพร้อมอุปกรณ์ต่อพ่วงหลากหลาย มีตัวเลือกมากมาย เช่น WiFi, Bluetooth, ตัวควบคุมแบตเตอรี่, Ethernet, จอแสดงผล, คอนเน็กเตอร์กล้อง เป็นต้น นอกจากนี้ ESP32 ยังมีตัวเลือก CPU หลายแบบ รวมถึงรุ่นย่อย C6 ที่เปลี่ยนไปใช้ ISA แบบ RISC-V
ตลาดคอนโทรลเลอร์แบบปรับแต่งเอง: RP2040 ช่วยกระตุ้นตลาดคอนโทรลเลอร์แบบปรับแต่งเอง ด้วยเฟิร์มแวร์เกมแพดโอเพนซอร์ส gp2040 ทำให้สามารถซื้อคอนโทรลเลอร์คุณภาพดีได้ในราคาถูก เหล่านักทำงานอดิเรกกำลังผลิต PCB RP2040 สำหรับโปรเจกต์และไอเดียคอนโทรลเลอร์ต่าง ๆ
การย้ายจาก ESP32 ไป RP2040: เหตุผลที่ย้ายจาก ESP32 มาใช้ RP2040 คือมันเชื่อถือได้มากกว่าและมีเอกสารที่ดีกว่า ข้อกังวลเดียวคือหาบอร์ด RP2040 ที่ติดตั้ง SPIRAM ได้ยาก อย่างไรก็ตาม สภาพแวดล้อมการพัฒนา C นั้นยอดเยี่ยม ทำให้ใช้หน่วยความจำได้อย่างมีประสิทธิภาพ
ข้อดีและข้อเสียของ RP2040: เคยใช้ RP2040 ในหลายโปรเจกต์ แต่ไม่ได้เหมาะกับทุกโปรเจกต์ ชอบไมโครคอนโทรลเลอร์ที่ใช้พลังงานแบตเตอรี่น้อยกว่า เพราะการใช้พลังงานสำคัญกว่าต้นทุน
การย้ายไป ESP32-S3: ย้ายจาก RP2040 ไปใช้ ESP32-S3 เพราะดราม่ากับ PlatformIO โดย ESP32-S3 มาในรูปแบบโมดูล จึงลดความซับซ้อนในการติดตั้งใช้งานได้มาก RP2040 ต้องใช้ชิ้นส่วนจำนวนมากกว่านั้น นอกจากนี้ ESP32-S3 ยังมีขา GPIO 14 ขาที่รองรับ capacitive touch
เครื่องสถานะ PIO: คิดว่าเครื่องสถานะ PIO มีเอกลักษณ์และน่าสนใจ ชอบที่ RP2040 ไม่ได้ถูกทำการตลาดว่าเป็นโปรเซสเซอร์ 10 คอร์ การแฟลชแบบ UF2 ช่วยมือใหม่ได้มาก ข้อเสียคือการใช้พลังงาน