บ้านบล็อกคู่มือที่ครอบคลุมเกี่ยวกับไมโครคอนโทรลเลอร์ ATMEGA328P AVR
คู่มือที่ครอบคลุมเกี่ยวกับไมโครคอนโทรลเลอร์ ATMEGA328P AVR
ATMEGA328P เป็นไมโครคอนโทรลเลอร์ที่ใช้กันอย่างแพร่หลายโดยมี pinout อ้างถึงเค้าโครงและคำอธิบายฟังก์ชั่นของหมุดไมโครคอนโทรลเลอร์ความสำคัญของ Pinout ATMEGA328P อยู่ในข้อกำหนดของอินเทอร์เฟซอินพุต/เอาต์พุตของไมโครคอนโทรลเลอร์พลังงานและพินพื้นดินทำหน้าที่เป็นพื้นฐานที่สำคัญสำหรับการออกแบบและการเขียนโปรแกรมวงจรบทความนี้จะสำรวจความรู้ที่เกี่ยวข้องของ ATMEGA328P รวมถึงการกำหนดค่า PIN ลักษณะการทำงานข้อมูลจำเพาะพื้นที่แอปพลิเคชันและความแตกต่างระหว่าง ATMEGA328P และ ATMEGA328PU
ATMEGA328P เป็นไมโครคอนโทรลเลอร์ CMOS 8 บิตที่ใช้พลังงานต่ำตามสถาปัตยกรรม AVR RISC ที่ปรับปรุงแล้วซึ่งมีหมุดและฟังก์ชั่นมากมายพัฒนาโดย Atmel Corporation (ปัจจุบันเป็นส่วนหนึ่งของเทคโนโลยีไมโครชิพ) ใช้เทคโนโลยี CMOS 8 บิตและการออกแบบ CPU RISC เพิ่มประสิทธิภาพและประสิทธิภาพการใช้พลังงานด้วยคุณสมบัติเช่นการนอนหลับอัตโนมัติและเซ็นเซอร์อุณหภูมิภายใน
ชิป ATMEGA328P เสนอการป้องกันภายในและวิธีการเขียนโปรแกรมที่หลากหลายช่วยให้การจัดลำดับความสำคัญของคอนโทรลเลอร์นี้ภายใต้สถานการณ์ที่แตกต่างกันIC นี้ช่วยให้วิธีการสื่อสารที่ทันสมัยด้วยโมดูลอื่น ๆ และไมโครคอนโทรลเลอร์เองด้วยรายละเอียดเหล่านี้การใช้ไมโครคอนโทรลเลอร์ ATMEGA328P จะเพิ่มขึ้นอย่างรวดเร็วทุกวัน
ชิป ATMEGA328P มีหมุดอินพุต/เอาต์พุต (GPIO) 28 ตัว (GPIO) โดยมีการกำหนดค่าการใช้งานของ PIN และ PIN Diagram อย่างละเอียดในแผนภาพต่อไปนี้
- ประสิทธิภาพสูง, ไมโครคอนโทรลเลอร์ 8 บิตพลังงานต่ำ:
-
- สถาปัตยกรรม RISC ขั้นสูง;
-
- กลุ่มหน่วยความจำที่ไม่ระเหยสูง
-
-การรีเซ็ตแบบเปิดเครื่องและการตรวจจับสีน้ำตาลที่ตั้งโปรแกรมได้
-
- ออสซิลเลเตอร์ที่สอบเทียบภายใน
-
- แหล่งข้อมูลขัดจังหวะภายนอกและภายใน
-
-โหมดการนอนหลับหกโหมด: ไม่ได้ใช้งาน, การลดเสียงรบกวน ADC, ประหยัดพลังงาน, พลังงานลง, สแตนด์บายและสแตนด์บายขยาย
- - หน่วยความจำแฟลช: 32K
-
- SRAM: 2KB
-
- หน่วยความจำ EEPROM: 1KB
-
- ความเร็ว CPU: 20MHz
-
- ประเภทอินเตอร์เฟส: I2C, SPI, USART
-
- แรงดันไฟฟ้าของแหล่งจ่ายไฟขั้นต่ำ: 1.8V สูงสุด: 5.5V
-
- แหล่งจ่ายไฟสำหรับอุปกรณ์ติดตั้งพื้นผิว: ตัวยึดพื้นผิว
-
- ประเภทแพ็คเกจ: PDIP/TQFP
-
-จำนวนพิน: 28-PDIP, 32-TQFP
-
- ช่วงอุณหภูมิการทำงาน: -40 ° C ถึง +85 ° C
-
- สายอินพุต/เอาต์พุต: 23
-
- จำนวนอินพุต ADC: 8
-
- ตัวจับเวลา 8 บิต/เคาน์เตอร์: 2
-
- ตัวจับเวลา 16 บิต/เคาน์เตอร์: 1
-
- PWM: 6
-
- โหมดการเขียนโปรแกรม: ISP, IAP, H/PV
-
- โหมดจำลอง: debugwire
ระบบฝังตัวส่วนใหญ่เช่นระบบที่ใช้เทคโนโลยีระบบฝังตัวใช้ ATMEGA328 สำหรับการดำเนินการต่าง ๆ เนื่องจากตัวอย่างที่กว้างขวางและช่วยเหลือวัสดุที่มีอยู่ออนไลน์
มันถูกใช้ใน Arduino ทำให้เป็นหนึ่งในคอนโทรลเลอร์ที่ได้รับความนิยมมากที่สุด
การใช้ ATMEGA328P นั้นคล้ายคลึงกับคอนโทรลเลอร์อื่น ๆ โดยมีศูนย์กลางอยู่ที่การเขียนโปรแกรมในขั้นต้นคอนโทรลเลอร์ถูกตั้งโปรแกรมโดยการเขียนไฟล์โปรแกรมที่เกี่ยวข้องไปยังหน่วยความจำแฟลชเมื่อรหัสนี้ถูกทิ้งตัวควบคุมจะดำเนินการรหัสนี้และให้คำตอบที่เหมาะสม
กระบวนการทั้งหมดของการใช้ ATMEGA328 รวมถึง:
- 1. รายการฟังก์ชั่นที่คอนโทรลเลอร์จะดำเนินการ
-
2. การเขียนฟังก์ชั่นเหล่านี้ในภาษาการเขียนโปรแกรมภายในโปรแกรมการพัฒนาแบบบูรณาการ (IDE)
-
3. การเขียนโปรแกรม ATMEGA328P สามารถทำได้ใน Arduino IDE
-
4. หลังจากเขียนโปรแกรมขั้นตอนต่อไปจะเกี่ยวข้องกับการรวบรวมรหัสเพื่อระบุและแก้ไขข้อผิดพลาด
-
5. ให้ IDE สร้างไฟล์ Hex สำหรับโปรแกรมที่เป็นลายลักษณ์อักษรหลังจากรวบรวม
-
6. ไฟล์ HEX นี้มีรหัสเครื่องที่ควรเขียนในหน่วยความจำแฟลชของคอนโทรลเลอร์
-
7. เลือกอุปกรณ์การเขียนโปรแกรมเพื่อสร้างการสื่อสารระหว่างพีซีและ ATMEGA328P (โดยปกติจะเป็นโปรแกรมเมอร์ SPI ที่สร้างขึ้นสำหรับคอนโทรลเลอร์ AVR)นอกจากนี้คุณยังสามารถใช้บอร์ด Arduino UNO สำหรับการเขียนโปรแกรม ATMEGA328P
-
8. เรียกใช้ซอฟต์แวร์โปรแกรมเมอร์และเลือกไฟล์ Hex ที่เหมาะสม
-
9. ใช้โปรแกรมนี้เพื่อเผาไฟล์ HEX ลงในหน่วยความจำแฟลช ATMEGA328P
-
10. ถอดโปรแกรมเมอร์เชื่อมต่ออุปกรณ์ต่อพ่วงที่เกี่ยวข้องของคอนโทรลเลอร์แล้วเปิดระบบ
สำหรับผู้ใช้ทั่วไปมันยากที่จะเข้าใจว่าทำไมจึงมีเครื่องหมายที่แตกต่างกันบนคริสตัลและเลือกอันไหนมาพยายามชี้แจง:
1. ความแตกต่างระหว่างโมเดลคริสตัลสองรุ่นแรกนั้นน้อยที่สุดในสถานการณ์แอปพลิเคชันแบบดั้งเดิมทำให้สามารถใช้แทนกันได้
2. เมื่อเทียบกับ ATMEGA328 ATMEGA328P จะลดการใช้พลังงานอย่างมีนัยสำคัญดังที่สะท้อนอยู่ในข้อกำหนดทางเทคนิคดังนั้น ATMEGA328P จึงใช้กระบวนการเทคโนโลยีที่ละเอียดยิ่งขึ้นในระยะแรกของการพัฒนาซึ่งมักจะหมายความว่าชิปเหล่านี้มีราคาแพงกว่าไมโครคอนโทรลเลอร์ AVR ที่ใช้พลังงานต่ำที่จำแนกด้วยเทคโนโลยี PICOPOWER ทำให้ ATMEGA328P เหมาะสำหรับอุปกรณ์ที่ใช้พลังงานจากแบตเตอรี่ซึ่งจำเป็นต้องมีมาตรการควบคุมการใช้พลังงาน
3. ลายเซ็นชิปของตัวเลือกที่แตกต่างกันและเมื่ออ่านด้วยโปรแกรมเช่น Avrdude คุณอาจพบข้อความแสดงข้อผิดพลาดสำหรับ ATMEGA328P หากระบุประเภทไมโครคอนโทรลเลอร์อย่างไม่ถูกต้อง
4. มีเพียง Atmega328p เท่านั้นที่รองรับแพ็คเกจ TQFP32 ในขณะที่แพ็คเกจ TQFP328 ไม่เข้ากันซึ่งเกี่ยวข้องกับขนาดคริสตัลสำหรับหลังความหนาของคริสตัลเป็นปัจจัย จำกัด
5. ATMEGA328 ไม่มีฟิวส์ตรวจจับพลังงานต่ำซึ่งสามารถลดการใช้พลังงานและปิดการใช้งาน BOD (ตรวจจับสีน้ำตาลออก)ฟิวส์นี้มีอยู่ในรุ่นที่สองซึ่งเป็นคุณสมบัติที่มองเห็นได้ในเวอร์ชัน Picopower ซีรีย์ที่ลงท้ายด้วย 48pa, 88pa, 168pa, 328p, ฯลฯ และยังใช้กับ BODS และฟิวส์ BODSE
6. มีความแตกต่างเล็กน้อยในระบบคำสั่งที่เกี่ยวข้องกับคำแนะนำการนำทางแม้ว่าในแง่นี้ชิปของทั้งสองตัวแปรสามารถเรียกใช้โปรแกรมที่รวบรวมได้
7. ตัวอักษร "PU" เป็นตัวแทนของประเภทแพ็คเกจของคริสตัลเช่นแพ็คเกจพลาสติก DIP28ATMEGA328 ติดตั้งได้อย่างง่ายดายในบรรจุภัณฑ์ดังกล่าวดังนั้นการเพิ่มคำต่อท้ายนี้นอกจากนี้แพ็คเกจอื่น ๆ จะถูกระบุด้วยชุดตัวอักษรเช่น au, mu ฯลฯ
Arduino ที่ใช้ Atmega328p Mini เป็นตัวเลือกที่ง่ายขึ้นเนื่องจากมันละเว้น USB ไปยังส่วนอนุกรมAtmega328p Pro Mini เป็นที่รู้จักกันทั่วไปว่าเป็นรูปแบบของ ATMEGA328P AUอย่างไรก็ตามสำหรับอุปกรณ์บางอย่างขนาดนี้อาจเล็กเกินไปและโมเดล PU นั้นเหมาะสมกว่า
ไมโครคอนโทรลเลอร์มีการใช้กันอย่างแพร่หลายในอุปกรณ์ต่าง ๆ รวมถึงทรานซิสเตอร์ทดสอบ ATMEGA328P และคอนโทรลเลอร์ ATMEGA328P NANO 3.0
ATMEGA8535, ATMEGA16, ATMEGA32,
ดาวน์โหลดแผ่นข้อมูลสำหรับเทคโนโลยี Microchip ATMEGA328P-PN
1. สถาปัตยกรรม AVR ของ ATMEGA328P คืออะไร?
คำแนะนำในหน่วยความจำของโปรแกรมจะดำเนินการด้วยการจัดท่อระดับเดียวในขณะที่มีการดำเนินการคำสั่งหนึ่งคำสั่งถัดไปจะถูกนำไปใช้ล่วงหน้าจากหน่วยความจำของโปรแกรมแนวคิดนี้ช่วยให้สามารถดำเนินการคำสั่งในทุกรอบนาฬิกา
2. ข้อเสียของ ATMEGA328P คืออะไร?
ข้อ จำกัด ที่สำคัญสำหรับการใช้งานเชิงพาณิชย์คือมันเป็นแหล่งข้อมูลเดียวที่เป็นกรรมสิทธิ์ข้อดี: สิ่งเหล่านี้อาจเป็นเช่น Atmega328 เป็นชิปอเนกประสงค์มันมี ADC, I2C, การสนับสนุน PWM, 40 พิน IC และอื่น ๆจุดด้อย: ATMEGA328 มีราคาแพงเมื่อพิจารณางานเล็ก ๆ
3. Atmega328p แบบอะนาล็อกหรือดิจิตอลหรือไม่?
ไมโครคอนโทรลเลอร์ ATMEL ATMEGA328P ที่ใช้กับ ARDUINO UNO มีโมดูลการแปลงแบบอะนาล็อกเป็นดิจิตอล (ADC) ที่สามารถแปลงแรงดันอะนาล็อกเป็นหมายเลข 10 บิตจาก 0 ถึง 1023 หรือหมายเลข 8 บิตจาก 0 ถึง 255สามารถเลือกโมดูลให้มาจากหนึ่งในหกอินพุตบนชิป
4. ATMEGA328P มี EEPROM หรือไม่?
ไมโครคอนโทรลเลอร์ที่ได้รับการสนับสนุนบนบอร์ด Arduino และ Genuino ต่าง ๆ มีปริมาณ EEPROM ที่แตกต่างกัน: 1024 ไบต์บน ATMEGA328P, 512 ไบต์บน ATMEGA168 และ ATMEGA8, 4 KB (4096 ไบต์) บน ATMEGA1280 และ ATMEGA25600บอร์ด Arduino และ Genuino 101 มีพื้นที่ Eeprom ที่เลียนแบบ 1024 ไบต์