สารบัญ:

วิธีตั้งค่า AVR Programming Environment บน Linux: 5 ขั้นตอน
วิธีตั้งค่า AVR Programming Environment บน Linux: 5 ขั้นตอน

วีดีโอ: วิธีตั้งค่า AVR Programming Environment บน Linux: 5 ขั้นตอน

วีดีโอ: วิธีตั้งค่า AVR Programming Environment บน Linux: 5 ขั้นตอน
วีดีโอ: Setup Eclipse under Ubuntu Linux for AVR Microcontroller 2024, พฤศจิกายน
Anonim
วิธีการตั้งค่า AVR Programming Environment บน Linux
วิธีการตั้งค่า AVR Programming Environment บน Linux

หากคุณต้องการตั้งโปรแกรมไมโครคอนโทรลเลอร์ AVR บน Windows คุณมี Studio แต่บน Linux ทั้งหมดที่เรามีคือ Dude

AVRDUDE เป็นอินเทอร์เฟซบรรทัดคำสั่งสำหรับตั้งโปรแกรมชิป AVR ในตอนแรกอาจเป็นเรื่องยากเล็กน้อยในการตั้งค่า ในคำแนะนำนี้ ฉันจะตั้งค่า AVRDUDE และจะสร้างสภาพแวดล้อมการเขียนโปรแกรม AVR สำหรับเทอร์มินัล Linux

ก่อนอื่นฉันจะติดตั้ง AVRDUDE ทั้งหมดและการพึ่งพาที่จำเป็นทั้งหมด จากนั้นฉันจะสร้างสคริปต์ BASH ที่จะช่วยในการเขียนโปรแกรม

ขั้นตอนที่ 1: รับคอมไพเลอร์และเครื่องมืออื่นๆ ของคุณ

ในการเขียนโปรแกรมชิป AVR อื่น ๆ คุณต้องมีคอมไพเลอร์พิเศษที่รู้จักกันในชื่อ gcc-avr และเครื่องมืออื่น ๆ เช่น binutils-avr, avr-libc, gdb-avr อยู่ท้ายสุด แต่ไม่ท้ายสุด

sudo apt-get ติดตั้ง gcc-avr binutils-avr avr-libc gdb-avr avrdude

ขั้นตอนที่ 2: การสร้างเทมเพลต

การสร้างเทมเพลต
การสร้างเทมเพลต

หากคุณเปิดภาพสเก็ตช์ใหม่ใน Arduino คุณจะได้รับเทมเพลตโค้ดที่มีสองฟังก์ชัน ซึ่งจะช่วยประหยัดเวลาได้มาก

AVRDUDE ใช้ภาษา C และอาจสร้างความรำคาญเล็กน้อยในการสร้างวิธีการหลักทุกครั้งที่คุณต้องการเขียนโค้ด ดังนั้นฉันจะสร้างเทมเพลต AVR

แตะ ~/Templates/AVR.c

ใช้คำสั่งสัมผัสเพื่อสร้างไฟล์เปล่าในโฟลเดอร์เทมเพลต

vi ~/Templates/AVR.c

เปิดไฟล์ด้วยโปรแกรมแก้ไขข้อความที่คุณชื่นชอบ ฉันใช้ vi

#define F_CPU 16000000L

#include #include int main(){ while(){ } คืนค่า 0; }

พิมพ์รหัสด้านบนและบันทึกไฟล์ รหัสนี้จะใช้เป็นเทมเพลตของเรา

หมายเหตุ: ฉันตั้งความถี่สัญญาณนาฬิกาเป็น 16000000 คุณสามารถตั้งค่าความถี่เป็น 8000000 ได้

ขั้นตอนที่ 3: สร้างไฟล์ใหม่

ตอนนี้เรามีเทมเพลตสำหรับรหัส AVR แล้ว สิ่งที่เราต้องทำคือสร้างไฟล์ใหม่ ฉันจะสร้างคำสั่งทุบตีที่จะรับหนึ่งในอาร์กิวเมนต์ (ชื่อไฟล์) จากนั้นสร้างไฟล์นั้นมีเทมเพลต AVR

มาสร้างไฟล์เปล่าที่เรียกว่า "สร้าง"

สัมผัสสร้าง

เปลี่ยนการอนุญาตไฟล์เพราะนี่จะเป็นสคริปต์ BASH

chmod 755 สร้าง

เปิด "สร้าง" ด้วยโปรแกรมแก้ไขข้อความของคุณ ตอนนี้เรามาแก้ไข "สร้าง" เพิ่มคำสั่งต่อไปนี้ทีละบรรทัด

