สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-13 06:58
คู่มือนี้นำเสนอโซลูชันที่สมบูรณ์ในการเขียนโปรแกรม AT89S51 หรือ AT89S52 (นี่คือสิ่งที่ฉันได้ทดสอบ) กับ Arduino มีการตั้งค่าหลายอย่างรวมอยู่ในคู่มือนี้ การตั้งค่าที่ง่ายที่สุดไม่ต้องการซอฟต์แวร์เพิ่มเติมนอกเหนือจาก Arduino IDE
ขั้นตอนที่ 1: ต่อสาย AT89S52 ตามปกติ
คุณสามารถข้ามขั้นตอนนี้ได้หากมีการต่อสายอยู่แล้ว
สิ่งที่คุณมักจะต้องตั้งค่าระบบขั้นต่ำสำหรับ AT89S52:
สำหรับนาฬิกา: 1x Crystal Oscillator, ตัวเก็บประจุน้อยกว่า 33Mhz2x, ประมาณ 33pF ขึ้นอยู่กับคริสตัลที่คุณใช้
สำหรับวงจรรีเซ็ต:ตัวต้านทาน 1x 10kOhm1x 10μF Capacitor
ไมโครคอนโทรลเลอร์สามารถทำงานได้โดยไม่ต้องมีวงจรรีเซ็ต คุณเพียงแค่ต้องรีเซ็ตด้วยตนเองหลังจากเปิดเครื่อง
คุณยังสามารถใช้หนึ่งในบอร์ดระบบขั้นต่ำเหล่านั้นได้ หากเป็นกรณีนี้ ให้ข้ามไปยังขั้นตอนถัดไป
ขั้นตอนที่ 2: ต่อสาย AT89S52 เข้ากับ Arduino
AT89S52 (AT89S51 ด้วย) ใช้ SPI เป็นโปรโตคอล ISP จะเข้าสู่โหมด ISP เมื่อดึงพิน RST สูง
การเดินสายไฟนอกเหนือจากขั้นตอนที่ 1: พิน RST บน 8051 เพื่อพิน 10 บน Arduino; พิน 8 (P1.7) บน 8051 เพื่อพิน 13 บน Arduino (SCK); พิน 7 (P1.6) บน 8051 เพื่อพิน 12 บน Arduino (MISO); พิน 6 (P1.5) บน 8051 เพื่อพิน 11 บน Arduino (MOSI)
ขั้นตอนที่ 3: การเขียนโปรแกรมโดยใช้ซอฟต์แวร์ของฉัน (ข้ามไปยังขั้นตอนที่ 4 หากคุณต้องการใช้ Avrdude)
จากที่นี่:https://github.com/cyj0912/AT89ISP
อัปโหลดภาพสเก็ตช์ที่มีอยู่ในที่เก็บ และคุณสามารถเริ่มเขียนโปรแกรม AT89S51(52) ของคุณได้!
ขั้นตอนที่ 4: การเขียนโปรแกรมโดยใช้ Avrdude
Arduino IDE มาพร้อมกับ avrdude ที่ติดตั้งไว้ล่วงหน้า ยิ่งไปกว่านั้น ArduinoISP ซึ่งมาพร้อมกับ IDE ยังรองรับ AT89S51(AT89S52)
ขั้นแรก อัปโหลดภาพสเก็ตช์ชื่อ "ArduinoISP" ลงใน Arduino ของคุณ สามารถดูสเก็ตช์ได้ใน "ไฟล์" -> "ตัวอย่าง" -> "11. ArduinoISP" ใน Arduino IDE
จากนั้น คุณต้องปรับแต่งไฟล์การกำหนดค่าของ avrdude เพื่อให้รองรับ AT89S51(52) ของเรา คุณสามารถดาวน์โหลดการกำหนดค่าที่แก้ไขแล้วในหน้านี้
ตรวจสอบการเดินสายของคุณอีกครั้ง หากทุกอย่างเรียบร้อยดี ให้เรียกใช้สิ่งต่อไปนี้:
"C:\Program Files (x86)\Arduino\hardware\tools\avr\bin\avrdude.exe" -C E:/avrdude8051.conf -c stk500v1 -P COM3 -p 89s51 -b 19200
(คุณอาจต้องการแทนที่เส้นทางเป็น "avrdude.exe" ด้วยเส้นทางการติดตั้งของ Arduino IDE ของคุณ แทนที่ "COM3" ด้วยชื่อพอร์ตอนุกรมของ arduino ที่คุณใช้เป็นโปรแกรมเมอร์ แทนที่ 89s51 ด้วย 89s52 หากคุณมี AT89S52. แทนที่ "E:/avrdude8051.conf" ด้วยพาธไปยังการกำหนดค่าที่คุณเพิ่งดาวน์โหลด)
ขั้นตอนที่ 5: การเขียนโปรแกรมโดยใช้ Avrdude (ต่อ)
การตั้งค่าของคุณถูกต้องหาก avrdude ส่งออกลายเซ็นอุปกรณ์อย่างถูกต้อง
ในการอัปโหลดโปรแกรม ให้รันคำสั่งในขั้นตอนก่อนหน้าด้วยตัวเลือกพิเศษหนึ่งตัวเลือก:
-U แฟลช:w:YOURPROGRAM. HEX
ในการตรวจสอบให้เรียกใช้ avrdude ด้วย:
-U แฟลช:v:YOURPROGRAM. HEX
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการใช้ avrdude โปรดดูคู่มือได้ที่:
www.nongnu.org/avrdude/user-manual/avrdude_…