Pico บอร์ดไมโครคอนโทรลเลอร์ขนาดจิ๋ว จาก Raspberry Pi Foundation

The Raspberry Pi Pico is a microcontroller board based on the Raspberry Pi RP2040 microcontroller chip

ติดตั้งโปรเซสเซอร์ RP2040 ออกแบบโดย Raspberry Pi Foundation ช่วยให้คุณสามารถออกแบบคอนโทรลเลอร์ที่เฉพาะเจาะจงและปรับแต่งได้อย่างสมบูรณ์แบบมากขึ้น สเปคโดยทั่วไปของชิป RP2040 นั้นเป็นชิป Cortex-M0+ ที่มีผู้ผลิตอื่นทำชิปขายอีกมาก แต่ความพิเศษของ RP2040 กลับเป็นการฝัง UF2 bootloader เข้าไว้ในรอมขนาด 16KB ในชิปโดยตรง ทำให้นักพัฒนาสามารถอัพโหลดเฟิร์มแวร์ใหม่ได้เสมอ โดยให้นักพัฒนาสามารถอัพโหลดเฟิร์มแวร์ผ่านทาง USB (หรือ serial/UART ที่แปลงเป็น USB)

ชิป RP2040 ฝัง UF2 bootloader ไว้ในรอม และมีขา BOOTSEL สำหรับเลือกว่าจะบูตเข้ารอม UF2 bootloader หรือเข้าเฟิร์มแวร์ปกติที่นักพัฒนาอัพโหลดขึ้นมา ทำให้ไม่มีทาง brick ตัวชิปจากซอฟต์แวร์ได้เลย

ในประกาศเปิดตัว Raspberry Pi Pico ทาง Raspberry Pi ยังประกาศเปิดตัวบอร์ดจากผู้ผลิตรายอื่นๆ อีกจำนวนมาก เช่น Adafruit, Arduino, Pimoroni, SparkFun เป็นต้น การเปิดตัว RP2040 ครั้งนี้คงเป็นจุดสำคัญที่ผู้ผลิตจะให้ความสำคัญกับนักพัฒนารายย่อยมากขึ้นจนฝังฟีเจอร์ไว้ในตัวไมโครคอนโทรลเลอร์เช่นนี้

คุณสมบัติทางเทคนิค

  • ติดตั้งชิปไมโครคอนโทรลเลอร์ RP2040 จาก Raspberry Pi พร้อม flash ขนาด 2 MByte
  • โปรเซสเซอร์เป็น Arm Cortex M0+ 2 + @ 133 MHz, SRAM ขนาด 264K
  • โหมดบูตที่เก็บข้อมูล USB ขนาดใหญ่พร้อมรองรับ UF2 สำหรับการเขียนโปรแกรมแบบลากและวาง
  • มีโหมดประหยัดพลังงานในแบบสลีป (sleep) และดอร์แมนต์ (dormant)
  • มีตัวตรวจจับอุณหภูมิภายในชิป
  • พอร์ต 2×SPI, 2×I2C, 2×UART, 3×12-bit ADC, 16×controllable PWM
  • ตัวควบคุม 1 × USB 1.1 และ PHY พร้อมการสนับสนุนโฮสต์และอุปกรณ์
  • เครื่องสถานะ I / O (PIO) ที่ตั้งโปรแกรมได้ 8 × Raspberry Pi

UF2 bootloader

ไมโครซอฟท์ออกเฟิร์มแวร์ UF2 ให้กับชิป SAMD21 เพื่อให้วินโดวส์มองไมโครคอนโทรลเลอร์กลายเป็นไดร์ฟ USB ได้ในตัว ทำให้นักพัฒนาวางเฟิร์มแวร์ลงบนไมโครคอนโทรลเลอร์ได้ง่ายขึ้น

ข้อควรระวังของการใช้เฟิร์มแวร์ bootloader สำหรับรอรับเฟิร์มแวร์ใหม่จากนักพัฒนาเช่นนี้คือตัวเฟิร์มแวร์ใหม่ของนักพัฒนาต้องระวังไม่ไปเขียนทับเฟิร์มแวร์ bootloader เดิม ตัวเฟิร์มแวร์ที่คอมไพล์ออกมาจะต้องวางตำแหน่งของเฟิร์มแวร์ต่างจากเฟิร์มแวร์ปกติ เว้นพื้นที่ไว้ประมาณ 16KB เพื่อให้บูตจาก bootloader ก่อนเสมอ หากผิดพลาดไปหลายครั้งก็ทำให้ bootloader พังจน brick และต้องแก้ไขด้วยการใช้ฮาร์ดแวร์ debugger มาอัพโหลดเฟิร์มแวร์ใหม่

ข้อมูลอ้างอิง

  • Datasheet: https://datasheets.raspberrypi.org/pico/pico-datasheet.pdf
  • Getting Start: https://www.raspberrypi.org/documentation/pico/getting-started/
  • https://www.blognone.com/node/120782
  • https://inex.co.th/home/product/raspberry-pi-pico/

Be the first to comment

Leave a Reply

Your email address will not be published.


*