การโปรแกรมไมโครคอนโทรลเลอร์ ATMEGA8 ด้วยเครื่องโปรแกรม PX-4000
ไมโครคอนโทรลเลอร์ AVR เบอร์ ATMEGA8 เป็นไมโครคอนโทรลเลอร์ที่ได้รับความนิยมสูง เมื่อต้องการโปรแกรมข้อมูลลงไปในหน่วยความจำแฟลชภายในตัวมัน ขั้นตอนง่ายที่สุดก็คือใช้เครื่องโปรแกรมที่โปรแกรมในโหมด ISP ในที่นี้แนะนำรุ่น PX-4000 ก่อนอื่นเตรียมของก่อน
เครื่องโปรแกรม PX-4000
เครื่องโปรแกรม PX-4000 เป็นเครื่องโปรแกรมไมโครคอนโทรลเลอร์ AVR แบบ ISP ที่มีขนาดเล็กมาก โดยสามารถเชื่อมต่อกับพอร์ต USB ของคอมพิวเตอร์ได้โดยตรง เมื่อมีการใช้งานครั้งแรกกับเครื่องคอมพิวเตอร์จะต้องติดตั้งไดรเวอร์ของตัวแปลง USB to Serial ลงไปยังเครื่องคอมพิวเตอร์ก่อน (แนะนำให้ทำตามขั้นตอนในคู่มือของ PX-4000)
รายการอุปกรณ์
1. เครื่องโปรแกรม PX-4000
2. โค้ดไฟล์ .hex ที่ต้องการโหลดไปยังไมโครคอนโทรลเลอร์
3. ซอฟต์แวร์ AVRProg ซึ่งมาพร้อมกับซอฟต์แวร์ AVRStudio
4. แหล่งจ่ายไฟตรว 3.6-5V (ตามตัวอย่างจะใช้ถ่าน AA 3 ก้อนเป็นไฟเลี้ยง
5. แผ่นเบรดบอร์ดสำหรับต่อวงจร
6. สายไฟสำหรับต่อวงจร
7. คอนเน็กเตอร์ IDC 10 ขาตัวผู้แถวคู่ สำหรับเชื่อมต่อกับคอนเน็กเตอร์ของเครื่องโปรแกรม PX-4000 หรือเครื่องโปรแกรมตัวอื่นๆ ตามมาตรฐาน ISP ของ ATMEL
เตรียมคอนเน็กเตอร์สำหรับเชื่อมต่อกับเครื่องโปรแกรม PX-4000
เนื่องจากต้องการที่จะนำไมโครคอนโทรลเลอร์มาโปรแกรมบนโปรโต้บอร์ด จึงต้องทำสายเพื่อใช้เชื่อมต่อ โดยบัดกรีสายไฟสำหรับต่อวงจรเข้ากับคอนเน็กเตอร์ IDC 10 ขาตัวผู้แถวคู่ ตามตำแหน่งขาแสดงการเชื่อมต่อ หลังจากบัดกรีแล้วจะได้คอนเน็กเตอร์สำหรับเชื่อมต่อจากเครื่องโปรแกรม PX-4000 กับโปรโต้บอร์ดในลักษณะดังรูป
ต่อวงจรเข้ากับ ATMEGA8 ดังรูป
หลังจากนั้นจะต้องนำอุปกรณ์ต่างๆ ที่เตรียมไว้ตามวงจรดังรูปลงในแผ่นเบรดบอร์ด อย่าลืมจ่ายไฟให้กับตัวบอร์ด ตามตัวอย่างใช้ไฟจากแบตเตอรี่ขนาด AA จำนวน 3 ก้อน
ขั้นตอนการโปรแกรม
1. เปิดโปรแกรม AVRStudio ไปที่เมนู Tools เรียก AVRProg ถ้าการต่อวงจรถูกต้องจะปรากฏหน้าต่าง AVRProg ดังแสดงในรูป
2. เลือกไฟล์ที่ใช้ในการโปรแกรมเป็นนามสกุล .hex และเลือกเบอร์ของไมโครคอนโทรลเลอร์เป็นเบอร์ ATmega8
3. สำหรับการใช้งานครั้งแรกค่าฟิวส์ของ ATMEGA8 อาจจะไม่เป็นตามต้องการ เช่น ออสซิลเลเตอร์เป็นแบบภายในความถี่ 1 MHz ถ้าต้องการเปลี่ยนเป็นค่าอื่นจะต้องเข้าที่หัวข้อ Advance (ขั้นตอนนี้ต้องใช้ความระมัดระวัง ถ้าการกำหนดค่าผิดพลาด ซอฟต์แวร์ AVRProg จะไม่สามารถติดต่อกับ ATmega8 ได้อีก โดยห้ามเอาเครื่องหมายหน้า SPI Enable ออกอย่างเด็ดขาด) ตัวอย่างในรูปเป็นการใช้ออสซิลเลเตอร์จากภายในความถี่ 8MHz ให้กดปุ่ม Write เพื่อเขียนค่าฟิวส์ลงไป
4. ขั้นตอนสุดท้ายคือการกดปุ่ม Program (ในส่วนของหน่วยความจำ Flash) โปรแกรมที่เราเขียนขึ้นก็จะทำงานตามต้องการ