#!/bin/bash

นี่คือเส้นทางไปยังล่ามสำหรับ "สร้าง" ซึ่งเป็นทุบตี

cp ~/Templates/AVR.c /home/$USER

สิ่งนี้จะคัดลอกไฟล์เทมเพลตของเราไปยังโฮมไดเร็กทอรีของผู้ใช้

mv ~/AVR.c $1

จำไว้ว่าฉันบอกว่า "สร้าง" ใช้ในอาร์กิวเมนต์เดียว $1 หมายถึงอาร์กิวเมนต์แรกของคำสั่งของเรา อาร์กิวเมนต์นี้คือชื่อไฟล์ที่ต้องการ สิ่งสุดท้ายที่เราต้องการคือหลายไฟล์ที่มีชื่อไฟล์เดียวกัน คำสั่งเปลี่ยนชื่อไฟล์เป็นอาร์กิวเมนต์ของเรา

วี $1

นี้เป็นทางเลือก แต่จะเป็นการดีที่จะเปิดไฟล์ของเราทันทีหลังจากที่เราสร้างมันขึ้นมา

เราแก้ไขเสร็จแล้ว สร้าง บันทึก และปิด

นี่คือตัวอย่างของการสร้างในการดำเนินการ

./สร้างBlink.c

สิ่งนี้จะสร้างไฟล์ที่เรียกว่า blink.c ไฟล์นี้ควรมีเทมเพลตของ AVR.c

ขั้นตอนที่ 4: มาวิ่งกันเถอะ

เราต้องสร้าง bash script อื่นที่เรียกว่า "run" สคริปต์นี้จะมี 3 อาร์กิวเมนต์ (ไมโครคอนโทรลเลอร์ avr ที่เราใช้ ชื่อไฟล์ และโปรแกรมเมอร์)

มาต่อกันทีละบรรทัด

#!/bin/bash

shebang ของเรา

avr-gcc -Wall -g -0s -mmcu=$1 -o $2.bin $2.c

คำสั่งด้านบนจะคอมไพล์โค้ดของเรา '$1' คืออาร์กิวเมนต์แรกของเรา ซึ่งเป็นไมโครคอนโทรลเลอร์ที่เรากำลังตั้งโปรแกรมอยู่ $2 เป็นอาร์กิวเมนต์ที่สองของเราซึ่งเป็นชื่อไฟล์

avr-objcopy -j.text -j.data -O ihex $2.bin $2.hex

สิ่งนี้จะแปลงไฟล์ที่คอมไพล์ของเราเป็นฐานสิบหก

avrdude -p $1 -c $3 -U flash:w:$2.hex -P usb

ตอนนี้ avrdude เบิร์นโค้ดลงในชิป AVR $3 เป็นอาร์กิวเมนต์ที่ 3 ของเราซึ่งเป็นโปรแกรมเมอร์ที่เราใช้

บันทึกไฟล์ "เรียกใช้"

ให้สิทธิ์ดำเนินการ

chmod 755 วิ่ง

ทีนี้มาทดสอบกัน สมมติว่าเราต้องการอัปโหลด blink.c และเรากำลังใช้บอร์ด Arduino โดยตรง เรากำลังใช้โปรแกรมเมอร์ usbasp ด้วย นี่คือวิธีที่เราใช้สคริปต์ "เรียกใช้"

./run atmega328p กะพริบ USBasp

บอร์ด Arduino มีชิป atmega328p คุณสามารถใช้ไมโครคอนโทรลเลอร์ AVR ที่คุณต้องการได้

อาร์กิวเมนต์ที่สองคือชื่อไฟล์ของคุณ แต่คราวนี้อย่าเพิ่มนามสกุลไฟล์ที่สคริปต์จัดการ

จากนั้นเรามีอาร์กิวเมนต์ที่สามซึ่งเป็นโปรแกรมเมอร์ที่คุณใช้อยู่ ฉันกำลังใช้โปรแกรมเมอร์ USBasp

ขั้นตอนที่ 5: บทสรุป

นี่เป็นวิธีที่ยอดเยี่ยมในการทำให้ประสบการณ์การเขียนโปรแกรม avr ของคุณเป็นแบบอัตโนมัติ คุณสามารถย้ายไฟล์ bash "create" และ "run" ไปที่ "~/.local/bin" เพื่อให้คุณสามารถใช้สคริปต์จากไดเร็กทอรีไฟล์ใดก็ได้ที่คุณเลือก

แนะนำ: