สารบัญ:
วีดีโอ: STM32F407VET6 Black Board และ MicroPython: 3 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:04
การแนะนำ
ฉันเจอบอร์ด STM32F407 ราคาถูกจาก AliExpress
ฉันตัดสินใจลองใช้ MicroPython
STM32F407 เป็นคอนโทรลเลอร์เดียวกันกับ STM32F405 ที่ใช้ใน
pyboard ดั้งเดิม แต่ปรากฏบนหน้าดาวน์โหลด MicroPython มีไฟล์ DFU สำหรับบอร์ดค้นพบ STM32F407 ไฟล์นั้นที่ฉันลองบนกระดานดำและมันใช้งานได้ดียกเว้นบางฟังก์ชั่น prom 'pyb' library
ดังนั้นจึงเป็นการดีกว่าที่จะใช้ไลบรารี 'เครื่อง' ให้มากที่สุด
หากคุณไม่ต้องการรอสองสามสัปดาห์ก่อนที่กระดานดำจะมาถึง ให้สั่งซื้อกระดานค้นพบดั้งเดิม แต่ราคาแพงกว่าสองเท่า
มีคำแนะนำวิธีการติดตั้ง MicroPython บน STM32F4Discovery ด้วย
เสบียง
STM32F407VET6 กระดานดำพัฒนา
ขั้นตอนที่ 1: ซอฟต์แวร์
ดาวน์โหลดไฟล์ DFU สำหรับบอร์ด STM32F4 Discovery ดาวน์โหลดเครื่องมืออัปเกรดเฟิร์มแวร์อุปกรณ์ DfuSe USB จากเว็บไซต์ STMicroelectronics ในการทำเช่นนั้น คุณต้องลงทะเบียนบัญชีฟรี ติดตั้งเครื่องมือ DfuSe บนคอมพิวเตอร์ของคุณ
ขั้นตอนที่ 2: เตรียมบอร์ดให้พร้อม
มีจัมเปอร์สองตัวบนบอร์ดเชื่อมต่อพิน BT0 และ BT1 กับ GND ย้าย BT0 ไปที่ 3.3V (ดูรูป) เปิดเครื่องมือ "DfuSe Demonstration" เชื่อมต่อบอร์ดกับ USB คุณควรเห็นในกล่องมุมซ้ายบน ''อุปกรณ์ STM ในโหมด USB'' กว่าที่ด้านล่างขวาคลิก ''เลือก'' เลือกไฟล์ DFU ที่ดาวน์โหลดแล้วคลิก ''อัปเกรด'' ย้ายจัมเปอร์ BT0 กลับไปที่ GND แล้วต่อสาย USB ใหม่ กรวด PYBFLASH ควรปรากฏบนระบบไฟล์ของคุณ คุณสามารถอ่าน MicroPython PDF ต้นฉบับ "การดูแลและให้อาหารงูเหลือมที่สวนสัตว์เรดมอนด์"
ขั้นตอนที่ 3: เริ่มการเขียนโปรแกรม
ตอนนี้คุณสามารถเริ่มสนุกกับ MicroPython ได้แล้ว คุณสามารถเขียนโปรแกรมของคุณในโปรแกรมแก้ไขข้อความ แม้แต่ Windows Notepad ฉันชอบ Pyton 3 IDE ดั้งเดิม เปิดไดรฟ์ PYBFLASH และเปิด main.py จากมันในโปรแกรมแก้ไขข้อความของคุณ มาเริ่มกันด้วยโปรแกรม LED Blink แบบง่ายๆ มี LEDS สองดวงบนบอร์ดที่มีเครื่องหมาย D2 และ D3 เชื่อมต่อกับพิน PA6 และ PA7 ของคอนโทรลเลอร์ เขียนโปรแกรมง่ายๆ นี้ในโปรแกรมแก้ไขข้อความของคุณ:
เครื่องนำเข้าเวลา #import micropython library
led = machine. Pin('A6', machine. Pin. OUT) #กำหนดพิน PA6 เป็นเอาต์พุต
ในขณะที่ True: #อนันต์ลูป
led.low() #สวิตช์ led on
time.sleep(1) #ปล่อยให้ led เป็นหนึ่งวินาที
led.high() #สวิตช์ปิดไฟ
time.sleep(1) #ปล่อยมันไปหนึ่งวินาที
บันทึกไฟล์ main.py ลงในบอร์ดของคุณ กดปุ่มรีเซ็ต LED D2 ควรเริ่มกะพริบ วิธีที่ดีที่สุดในการรีเซ็ตบอร์ดคือจากบรรทัดคำสั่งใน REPL สำหรับการดาวน์โหลดและติดตั้ง Putty ในการใช้ Putty รับหมายเลขพอร์ต COM สำหรับบอร์ดจากแผงควบคุม>ตัวจัดการอุปกรณ์ เมื่อคุณเชื่อมต่อ ใช้แป้นพิมพ์ลัด ' CTRL' + 'C' เพื่อหยุดการทำงานของโปรแกรมก่อนที่จะบันทึกโปรแกรมใหม่และ 'CTRL' + 'D' เพื่อรีสตาร์ทบอร์ดหลังจากบันทึกโปรแกรม ฉันพบว่าเป็นวิธีที่ปลอดภัยที่สุดในการบันทึกและรีสตาร์ทโปรแกรม MicoPython แทนที่จะตัดการเชื่อมต่อและเชื่อมต่อสาย USB ใหม่ (ในระหว่างกระบวนการนี้ ไดรฟ์ PYBFLASH อาจเสียหายได้) ในตอนท้าย เรามาทำให้ LEDS D2 และ D3 กะพริบสลับกันและเร็วขึ้นกัน:
เครื่องนำเข้า เวลา
led = machine. Pin ('A6', machine. Pin. OUT)
led1 = machine. Pin ('A7', machine. Pin. OUT)
ในขณะที่ทรู:
led.low()
เวลานอน(0.5)
led.สูง()
เวลานอน(0.5)
led1.low()
เวลานอน(0.5)
led1.สูง()
เวลานอน(0.5)
ป.ล. คุณสามารถรับข้อมูลเพิ่มเติมเกี่ยวกับ STM32F407 Black board บน GitHub และหากคุณคุ้นเคยกับ Linux คุณสามารถคอมไพล์ไฟล์ DFU สำหรับบอร์ดนี้ได้ ฉันไม่ได้ลอง ฉันไม่มีเครื่อง Linux ที่ทำงานอยู่ในขณะนี้
ขอให้สนุกกับ MicroPython !
แนะนำ:
ติดตาม: ศูนย์สื่อขั้นสูงพร้อม Odroid N2 และ Kodi (รองรับ 4k และ HEVC): 3 ขั้นตอน
ติดตาม: Advanced Media Center พร้อม Odroid N2 และ Kodi (รองรับ 4k และ HEVC): บทความนี้เป็นบทความต่อจากบทความก่อนหน้าของฉันที่ประสบความสำเร็จค่อนข้างมากเกี่ยวกับการสร้างศูนย์สื่ออเนกประสงค์ โดยอ้างอิงจาก Raspberry PI ที่ได้รับความนิยมมากในตอนแรก แต่ ในภายหลัง เนื่องจากไม่มีเอาต์พุตที่สอดคล้องกับ HEVC, H.265 และ HDMI 2.2 จึงมีสวิตช์
Blinds Control ด้วย ESP8266, Google Home และ Openhab Integration และ Webcontrol: 5 ขั้นตอน (พร้อมรูปภาพ)
การควบคุมมู่ลี่ด้วย ESP8266, Google Home และ Openhab Integration และ Webcontrol: ในคำแนะนำนี้ ฉันจะแสดงให้คุณเห็นว่าฉันเพิ่มระบบอัตโนมัติให้กับมู่ลี่ของฉันอย่างไร ฉันต้องการเพิ่มและลบระบบอัตโนมัติได้ ดังนั้นการติดตั้งทั้งหมดจึงเป็นแบบหนีบ ส่วนหลักคือ: สเต็ปเปอร์มอเตอร์ ตัวขับสเต็ปควบคุม bij ESP-01 เกียร์และการติดตั้ง
DIY IBeacon และ Beacon Scanner ด้วย Raspberry Pi และ HM13: 3 ขั้นตอน
DIY IBeacon และ Beacon Scanner ด้วย Raspberry Pi และ HM13: Story A beacon จะส่งสัญญาณอย่างต่อเนื่องเพื่อให้อุปกรณ์บลูทู ธ อื่น ๆ รู้ว่ามีอยู่ และฉันอยากได้บีคอนบลูทูธเพื่อติดตามกุญแจมาตลอด เพราะฉันลืมเอามันมาเหมือน 10 ครั้งในปีที่แล้ว และฉันก็เกิดขึ้น
RuuviTag และ PiZero W และ Blinkt! เทอร์โมมิเตอร์แบบ Bluetooth Beacon: 3 ขั้นตอน (พร้อมรูปภาพ)
RuuviTag และ PiZero W และ Blinkt! เครื่องวัดอุณหภูมิที่ใช้ Bluetooth Beacon: คำแนะนำนี้อธิบายวิธีการอ่านข้อมูลอุณหภูมิและความชื้นจาก RuuviTag โดยใช้ Bluetooth กับ Raspberry Pi Zero W และเพื่อแสดงค่าเป็นเลขฐานสองบน Pimoroni กะพริบตา! pHAT.หรือเรียกสั้นๆ ว่า จะสร้างสถานะอย่างไร
รางปลั๊กไฟอัจฉริยะที่ใช้ Beaglebone Black และ OpenHAB: 7 ขั้นตอน (พร้อมรูปภาพ)
รางปลั๊กอัจฉริยะจาก Beaglebone Black และ OpenHAB: !!!!! การเล่นกับไฟหลัก (110/220V) นั้นอันตราย โปรดใช้ความระมัดระวังให้มาก !!!!!มีการออกแบบรางปลั๊กไฟอัจฉริยะบางแบบที่มีอยู่ตาม "Raspberry Pi" และ Arduinos สองตัวซึ่งแสดงในรูปภาพ "ดีไซน์เก่า".เด