บทความประกอบการเรียนรู้ => ไมโครคอนโทรลเลอร์ (STM32 Arduino Compatible) => ข้อความที่เริ่มโดย: admin ที่ พฤษภาคม 11, 2022, 03:59:59 PM

หัวข้อ: EP1 [STM32 Arduino IDE Getting Started] เตรียมโปรแกรม Arduino IDE
เริ่มหัวข้อโดย: admin ที่ พฤษภาคม 11, 2022, 03:59:59 PM
    บทความนี้เป็นศึกษาไมโครคอนโทรลเลอร์ตระกูลอื่นที่บอร์ดราคาถูกและมีขายในไทยหาซื้อง่าย เริ่มด้วย EP1 เป็นการเตรียมโปรแกรมไว้สำหรับเขียนโค้ด เลือกใช้ ArduinoIDE เนื่องจากส่วนใหญ่จะคุ้นชินกับการใช้โปรแกรมตัวนี้ ไม่ว่าจะเขียนกับ ArduinoUNO, ArduinoNano, ESP8266, NodeMCU, WeMOS D1 mini, ESP32 DOIT DevKit
    STM32 เป็นไมโครคอนโทรลเลอร์ตระกูลหนึ่งผลิตโดยบริษัท STMicroelectronics มีหน่วยประมวลผล ARM® Cortex®-M processor 32-bit ในไลน์การผลิตมีหลากหลายรุ่นให้เลือกใช้ตามลักษณะการใช้งาน สำหรับบทความการทดลองในชุดนี้จะใช้บอร์ด STM32 Blue Pill ในประเทศไทยสามารถหาซื้อได้จะมี 2 รุ่นคือรุ่นที่ใช้ซีพียู  STM32F103C8T6 และ STM32F103C6T6
 
1. ไมโครคอนโทรลเลอร์ ตระกูล STM32 ARM® Cortex®-M processor 32-bit  รุ่นที่ใช้ศึกษาในที่นี้จะเป็นรุ่น STM32F1
(https://www.praphas.com/PhotoForum/STM32/EP1/1.png)

2. รุ่นย่อยของ STM32F1 จะเป็นรุ่น STM32F103 มีคุณสมบัติต่างจากรุ่นอื่นดังรูป
(https://www.praphas.com/PhotoForum/STM32/EP1/2.png)

3. บอร์ด STM32 Blue Pill ในประเทศไทยสามารถหาซื้อได้จะมี 2 รุ่นคือรุ่นที่ใช้ซีพียู  STM32F103C8T6 และ STM32F103C6T6 มีขนาดของหน่วยความจำแฟลชและแรมต่างกันดังรูป
(https://www.praphas.com/PhotoForum/STM32/EP1/3.png)

4. เบอร์ของซีพียู  STM32F103C8T6 แต่ละตัวอักษรจะมีความหมายดังนี้
(https://www.praphas.com/PhotoForum/STM32/EP1/4.png)

5. คุณสมบัติของซีพียู  STM32F103C8T6 และ STM32F103CBT6 มีความแตกต่างกันที่ขนาดของหน่วยความจำแฟลชโดยที่ซีพียู  STM32F103C8T6 จะมีขนาดหน่วยความจำแฟลช 64Kbyte ส่วน STM32F103CBT6 จะมีขนาด 128Kbyte
(https://www.praphas.com/PhotoForum/STM32/EP1/5.png)

6.คุณสมบัติของซีพียู  STM32F103C4T6 และ STM32F103C6T6 มีความแตกต่างกันที่ขนาดของหน่วยความจำแฟลชโดยที่ซีพียู  STM32F103C4T6 จะมีขนาดหน่วยความจำแฟลช 16Kbyte ส่วน STM32F103C6T6 จะมีขนาด 32Kbyte
(https://www.praphas.com/PhotoForum/STM32/EP1/6.png)

7. รูปร่างหน้าตาของบอร์ด STM32 Blue Pill
(https://www.praphas.com/PhotoForum/STM32/EP1/7.png)

8. อาจมีความแต่ต่างอยู่บ้างในบางรุ่น ข้อสำคัญเบอร์ซีพียูต่างกันแต่บอร์ดเหมือนกันต้องสังเกตที่เบอร์บนตัวชิพไมโครคอนโทรลเลอร์
(https://www.praphas.com/PhotoForum/STM32/EP1/8.png)

การติดตั้งโปรแกรม Arduino IDE เพื่อใช้เขียนโปรแกรมลงชิพ STM32
9. เข้าเวปไซต์ https://www.arduino.cc/en/software (https://www.arduino.cc/en/software) เลือกไฟล์ติดตั้งโปรแกรมในที่นี้เลือกชนิดไฟล์ที่เป็นไฟล์ zip
(https://www.praphas.com/PhotoForum/STM32/EP1/9.png)

10. คลิกดังรูปทำการดาวน์โหลดไฟล์
(https://www.praphas.com/PhotoForum/STM32/EP1/10.png)

11. แตกไฟล์ไว้ในไดร์ C:
(https://www.praphas.com/PhotoForum/STM32/EP1/11.png)

12. เข้าในโฟลเดอร์และรันไฟล์โปรแกรม arduino.exe
(https://www.praphas.com/PhotoForum/STM32/EP1/12.png)

13. เข้าเมนูตั้งค่าดังรูป
(https://www.praphas.com/PhotoForum/STM32/EP1/13.png)

14. ขั้นตอนนี้ทำ 2 อย่างในครั้งเดียว
    14.1 ตั้งค่าโปรแกรมให้แสดงหมายเลขบรรทัดเมื่อเขียนโค้ดและแสดงผลเมื่อมีการคอมไพล์หรืออัพโหลดโดยติ๊กเครื่องหมายถูกตามหมายเลข 1,2,3
    14.2 ใส่ลิงค์เพื่อใช้ในการเพิ่มบอร์ด STM32 โดยการคัดลอกลิงค์ข้างล่างนี้ สามารถเกิดได้  2 กรณีคือ
           - กรณีที่ในช่องว่างอยู่ไม่มีลิงค์อะไรอยู่เดิมให้วางได้เลยลงในช่องหมายเลข 4
           - กรณีที่ในช่องไม่ว่างให้คลิกหมายเลข 5
โค๊ด: [Select]
http://dan.drown.org/stm32duino/package_STM32duino_index.json
(https://www.praphas.com/PhotoForum/STM32/EP1/14.png)

15. กรณีที่ในช่องไม่ว่างให้คลิกหมายเลข 5 จากขั้นตอนข้างต้นจะปรากฏหน้าต่างให้กดเอ็นเตอร์ท้ายลิงค์เดิมเพื่อขึ้นบรรทัดใหม่แล้ววางลิงค์ที่คัดลอกมา
โค๊ด: [Select]
http://dan.drown.org/stm32duino/package_STM32duino_index.json
(https://www.praphas.com/PhotoForum/STM32/EP1/15.png)

16. เพิ่มบอร์ด STM32 โดยคลิกตามรูป
(https://www.praphas.com/PhotoForum/STM32/EP1/16.png)

17. พิมพ์ในช่องค้นหาด้วยคำว่า stm31f1 จะปรากฏรายการดังรูปแล้วคลิก Install
(https://www.praphas.com/PhotoForum/STM32/EP1/17.png)

18. รอจนกระทั้งติดตั้งเสร็จ
(https://www.praphas.com/PhotoForum/STM32/EP1/18.png)

19. กรณีที่ทดลองด้วยไมโครคอนโทรลเลอร์เบอร์ STM32F103C8T6 ให้เลือกดังรูป
(https://www.praphas.com/PhotoForum/STM32/EP1/19.png)

20. จากการเลือกข้างบนจะต้องเลือกเบอร์ STM32F103C8T6 อีกเมนูหนึ่งดังรูป
(https://www.praphas.com/PhotoForum/STM32/EP1/21.png)

21. กรณีที่ทดลองด้วยไมโครคอนโทรลเลอร์เบอร์ STM32F103C6T6 ให้เลือกดังรูป
(https://www.praphas.com/PhotoForum/STM32/EP1/20.png)

22. เปิดโปรแกรมตัวอย่างไฟกระพริบเพื่อทดลองคอมไพล์
(https://www.praphas.com/PhotoForum/STM32/EP1/22.png)

23. ทำการคอมไพล์โดยคลิกที่ 1 สังเกตผลการคอมไพล์ 2
(https://www.praphas.com/PhotoForum/STM32/EP1/23.png)