دوستان امیدوارم حال همتون عالی باشه. در این آموزش، نگاهی به معرفی دقیق Atmega128 خواهیم داشت. Atmega128 یک میکروکنترلر AVR 64 پایه ای با پردازشگر هشت بیتی است که توسط Atmel (طراح و سازنده مواد نیمه هادی های مختلف) ساخته شده است. این میکروکنترلر بر اساس معماری RISC مخفف (Reduced Instruction Set Computing) طراحی شده است که از 133 دستورالعمل قدرتمند تشکیل شده و دستورات عمدتاً در یک سیکل اجرا می شوند. حداکثر فرکانسی که این میکرو کار می کند 16 مگاهرتز است. حافظه فلش این میکروکنترلر ظرفیت برنامه کاربردی تا 128 کیلوبایت را دارد. 

برای آموزش میکروکنترلرهای AVR به لینک

http://smartcomp.ir/product-4 و

http://smartcomp.ir/product-6 مراجعه کنید.

مقدمه ای بر Atmega128

 Atmega128 یک میکروکنترلر 64 پایه ای با پردازشگر هشت بیتی است که توسط Atmel (طراح و سازنده مواد نیمه هادی های مختلف است) ساخته شده است. این یک میکروکنترلر در دسته میکروکنترلرهای AVR با معماری RISC (Reduced Instruction Set Computing) با عملکرد بالا و مصرف انرژی کم است.

این میکروکنترلر دارای 128 کیلو بایت حافظه فلش ISP (In-system Programming) است که دارای قابلیت خواندن و نوشتن است.

  این ماژول از یک 4 کیلو بایت EEPROM (حافظه فقط خواندنی قابل برنامه ریزی با قابلیت پاک کردن الکتریکی)، 4 کیلوبایت SRAM (رم استاتیک)، 53 خط ورودی و خروجی قابل برنامه ریزی، سی و دو رجیستر عمومی، یک JTAG (Joint Test Action Group) که برای اسکن برنامه و اصلاح و یا اشکال زدایی داخلی استفاده می شود، تشکیل شده است. 

همچنین شامل رابط های داخلی و خارجی، USART قابل برنامه ریزی متوالی (گیرنده و فرستنده ناهمزمان)، یک مبدل ده بیتی آنالوگ به دیجیتال 8 کاناله، دو تایمر 16 بیتی و دو تایمر 8 بیتی با نوسان ساز داخلی، اسلات متوالی SPI (رابط جانبی سریال)  است.

با ولتاژ 4.5 تا 5.5 ولت کار می کند.

AVR ها از آنجایی که حافظه برنامه بسیار قابل توجهی دارد، بنابراین می تواند به راحتی با شبکه های یکپارچه مختلف کار کند.

از آنجایی که این ماژول از 53 پایه ورودی /خروجی تشکیل شده است، می‌توانیم آن را به راحتی با هر قطعه دیگر و بدون زحمت وصل کنیم.

این میکروکنترلر دارای یک تایمر ناظر برای بازنشانی ماژول در هنگام خطا دارد، بنابراین می توان از آن در شبکه های مختلف برای بازنشانی خطا بدون هیچ گونه دخالت انسانی استفاده کرد. (تایمر سگ نگهبان)

introduction to ATmega128, ATmega128 features, ATmega128 pinout, ATmega128 block diagram, ATmega128 applications

پایه های اصلی Atmega128 در زیر توضیح داده شده اند.

1PENفعال ساز برنامه ریزی
2PE0
RXD
PDI
پایه I/O،
 پایه دریافت سریال (USART)
3PE1
TXD PDO
پایه I/O، پایه ارسال سریال (USART)
4PE2
 XCK0
 AIN0
