ATmega8 เป็นไมโครคอนโทรลเลอร์ AVR 8 บิตที่ออกแบบมาสําหรับงานควบคุมที่เสถียรและมีประสิทธิภาพ มันรวมสถาปัตยกรรมที่ใช้ RISC เข้ากับคุณสมบัติในตัว รวมถึง I/O ดิจิทัล ตัวจับเวลา การสื่อสารแบบอนุกรม และการสนับสนุนอินพุตแบบอะนาล็อก บทความนี้ให้ข้อมูลเกี่ยวกับสถาปัตยกรรม พินเอาต์ ข้อมูลจําเพาะ ระบบนาฬิกา และการจัดการพลังงาน
ค 1. ATmega8 ไมโครคอนโทรลเลอร์โอเวอร์ view
ค 2. การกําหนดค่าและฟังก์ชัน ATmega8 Pinout
ค 3. ข้อมูลจําเพาะทางไฟฟ้าและประสิทธิภาพ ATmega8
ค 4. สถาปัตยกรรมหลักของ ATmega8 และโฟลว์คําสั่ง
ค 5. ระบบนาฬิกา ATmega8 และตัวเลือกออสซิลเลเตอร์
ค 6. รีเซ็ตและความเสถียรของพลังงานใน ATmega8
ค 7. องค์กรหน่วยความจํา ATmega8
ค 8. ตัวจับเวลา ATmega8 และความสามารถของ PWM
ค 9. การแปลงอินพุตแบบอะนาล็อกใน ATmega8
ค 10. การจัดการพลังงานและโหมดสลีปใน ATmega8
ค 11. ประเภทแพ็คเกจ ATmega8 และตัวเลือกทางกายภาพ
ค 12. สรุป
ค 13. คําถามที่พบบ่อย [FAQ]

ภาพรวมไมโครคอนโทรลเลอร์ ATmega8
ATmega8 เป็นไมโครคอนโทรลเลอร์ 8 บิตจากตระกูล AVR ที่ออกแบบมาสําหรับงานควบคุมที่เชื่อถือได้และมีประสิทธิภาพ ใช้สถาปัตยกรรมฮาร์วาร์ดสไตล์ RISC ซึ่งแยกคําสั่งโปรแกรมออกจากหน่วยความจําข้อมูล โครงสร้างนี้ช่วยให้ ATmega8 สามารถดําเนินการตามคําสั่งได้อย่างมีประสิทธิภาพในขณะที่ยังคงรักษาการทํางานที่เสถียรและคาดการณ์ได้
ภายในกลุ่มผลิตภัณฑ์ AVR ATmega8 นําเสนอการผสมผสานที่สมดุลระหว่างขนาดหน่วยความจําและอุปกรณ์ต่อพ่วงในตัว รองรับการควบคุมอินพุตและเอาต์พุตแบบดิจิตอลฟังก์ชั่นจับเวลาการสื่อสารแบบอนุกรมและการประมวลผลสัญญาณอะนาล็อกขั้นพื้นฐาน ความสมดุลนี้ทําให้ ATmega8 เหมาะสําหรับระบบขนาดกะทัดรัดที่ต้องการประสิทธิภาพที่เชื่อถือได้โดยไม่มีความซับซ้อนของฮาร์ดแวร์มากเกินไป
การกําหนดค่าและฟังก์ชัน ATmega8 Pinout

พินเอาต์ ATmega8 กําหนดว่าแต่ละพินรองรับฟังก์ชันไฟฟ้าและการควบคุมเฉพาะในประเภทแพ็คเกจที่มีอยู่อย่างไร พินถูกจัดเป็นพอร์ต B, C และ D ซึ่งจัดการการดําเนินการอินพุตและเอาต์พุตดิจิทัลเป็นหลัก พินจํานวนมากมีฟังก์ชันสํารอง รวมถึงการควบคุมตัวจับเวลา การสื่อสารแบบอนุกรม การขัดจังหวะภายนอก และสัญญาณที่เกี่ยวข้องกับนาฬิกา
พอร์ต C ประกอบด้วยช่องสัญญาณอินพุตแบบอะนาล็อกที่เชื่อมต่อกับตัวแปลงอนาล็อกเป็นดิจิตอลภายใน พินที่เกี่ยวข้องกับพลังงาน เช่น VCC, GND และ AVCC จ่ายพลังงานให้กับส่วนดิจิตอลและอนาล็อกของอุปกรณ์ พินเพิ่มเติม รวมถึง RESET และ AREF รองรับพฤติกรรมการเริ่มต้นที่เสถียรและการควบคุมการอ้างอิงแบบอะนาล็อกที่แม่นยํา เค้าโครงพินที่มีโครงสร้างนี้ช่วยลดความยุ่งยากในการออกแบบระบบและการกําหนดเส้นทางสัญญาณสําหรับ ATmega8
ข้อมูลจําเพาะทางไฟฟ้าและประสิทธิภาพ ATmega8
| พารามิเตอร์ | ค่าทั่วไป | |
|---|---|---|
| ประเภท CPU | AVR RISC 8 บิต | AVR RISC |
| ความถี่สัญญาณนาฬิกาสูงสุด | สูงสุด 16 MHz | |
| แรงดันไฟฟ้าที่ใช้งาน | ~4.5 V – 5.5 V (ขึ้นอยู่กับตัวแปร) | |
| หมุด GPIO | สูงสุด 23 | |
| โปรแกรมแฟลช | 8 KB | |
| SRAM | 1 KB | |
| EEPROM | อีปรอม 512 บ. |
สถาปัตยกรรมหลักของ ATmega8 และโฟลว์การเรียนการสอน
ATmega8 สร้างขึ้นจากซีพียู RISC 8 บิตที่ใช้สถาปัตยกรรมแบบรีจิสเตอร์เพื่อการประมวลผลคําสั่งที่มีประสิทธิภาพ คําสั่งส่วนใหญ่ดําเนินการภายในรอบนาฬิกาเดียว ส่งผลให้เกิดพฤติกรรมการจับเวลาที่คาดเดาได้และการไหลของโปรแกรมที่คงที่ ลักษณะทางสถาปัตยกรรมหลักของ ATmega8 ได้แก่:
• 32 การลงทะเบียนการทํางานเพื่อการเข้าถึงข้อมูลที่รวดเร็ว
•สถาปัตยกรรมฮาร์วาร์ดที่มีโปรแกรมและพื้นที่หน่วยความจําข้อมูลแยกต่างหาก
•เวลาการเรียนการสอนที่สอดคล้องกันสําหรับพฤติกรรมการควบคุมที่เชื่อถือได้
•ชุดคําสั่งที่ปรับให้เหมาะสมสําหรับทั้ง C และการเขียนโปรแกรมแอสเซมบลี
ระบบนาฬิกา ATmega8 และตัวเลือกออสซิลเลเตอร์

