สารบัญ:
- เสบียง
- ขั้นตอนที่ 1: เปิด Keil UVision IDE
- ขั้นตอนที่ 2: เลือกอุปกรณ์
- ขั้นตอนที่ 3: จัดการสภาพแวดล้อมรันไทม์
- ขั้นตอนที่ 4: คัดลอก FreeRTOS ลงในโฟลเดอร์โครงการของคุณ
- ขั้นตอนที่ 5: เพิ่มไฟล์ FreeRTOS ไปยัง Project
- ขั้นตอนที่ 6: กำหนดค่าเส้นทางของไฟล์ส่วนหัว FreeRTOS
- ขั้นตอนที่ 7: เพิ่มไฟล์ "FreeRTOSConfig.h" ไปที่ Project
- ขั้นตอนที่ 8: เพิ่มไฟล์ "main.c" ด้วยเทมเพลตพื้นฐาน
- ขั้นตอนที่ 9: เชื่อมต่อ STM32F407 Discovery Kit ของคุณกับพีซี/แล็ปท็อป
- ขั้นตอนที่ 10: เลือก ST-Link Debugger ใน Compiler Configuration
- ขั้นตอนที่ 11: กำหนดค่า ST-Link Debugger
- ขั้นตอนที่ 12: สร้างและอัปโหลดโค้ด
- ขั้นตอนที่ 13: ไปที่หน้าต่างดีบักและเปิด Serial Monitor
- ขั้นตอนที่ 14: เรียกใช้รหัสเพื่อดู Ouput บน Debug Printf Window
วีดีโอ: การตั้งค่า FreeRTOS ตั้งแต่เริ่มต้นบน STM32F407 Discovery Kit: 14 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:04
การเลือก FreeRTOS เป็นระบบปฏิบัติการแบบเรียลไทม์สำหรับโปรเจ็กต์ฝังตัวของคุณเป็นตัวเลือกที่ดี FreeRTOS เป็นบริการฟรีอย่างแท้จริง และมีคุณสมบัติ RTOS ที่เรียบง่ายและมีประสิทธิภาพมากมาย แต่การตั้งค่า freeRTOS ตั้งแต่เริ่มต้นอาจเป็นเรื่องยากหรืออาจพูดได้ว่าสับสนเล็กน้อย เนื่องจากต้องมีการปรับแต่งบางอย่าง เช่น การเพิ่มไฟล์เฉพาะของไมโครคอนโทรลเลอร์ การตั้งค่าพาธของไฟล์ส่วนหัว ฯลฯ ในคำแนะนำนี้ ฉันจะแนะนำวิธีตั้งค่า FreeRTOS บน รายละเอียดชุด STM32F407 Discovery ของคุณโดยใช้ Kiel uVision IDE
เสบียง
- คุณสามารถหาข้อมูลเพิ่มเติมเกี่ยวกับ FreeRTOS ได้ที่ freertos.org
- คู่มือการดาวน์โหลด FreeRTOS คำแนะนำในการดาวน์โหลดซอร์สโค้ด RTOS
- รายละเอียดทั้งหมดเกี่ยวกับ STM32F407 Discovery Kit เริ่มต้นใช้งาน STM32F407 Discovery KIt
- Github Repository FreeRTOS บน STM32F407 Discovery Kit
ขั้นตอนที่ 1: เปิด Keil UVision IDE
เปิด Keil uVision IDE คลิกที่โปรเจ็กต์แล้วเลือก New uVision Project…จากนั้นเลือกไดเร็กทอรีการทำงานของคุณและตั้งชื่อโปรเจ็กต์ที่คุณต้องการ
ขั้นตอนที่ 2: เลือกอุปกรณ์
เมื่อคุณตั้งชื่อให้กับโปรเจ็กต์แล้ว ขั้นตอนต่อไป คุณต้องเพิ่มอุปกรณ์ เรากำลังเพิ่ม STM32F407VG Micronconroller จาก STMicroelectronics เลือก STM32F407VG จากนั้นคลิก ตกลง
ขั้นตอนที่ 3: จัดการสภาพแวดล้อมรันไทม์
ขั้นตอนต่อไปคือการเลือกองค์ประกอบไลบรารี/ไดรเวอร์ในแท็บจัดการสภาพแวดล้อมรันไทม์ ที่นี่เลือกส่วนประกอบทั้งหมดตามที่แสดงในภาพด้านบน เมื่อคุณตรวจสอบฟิลด์ที่เหมาะสมทั้งหมดแล้ว คลิก แก้ไข จากนั้นคลิก ตกลง
ขั้นตอนที่ 4: คัดลอก FreeRTOS ลงในโฟลเดอร์โครงการของคุณ
ตอนนี้ คุณต้องคัดลอกโฟลเดอร์ FreeRTOS ทั้งหมดลงในโฟลเดอร์โครงการของคุณ
ขั้นตอนที่ 5: เพิ่มไฟล์ FreeRTOS ไปยัง Project
เมื่อคุณคัดลอกโฟลเดอร์ FreeRTOS ภายในโฟลเดอร์โครงการของคุณแล้ว คุณต้องเพิ่มไฟล์ FreeRTOS ที่จำเป็นทั้งหมดลงในโครงการของคุณ
- ใน Keil เลือก Target1 คลิกขวาแล้วเลือกเพิ่มกลุ่มใหม่ เปลี่ยนชื่อกลุ่มนี้เป็น FreeRTOS
- ตอนนี้ คลิกที่กลุ่ม FreeRTOS คลิกขวาเลือก Add Existing files to Group "FreeRTOS…"
- เพิ่มไฟล์ FreeRTOS ทั้งหมดตามที่แสดงในภาพด้านบน
เส้นทางในการค้นหาไฟล์เหล่านี้ในโฟลเดอร์ FreeRTOS คือ:
- ไฟล์: croutine, event_groups, รายการ, คิว, stream_buffer, งานและตัวจับเวลา เส้นทาง: (….\FreeRTOSv10.2.1\FreeRTOS\Source)
- ไฟล์: heap_4 (มีไฟล์การจัดการหน่วยความจำ 4 ไฟล์เพิ่มใครก็ได้) เส้นทาง: (….\FreeRTOSv10.2.1\FreeRTOS\Source\portable\MemMang)
- ไฟล์: port.c (นี่คือไฟล์เฉพาะของ MCU) เส้นทาง: (…\FreeRTOSv10.2.1\FreeRTOS\Source\portable\RVDS\ARM_CM4F)
หมายเหตุ: เวอร์ชัน FreeRTOS อาจมีการเปลี่ยนแปลง เพียงใช้เวอร์ชันล่าสุดที่มี
ขั้นตอนที่ 6: กำหนดค่าเส้นทางของไฟล์ส่วนหัว FreeRTOS
เมื่อคุณเพิ่มไฟล์ต้นทาง FreeRTOS แล้ว คุณต้องบอกคอมไพเลอร์ว่าไฟล์ส่วนหัวนั้นอยู่ที่ใด ดังนั้นเราต้องกำหนดค่าตัวเลือกคอมไพเลอร์
คลิกขวาที่ตัวเลือก Target1 สำหรับเป้าหมาย "Target1.. " เส้นทางรวม C/C++ ตรวจสอบให้แน่ใจว่าคุณได้รวมเส้นทางเหล่านี้:
- รวมโฟลเดอร์ใน FreeRTOS (…\FreeRTOSv10.2.1\FreeRTOS\Source\include)
- ไดเร็กทอรี RVDS (…\FreeRTOSv10.2.1\FreeRTOS\Source\portable\RVDS\ARM_CM4F)
หมายเหตุ: หากคุณมีไฟล์ส่วนหัว ตรวจสอบให้แน่ใจว่าคุณได้รวมพาธของไฟล์ส่วนหัวเหล่านี้ตามที่อธิบายไว้ข้างต้น
ขั้นตอนที่ 7: เพิ่มไฟล์ "FreeRTOSConfig.h" ไปที่ Project
FreeRTOS มีไฟล์ส่วนหัวที่สำคัญหนึ่งไฟล์ชื่อ FreeRTOSConfig.h ไฟล์นี้มีการปรับแต่งเฉพาะแอปพลิเคชัน (ในกรณีของเราเฉพาะสำหรับ Cortex M4F MCU) เพื่อความง่าย ฉันได้คัดลอกไฟล์ FreeRTOSConfig.h เฉพาะ MCU ของเราในไดเร็กทอรี RVDS และในขั้นตอนที่ 6 เราได้เพิ่มเส้นทาง RVDS แล้ว หากคุณกำลังเพิ่มด้วยตนเอง คุณต้องเพิ่มไฟล์นี้ในโครงการของคุณ และตรวจสอบให้แน่ใจว่าคุณได้รวมเส้นทางของไฟล์นี้ตามที่อธิบายไว้ในขั้นตอนที่ 6
ในกรณีที่คุณต้องการเพิ่มไฟล์ FreeRTOSConfig.h ด้วยตนเองในไดเร็กทอรีที่คุณต้องการ เราได้รวมไฟล์นี้ไว้ด้านล่าง
สำหรับข้อมูลเพิ่มเติม คลิกที่นี่ FreeRTOSConfig.h
ขั้นตอนที่ 8: เพิ่มไฟล์ "main.c" ด้วยเทมเพลตพื้นฐาน
- ตอนนี้สร้างกลุ่มผู้ใช้ใหม่ (ฉันได้เปลี่ยนชื่อเป็น "แอปพลิเคชันผู้ใช้")
- เพิ่มไฟล์ C ใหม่ในกลุ่มนี้ (ฉันได้เพิ่มไฟล์ชื่อ main.c)
- นี่คือไฟล์ที่มีฟังก์ชัน main() อยู่ ฉันได้รวมฟังก์ชันและส่วนหัวที่จำเป็นขั้นต่ำทั้งหมดไว้ในไฟล์นี้เพื่อให้โครงการรวบรวมได้สำเร็จ
คุณสามารถค้นหาไฟล์ main.c ที่มีเทมเพลตพื้นฐานด้านล่าง
ขั้นตอนที่ 9: เชื่อมต่อ STM32F407 Discovery Kit ของคุณกับพีซี/แล็ปท็อป
ขั้นตอนที่ 10: เลือก ST-Link Debugger ใน Compiler Configuration
คลิกขวาที่ Target1 จากนั้นคลิกที่ตัวเลือกสำหรับเป้าหมาย "Target1.. " จากนั้นไปที่แท็บ Debug และเลือก ST-Link-Debugger ตามที่แสดงในภาพด้านบน
ขั้นตอนที่ 11: กำหนดค่า ST-Link Debugger
หลังจากเลือก ST-Link Debugger ในขั้นตอนที่ 10 แล้ว ให้คลิกที่ Settings จากนั้นเลือก Trace และตรวจสอบฟิลด์ทั้งหมดตามที่แสดงในภาพด้านบน
ขั้นตอนที่ 12: สร้างและอัปโหลดโค้ด
หลังจากเสร็จสิ้นขั้นตอนทั้งหมดแล้ว ให้สร้างโครงการและตรวจดูให้แน่ใจว่าไม่มีข้อผิดพลาดในโค้ด หลังจากคอมไพล์สำเร็จแล้ว ให้อัปโหลดโค้ดไปยัง Discovery Kit
ขั้นตอนที่ 13: ไปที่หน้าต่างดีบักและเปิด Serial Monitor
หลังจากอัปโหลดไปที่ debug windowviewSerial WindowsDebug(printf) Viewer ดังแสดงในภาพด้านบน
ขั้นตอนที่ 14: เรียกใช้รหัสเพื่อดู Ouput บน Debug Printf Window
ขั้นตอนสุดท้ายคือการรันโค้ดตามที่แสดงในภาพเพื่อดูผลลัพธ์ในหน้าต่าง printf ที่นี่ใน main.c ฉันได้ใช้งาน 2 งานง่าย ๆ ที่เรียกว่า task1 และ task2 งานทั้งสองมีลำดับความสำคัญเท่ากันและพิมพ์ชื่องานเท่านั้น เนื่องจากลำดับความสำคัญเดียวกัน คุณจึงเห็นทั้งสองรายการทำงานและพิมพ์ชื่อได้
แนะนำ:
การตั้งค่า Eclipse & JUnit: 11 ขั้นตอน
การตั้งค่า Eclipse & JUnit: สิ่งที่คุณต้องการ: คอมพิวเตอร์ที่มี Eclipse IDE ไฟล์ Java ที่มีฟังก์ชัน/เมธอดที่คุณต้องการทดสอบ ไฟล์ทดสอบที่มีการทดสอบ JUnit เพื่อรันบนฟังก์ชันของคุณ
DIY Smart Doorbell: รหัส การตั้งค่า และการรวม HA: 7 ขั้นตอน (พร้อมรูปภาพ)
DIY Smart Doorbell: Code, Setup และ HA Integration: ในโครงการนี้ ฉันจะแสดงให้คุณเห็นว่าคุณสามารถเปลี่ยนกริ่งประตูธรรมดาของคุณให้เป็นแบบสมาร์ทได้อย่างไรโดยไม่ต้องเปลี่ยนฟังก์ชันการทำงานปัจจุบันหรือตัดสายไฟ ฉันจะใช้บอร์ด ESP8266 ชื่อ Wemos D1 mini ใหม่กับ ESP8266 หรือไม่ ดู Introdu ของฉัน
DIY: ตรวจสอบแบตเตอรี่รถยนต์ของคุณ: รหัส & การตั้งค่า: 8 ขั้นตอน
DIY: ตรวจสอบแบตเตอรี่รถยนต์ของคุณ: รหัสและการตั้งค่า: ความสามารถในการตรวจสอบแบตเตอรี่รถยนต์ของคุณสามารถป้องกันความประหลาดใจที่ไม่พึงประสงค์ได้ ฉันจะแสดงให้คุณเห็นว่าฉันประกอบฮาร์ดแวร์ โหลดซอฟต์แวร์ และติดตั้งจอภาพในรถของฉันอย่างไร ฉันจะใช้บอร์ด ESP8266 ชื่อ Wemos D1 Mini ที
การตั้งค่า MotionEye OS บน Raspberry Pi Zero W: 5 ขั้นตอน
การตั้งค่า MotionEye OS บน Raspberry Pi Zero W: จากการทดสอบบอร์ด ESP32-CAM ในวิดีโอก่อนหน้านี้ พูดได้เลยว่าคุณภาพวิดีโอไม่ได้ยอดเยี่ยมอย่างแน่นอน เป็นบอร์ดที่มีขนาดกะทัดรัดและคุ้มค่ามากซึ่งยังใช้งานง่ายและเหมาะอย่างยิ่งสำหรับผู้เริ่มต้น แต่
โทรศัพท์มือถือพื้นฐานที่ใช้ STM32F407 Discovery Kit และโมดูล GSM A6: 14 ขั้นตอน (พร้อมรูปภาพ)
โทรศัพท์มือถือพื้นฐานที่ใช้ STM32F407 Discovery Kit และโมดูล GSM A6: คุณเคยต้องการสร้างโครงการฝังตัวที่ยอดเยี่ยมหรือไม่? ถ้าใช่ จะสร้างแกดเจ็ตยอดนิยมและเป็นที่โปรดปรานของทุกคนได้อย่างไร เช่น โทรศัพท์มือถือ!!!. ในคำแนะนำนี้ ฉันจะแนะนำคุณเกี่ยวกับวิธีสร้างโทรศัพท์มือถือพื้นฐานโดยใช้ STM