پایه I/O، پایه کلاک ارتباط سریال USART، پایه مقایسه کننده آنالوگ مثبت
5PE3
OC3A
AIN1
پایه I/O، پایه اختصاص یافته تایمر (کانال PWM)، پایه مقایسه کننده آنالوگ مثبت
6PE4
OC3B
INT4
پایه I/O، پایه اختصاص یافته تایمر (کانال PWM)، اینتراپت   خارجی
7PE5
OC3C
INT5
پایه I/O، پایه اختصاص یافته تایمر (کانال PWM)، اینتراپت   خارجی
8PE6
T3
INT6
پایه I/O، تایمر3، اینتراپت   خارجی
9PE7
ICP3
INT7
پایه I/O، ورودی کپچر تایمر/کانتر3، اینتراپت خارجی
10PB0
SS
پایه I/O،
پایه SS در ارتباط SPI زمانیکه میکرو به عنوان slave باشد در حالت صفر قرار داده می شود
11PB1
SCK
پایه I/O،
پایه SCK در ارتباط SPI به عنوان کلاک به کار رفته و برای انتقال دقیق   داده ها به تجهیزات خارجی کاربرد دارد
12PB2
MOSI
پایه I/O،
پایه MOSI در ارتباط SPI به کار رفته و زمانیکه میکرو نقش اسلیو را دارد، داده   ها از طریق این پایه از مستر دریافت می شوند
13PB3
 MISO
پایه I/O،
پایه MISO در ارتباط SPI به کار رفته و زمانیکه میکرو نقش اسلیو را دارد، داده   ها از طریق این پایه به مستر ارسال می شوند
14PB4
OC0
پایه I/O،
پایه   خروجی کانال PWM
15PB5
 OC1A
پایه I/O،
پایه   خروجی کانال PWM
16PB6
 OC1B
پایه I/O،
پایه   خروجی کانال PWM
17PB7
OC2
OC1C
پایه I/O،
پایه   خروجی کانال PWM
18PG3
TOSC2
پایه I/O،
پایه MISO در ارتباط SPI به کار رفته و زمانیکه میکرو نقش اسلیو را دارد، داده   ها از طریق این پایه اینتراپت به مستر ارسال می شوند
19PG4
TOSC1
پایه I/O،
پایه SCK در ارتباط SPI به عنوان کلاک به کار رفته و برای انتقال دقیق   داده ها به تجهیزات خارجی با اینتراپت کاربرد دارد
20RESETریست
21VCCولتاژ تغذیه
22GNDزمین
23XTAL2خروجی اسیلاتور کریستال
24XTAL1ورودی اسیلاتور کریستال
25PD0
SCL
INT0
پایه I/O،
کلاک ارتباط I2C
اینتراپت   خارجی 0
26PD1
SDA
 INT1
پایه I/O،
پایه داده ارتباط I2C
اینتراپت   خارجی 1
27PD2
RXD1
INT2
پایه I/O،
پایه دریافت داده ارتباط   USART
اینتراپت   خارجی 2
28PD3
TXD1
INT3
پایه I/O،
پایه ارسال داده ارتباط USART
اینتراپت   خارجی 3
29PD4
 ICP1
پایه I/O،
پایه کپچر ورودی   تایمر/کانتر1
30PD5
XCK1
پایه I/O،
پایه کلاک خارجی برای   ارتباط USART
31PD6
T1
پایه I/O،
تایمر1
32PD7
T2
پایه I/O،
تایمر2
33PG0
WR
پایه I/O،
پایه کنترل برای نوشتن   بر روی حافظه بیرونی
34PG1
RD
پایه I/O،
پایه کنترل برای خواندن   از حافظه بیرونی
35PC0
A8
پایه ورودی/خروجی (I/O)
36PC1
A9
پایه ورودی/خروجی (I/O)
37PC2
A10
پایه ورودی/خروجی (I/O)
38PC3
A11
پایه ورودی/خروجی (I/O)
39PC4
 A12