ระบบนาฬิกาจะกําหนดความเร็วที่ ATmega8 ทํางานและซิงโครไนซ์กระบวนการภายในทั้งหมด การดําเนินการคําสั่ง ฟังก์ชันจับเวลา และการทํางานของอุปกรณ์ต่อพ่วงขึ้นอยู่กับแหล่งสัญญาณนาฬิกาที่เลือกโดยตรง
ATmega8 รองรับคริสตัลออสซิลเลเตอร์ภายนอกที่เชื่อมต่อกับหมุดนาฬิกา ให้เวลาที่เสถียรและแม่นยํา นอกจากนี้ยังสามารถทํางานโดยใช้แหล่งสัญญาณนาฬิกาภายใน ซึ่งช่วยลดความจําเป็นในการใช้ส่วนประกอบภายนอก การตั้งค่าการกําหนดค่ากําหนดแหล่งสัญญาณนาฬิกาที่ใช้งานอยู่และพฤติกรรมการเริ่มต้น ซึ่งส่งผลต่อความแม่นยําของเวลา การใช้พลังงาน และความเสถียรของระบบ
รีเซ็ตและความเสถียรของพลังงานใน ATmega8
รีเซ็ตกลไก
ระหว่างการเปิดเครื่องและการทํางานปกติ ATmega8/ATmega8A สามารถรีเซ็ตได้จากหลายแหล่ง เพื่อให้รีสตาร์ทจากสถานะที่รู้จักและเสถียรเสมอ การรีเซ็ตเมื่อเปิดเครื่องจะทําให้ MCU ถูกรีเซ็ตในขณะที่ VCC ต่ํากว่าเกณฑ์ POR (VPOT) เมื่อ VCC สูงกว่าระดับนั้น อุปกรณ์จะกด RESET ค้างไว้เพื่อหน่วงเวลาเริ่มต้นที่กําหนดโดยฟิวส์ก่อนที่จะรันโค้ด คุณยังสามารถทริกเกอร์การรีเซ็ตภายนอกได้โดยการดึงพิน RESET ให้ต่ํานานกว่าความกว้างพัลส์ขั้นต่ําที่ระบุ และตัวจับเวลาสุนัขเฝ้าระวังสามารถรีเซ็ต MCU ได้หากหมดเวลาขณะเปิดใช้งาน
การตรวจจับแสงไฟ
เมื่อเปิดใช้งานการตรวจจับไฟดับ (ฟิวส์ BODEN) วงจร BOD บนชิปจะตรวจสอบ VCC ระหว่างการทํางานโดยเปรียบเทียบกับระดับทริกเกอร์ที่เลือกได้ (2.7 V หรือ 4.0 V ผ่านฟิวส์ BODLEVEL) หาก VCC ลดลงต่ํากว่าระดับทริกเกอร์นานพอที่จะรับรู้ได้ (tBOD, ขั้นต่ํา 2 μs) การรีเซ็ตแบบ brown-out จะถูกยืนยันทันที เมื่อ VCC ขึ้นเหนือจุดเดินทางด้านบน MCU จะถูกปล่อยจากการรีเซ็ตหลังจากหมดเวลาเริ่มต้นปกติ (tTOUT) เท่านั้น ฮิสเทรีซิสในตัว (ปกติประมาณ 130 mV) ช่วยป้องกันการรีเซ็ตที่ผิดพลาดที่เกิดจากการจ่ายไฟที่เพิ่มขึ้นอย่างรวดเร็ว
องค์กรหน่วยความจํา ATmega8
| ประเภทหน่วยความจํา | วัตถุประสงค์ |
|---|---|
| แฟลช | จัดเก็บรหัสโปรแกรมที่ใช้โดย ATmega8 |
| SRAM | เก็บข้อมูลชั่วคราวและสแต็กในขณะที่ ATmega8 กําลังทํางานอยู่ |
| EEPROM | อีปรอม จัดเก็บข้อมูลที่ต้องเก็บไว้แม้ว่า ATmega8 จะปิดอยู่ |
ตัวจับเวลา ATmega8 และความสามารถ PWM

ATmega8 รวมตัวจับเวลาฮาร์ดแวร์สามตัวที่จัดการการทํางานตามเวลาโดยไม่ขึ้นกับโปรแกรมหลัก ตัวจับเวลาเหล่านี้ช่วยให้สามารถสร้างความล่าช้า การวัดเวลา และการนับเหตุการณ์ได้อย่างแม่นยําโดยไม่ต้องมีการแทรกแซงของซอฟต์แวร์อย่างต่อเนื่อง
ตัวจับเวลาสามารถสร้างการขัดจังหวะเมื่อตรงตามเงื่อนไขเฉพาะ ทําให้ระบบตอบสนองได้ทันที นอกจากนี้ยังรองรับ Pulse Width Modulation ซึ่งรอบการทํางานของสัญญาณจะถูกปรับภายในระยะเวลาที่กําหนด ความสามารถนี้ช่วยให้ ATmega8 สามารถสร้างสัญญาณเอาต์พุตที่ควบคุมและรักษาพฤติกรรมการจับเวลาที่แม่นยํา
การแปลงอินพุตแบบอะนาล็อกใน ATmega8

