avr Multi AVR Programmer

saalek110

Well-Known Member
راهنمای فارسی پیوست شد.
طرز نشستن میکروکنترلرها وابسته به تعداد پایه را ببینید. گردی روی میکروکنترلر به سمت بالا باشد. روی خود پروگرمر ممکن است علامت زده باشد که مثلا 28 پین یا 20پین یا 8 پین کجا قرار بگیرد.

سالک: اتمگا ۳۲ و اتمگا ۱۶ ، شکل راستی ، اتمگا ۸ دومی از راست ، که در شکل می بینید پایین و بالایش به میزان مساوی خالی مونده ، ۳ تا از بالا خالی است و ۳ تا از پایین. اگر اتمگا ۸ را بچسبانید بالا(یعنی در جای مناسب قرار ندهید) ، شدید داغ میشه و ممکن است بسوزد.
دو تا شکل سمت چپی را من میکرونترلرش را نداشتم.

اون شکل نیم دایره بالای میکروکنترلر ، بغل دسته پروگرمر قرار می گیرد. دسته همون بازویی است که بالا و پایین می کنید و آیسی در جایش محکم میشه.
a2.jpg
 

پیوست ها

  • help.pdf
    1.9 مگایابت · بازدیدها: 6
آخرین ویرایش:

saalek110

Well-Known Member

فایل help از صفحه بالا بود. درایور هم برای دانلود هست.
نرم افزار پروگرم کردن Progisp هم هست.
 

saalek110

Well-Known Member

در این سایت ، ایشان توضیح داده که کدها را در کدویژن می نویسیم و .....

آخر صفحه هم فایلهایش را گذاشته که من ضمیمه این پست کردم....

برنامه روشن کردن یک led است.


فایل hex هم در این پوشه ضمیمه شده هست.
 

پیوست ها

  • led.zip
    40.2 کیلوبایت · بازدیدها: 0

saalek110

Well-Known Member

در سایت بالا ، هم با کد ویژن کار کرده و hex تولید کرده.
 

saalek110

Well-Known Member
سالک: برای کار با نرم افزار progisp و راه انداختن پروگرمر نیاز به فایل hex است که با نرم افزارهایی مثل کدویژن تولید می شود ، که چند پست بالاتر آموزش تصویری انگلیسی چطور فراخواندن فایل hex را داشتیم.

البته این تاپیک آموزش کدویژن نیست ، خواستم راهنمایی کنم.
 

saalek110

Well-Known Member
PHP:
#include <mega16.h>  /* معرفي کتابخانه مگا16 */
#include <delay.h>  /* delay معرفي کتابخانه */
 
void main(void)  
{
 
DDRC=(0<<DDC7) | (0<<DDC6) | (0<<DDC5) | (0<<DDC4) | (0<<DDC3) | (0<<DDC2) | (1<<DDC1) | (1<<DDC0);  /* C خروجي کردن پين هاي 0 و 1 از پورت */
PORTC=(0<<PORTC7) | (0<<PORTC6) | (0<<PORTC5) | (0<<PORTC4) | (0<<PORTC3) | (0<<PORTC2) | (0<<PORTC1) | (0<<PORTC0);  /*مقاومت بالاکش نداشته باشد C هيچ کدام از پين هاي پورت */
 
while (1)       /* حلقه تکرار بينهايت */
      {
      PORTC.0=1;   /* يک شود C پين 0 از پورت */
      PORTC.1=0;   /* صفر شود C پين 1 از پورت */
     
      delay_ms(1000);  /* تاخير زماني به مدت يک ثانيه */
 
      PORTC.0=0;   /* صفر شود C پين 0 از پورت */
      PORTC.1=1;   /* يک شود C پين 1 از پورت */
     
      delay_ms(1000);  /* تاخير زماني به مدت يک ثانيه */
 
      }
}

توجه کنید که این خط باید اضافه شود:
PHP:
#include <delay.h>

تا به تابع delay_ms خطا ندهد.

قبل ایجاد کد پورت c شماره صفر و یک را خروجی کردیم و در کد بالا کد تعییر این پورت را نوشتیم.
یعنی باید همون پورت هایی را که خروجی کردید را برایش کد بنویسید.
در کدویژن نوع میکروکنترلر خود را اول از همه مشخص کردید و فرکانس 1 مگا دادید و بعدش پورت های خروجی خود را تعیین کردید و کد را ساختید و کد بالا را مطابق با اون پورت های انتخاب شده نوشتید. در اینجا پورت c استفاده شده...

بعد فایل hex ساختید و در نرم افزار پروگرمر اون فایل hex را استفاده کردید.

سالک: من مطابق آموزش های بالا عمل کردم و درست بود.

یک led با یک مقاومت مثلا 400 اهم اول روشن کنید و سمت منفی led پخ است. منفی و مثبت را اول به led بدهید تا از درستی اون خیالتان راحت باشه... در مرحله بعد از پورت میکروکنترلر به عنوان مثبت برای led استفاده کنید.
 

جدیدترین ارسال ها

بالا