پایه ورودی/خروجی (I/O)
40PC5
A13
پایه ورودی/خروجی (I/O)
41PC6
A14
پایه ورودی/خروجی (I/O)
42PC7
A15
پایه ورودی/خروجی (I/O)
43PG2
ALE
پایه I/O،
پایه فعال ساز لچ آدرس   که برای انتخاب یکی از چند تراشه حافظه بیرونی متصل به میکرو استفاده می شود
44PA7
AD7
پایه ورودی/خروجی (I/O)
45PA6
AD6
پایه ورودی/خروجی (I/O)
46PA5
AD5
پایه ورودی/خروجی (I/O)
47PA4
AD4
پایه ورودی/خروجی (I/O)
48PA3
 AD3
پایه ورودی/خروجی (I/O)
49PA2
AD2
پایه ورودی/خروجی (I/O)
50PA1
 AD1
پایه ورودی/خروجی (I/O)
51PA0
 AD0
پایه ورودی/خروجی (I/O)
52VCCپایه تغذیه
53GNDپایه زمین
54PF7
ADC7
 TDI
پایه I/O،
کانال 7 مبدل ADC
واسط   JTAG
55PF6
ADC6
TDO
پایه I/O،
کانال 6 مبدل ADC
واسط   JTAG
56PF5
 ADC5
TMS
پایه I/O،
کانال 5 مبدل ADC
واسط   JTAG
57PF4
ADC4 TCK
پایه I/O،
کانال 4 مبدل ADC
واسط   JTAG
58PF3
 ADC3
پایه I/O،
کانال 3 مبدل ADC
59PF2
ADC2
پایه I/O،
کانال 2 مبدل ADC
60PF1
ADC1
پایه I/O،
کانال 1 مبدل ADC
61PF0
ADC0
پایه I/O،
کانال 0 مبدل ADC
62AREFولتاژ مرجع ADC
63GNDپایه   زمین
64AVCCپایه ولتاژ تغذیه ADC

ویژگی های Atmega128

پردازنده آن هشت بیتی AVR است.

این ماژول دارای 64 پایه است که در مورد آنها در جدول بالا توضیح دادیم.

این تجهیز دارای 53 پایه ورودی و خروجی می باشد.

این میکروکنترلر دارای واحد مبدل آنالوگ به دیجیتال 8 کاناله با وضوح 10 بیتی است.

از 4 شمارنده تشکیل شده است که دوتا 8 بیتی و دوتا 16 بیتی است.

این قطعه دارای یک مدار مقایسه آنالوگ است. این میکروکنترلر مبدل دیجیتال به آنالوگ (DAC) ندارد. دارای چهار (4) مدولاتور عرض پالس (PWM) است. می تواند برای تامین کلاک پالس سیستم می تواند از نوسان ساز خارجی با فرکانس 16 مگاهرتز کار کند. همچنین شامل نوسان ساز داخلی است که بر روی فرکانس 8 مگاهرتز کار می کند. از حافظه فلش با ظرفیت 128 کیلوبایت تشکیل شده است. سرعت پردازنده آن شانزده MIPS (16میلیون دستورالعمل در ثانیه) است. حافظه رم آن چهار کیلو بایت است. شامل 6 روش ذخیره انرژی به نام های Power-slave، Power-down، Idle، ADC Noise Reduction، Standby و Extended Standby است. دمای عملکرد آن 55- تا 85 درجه سانتیگراد است.

برای آموزش میکروکنترلرهای AVR به لینک

http://smartcomp.ir/product-4 وhttp://smartcomp.ir/product-6 مراجعه کنید.

بلوک دیاگرام داخلی ATmega128

کاربردهای Atmega128

در ساخت کوادکوپترها استفاده می شود.

در اتوماسیون صنعتی و خانگی بکار گرفته می شود.

از آن در طرح های مختلفی همچون دستگاه شکلات و بستنی ساز، قهوه و اسپرسوساز و اسباب بازی های مختلف استفاده می شود.

برای کنترل دور و جهت و حرکت موتور استفاده می شود.

در پروژه های دانشجویی به کار می رود.