• ATmega8 มีตัวแปลงอนาล็อกเป็นดิจิตอลภายในสําหรับการวัดแรงดันไฟฟ้า
•สัญญาณอินพุตแบบอะนาล็อกจะถูกแปลงเป็นค่าดิจิตอลสําหรับการประมวลผล
•พฤติกรรมการแปลงถูกควบคุมผ่านการลงทะเบียนการกําหนดค่าภายใน
• ADC ให้ความละเอียด 10 บิตเพื่อการแสดงดิจิทัลที่แม่นยํา
•รองรับช่องสัญญาณอินพุตแบบอะนาล็อกหลายช่อง
โหมดการจัดการพลังงานและโหมดสลีปใน ATmega8
| โหมดสลีป | การใช้งานหลัก | |
|---|---|---|
| ไม่ได้ใช้งาน | หยุด CPU ในขณะที่ยังคงทํางานอุปกรณ์ต่อพ่วงภายใน | Synology Inc. |
| ปิดเครื่อง | ลดการใช้พลังงานโดยการปิดฟังก์ชันภายในส่วนใหญ่ | MISUMI AG |
| ประหยัดพลังงาน | รักษาการทํางานที่ใช้พลังงานต่ําด้วยการรองรับตัวจับเวลา | |
| ลดเสียงรบกวน ADC | ADC ปรับปรุงประสิทธิภาพของ ADC โดยการลดเสียงรบกวนภายใน | Synology Inc. |
| สแตนด์บาย | ช่วยให้เริ่มต้นได้เร็วขึ้นในขณะที่รักษาระบบนาฬิกาให้พร้อม |
ประเภทแพ็คเกจ ATmega8 และตัวเลือกทางกายภาพ

ATmega8 มีให้เลือกหลายแพ็คเกจเพื่อรองรับเค้าโครงแผงวงจรและวิธีการประกอบที่แตกต่างกัน แม้ว่าฟังก์ชันภายในจะยังคงเหมือนเดิม แต่แต่ละแพ็คเกจจะมีขนาด การจัดเรียงพิน และรูปแบบการติดตั้งแตกต่างกันไป ตัวเลือกแพ็กเกจ ATmega8 ที่มีให้บริการ ได้แก่ :
• PDIP-28 - แพ็คเกจทะลุรูที่มีระยะห่างพินกว้างขึ้นเหมาะสําหรับการจัดการที่ง่ายดายและเสียบเข้ากับซ็อกเก็ตหรือบอร์ดโดยตรง
• TQFP-32 - แพ็คเกจติดตั้งบนพื้นผิวสี่เหลี่ยมจัตุรัสที่แบนซึ่งช่วยลดพื้นที่บอร์ดในขณะที่มีหมุดเพิ่มเติม
• MLF-32 - แพ็คเกจติดตั้งบนพื้นผิวแบบ low-profile ที่ออกแบบมาสําหรับเลย์เอาต์ขนาดกะทัดรัดที่มีพื้นที่บอร์ดจํากัด
สรุป
ATmega8 รวบรวมการออกแบบ CPU ที่เรียบง่ายหน่วยความจําที่เป็นระเบียบตัวเลือกนาฬิกาที่ยืดหยุ่นและคุณสมบัติการรีเซ็ตและพลังงานที่เชื่อถือได้ ตัวจับเวลา ฟังก์ชัน PWM และตัวแปลงอนาล็อกเป็นดิจิตอลรองรับการจับเวลาและการจัดการสัญญาณที่แม่นยํา ด้วยแพ็คเกจหลายประเภทและฟังก์ชันพินที่ชัดเจน ATmega8 นําเสนอโซลูชันไมโครคอนโทรลเลอร์ที่สมบูรณ์และมีโครงสร้างที่ดี
คําถามที่พบบ่อย [FAQ]
ATmega8 ตั้งโปรแกรมอย่างไร?
มีการตั้งโปรแกรมโดยใช้การเขียนโปรแกรมในระบบผ่านพินเฉพาะ
ATmega8 มี bootloader ในตัวหรือไม่?
ไม่ ไม่รวม bootloader ฮาร์ดแวร์เฉพาะ
ATmega8 รองรับอินเทอร์เฟซการสื่อสารใดบ้าง
รองรับ USART, SPI และ I²C ในโหมดมาสเตอร์
กระแสสูงสุดต่อพิน ATmega8 I/O คือเท่าไร?
แต่ละพินมีพิกัดกระแสไฟที่จํากัดและต้องไม่โอเวอร์โหลด
ATmega8 ทํางานในช่วงอุณหภูมิใด
รองรับช่วงอุณหภูมิมาตรฐานและอุตสาหกรรม ขึ้นอยู่กับรุ่น
บิตฟิวส์ใน ATmega8 คืออะไร?
พวกเขากําหนดค่าแหล่งสัญญาณนาฬิกา การเริ่มต้น การรีเซ็ต และพฤติกรรมการใช้พลังงาน