PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : برنامه ريزی داخل مدار



hamid67fathi
31-03-2010, 14:27
سلام
من ميخوام ميکرو که ATMega8 است رو داخل مدار برنامه ريزی کنم .
ميخواستم بدونم که چطور بايد اين کار رو انجام بدم ميدونم که به صورت ISP هست .
اما دقيقاً نميدونم چطور !!
ممنون.....

1nafar
31-03-2010, 16:21
سلام
کار خیلی راحت هست و روش های زیادی وجود داره :
کافیه به راهنمای انلاین بسکام مراجعه کنید و نام isp رو جستوجو کنید
You can see links before reply
موارد لازم برای روش اول :
1- کامپیوتری که پورت lpt داشته باشه
2- پروگرامر stk200/300
3- مقداری سیم

You can see links before reply
بعد از ساختن مدار بالا ، پایه های خروجی رو به پایه های هم نام در میکرو کنترلر متصل کنید و بعد از نصب یک پرینتر در محیط ویندوز ، قطعه رو پروگارم کنید .
در صورتی که از نرم افزار بسکام استفاده میکنید میتونید نحوه ی کار رو در کتاب اموزش میکرو کنترلر avr به زبان بیسیک مشاهده کنید .

Division
31-03-2010, 19:20
به نظر من دو تا حالت داره :

1- شما پروگرامري ندارين : در اين صورت مدار پيشنهادي جناب 1nafar كفايت مي كنه .

2- شما پروگرمري دارين (از هر نوعي كه باشه ): در اين صورت شما پايه هاي mega8 رو كه بايد به پروگرمر متصل بشن رو به صورت يه سوكت رو بردت طراحي بكني . حتي در اين حالت مي توني تمام پايه هاي ميكرو رو بدون هيچ گونه محدوديتي استفاده كني منظورم اينكه اگه بعضي از پايه ها بين مدار پروگرمر و مداري كه مي خواي طراحي كني مشترك بودن هيچ مشكلي پيش نمي ياد (به غير از پروگرمر jtag)


اتفاقا اين روش خيلي خوبيه و تو طراحي هايي نيازه ميكرو، پشت سره پروگرم بشه (مثل ساخت انواع روبات) به نظر من اين كار رو انجام داد .

فقط يه مطلبي اونم اينكه در صورتي كه خواستي از مورد دوم استفاده كني دفت كن به ميكروت فقط يه Vcc برسه اين جوري نشه كه ميكرو يه Vcc از مدار اصلي خودت دريافت كنه و يكيشم از پروگرمر بش برسه (اكثر پروگرامر ها اين حالت رو پيش بيني مي كنن و يه جامپري روي برد مي زنن)

hamid67fathi
01-04-2010, 02:06
ممنون که راهنمايی ميکنيد
من از کدويژن استفاده ميکنم و programer هم دارم از نوع USBASP هستش که کد درايورش گم شده،
درايور اون رو برای ويندوز سون دانلود کردم و نصب کردم اما زمانی که ميخوام چيپ رو program کنم
programer رو نميشناسه،
در تنظيمات کدويژن نوع programer رو درست انتخاب کردم اما پورت رو نميدونم چی بزنم چون همش LPT هست !!!

morteza_rk
01-04-2010, 13:39
سلام دوست عزیز Hamid67fathi

من به سهم خودم ورود شمارو به این انجمن تبریک میگم (هر چند که شما خیلی وقته عضوی)

تا اونجائیکه من می دونم کامپایلر کدویژن پروگرمر USBASP رو ساپورت نمی کنه و شما باید برای پروگرم کردن میکروکنترلر خودتون از نرم افزار جانبی ای مثل ProgISP استفاده کنید. بدین صورت که شما برنامه ی خودتون رو در کدویژن می نویسید و کامپایلش می کنید ولی برای انتقال کد هگز به داخل آی.سی از نرم افزار ProgISP استفاده می کنید.:wink:

hamid67fathi
02-04-2010, 02:45
سلام
ممنون که راهنماييم کرديم مشکل دومم حل شد ،اما مشکل اول همچنان ادامه داره ...
من اتصالتم رو به صورت زير انجام دادم ..
شکل اول اتصال به ATMega8 هستش .
شکل دوم هم چيزی هست که روی programer سوار شده ...
نميدونم چرا اينجوريه، پايه های SCK و Reset روی programer به جايی وصل نيستن و MISO و MOSI به هم وصلن.
تصوير رو هم ضميمه کردم.
بازم ممنون که راهنمايی ميکنيد

Division
02-04-2010, 03:00
سلام
ممنون که راهنماييم کرديم مشکل دومم حل شد ،اما مشکل اول همچنان ادامه داره ...
من اتصالتم رو به صورت زير انجام دادم ..
شکل اول اتصال به ATMega8 هستش .
شکل دوم هم چيزی هست که روی programer سوار شده ...
نميدونم چرا اينجوريه، پايه های SCK و Reset روی programer به جايی وصل نيستن و MISO و MOSI به هم وصلن.
تصوير رو هم ضميمه کردم.
بازم ممنون که راهنمايی ميکنيد

احتمالاً سيم بندي سوكت روي پروگرمر با حالت استانداردش متفاوته (البته اگه شما درست ترسيم كرده باشين)

راه حل نهايي اينكه شما از روي سوكتي كه رو پروگرمر سواره پايه هاي MOSI , MISO , SCK , RST , GND , VCC رو پيدا كنيد و بعد تستشون كنيد كه ترتيب پايه هاي سوكت IDC 10 به چه صورتي تعريف شدن .
با پيدا كردن پايه هاي پروگرامر فكر نكنم با مشكل ديگه اي روبرو بشين :wink:

اما اگه پروگرمر شما روش هيچ سوكتي سوار نباشه بايد به نقشه شماتيك پروگرمر نگاه بكنيند و پايه ها رو از اونجا شناسايي كنيند .

hamid67fathi
02-04-2010, 04:10
بازم سلام
کار هايی رو که گفتيد رو انجام دادم.
تصويری هم ضميمه کردم که پايه ها به آی سی ATMega8 خود programer که فکر کنم هسته programer هست وصل ميشن.
البته هرکدوم هم به وسيله يه مقاومت 220 اهمی به پايه های زيف وصل شدن
پايه ها رو به همين صورت در طرف ديگه پياده سازی کردم اما نشد (پايه 16 بايد به RST وصل بشه ديگه ؟؟)
حالا چه کنيم مهندس جان !؟!؟

Division
02-04-2010, 11:58
پايه ها رو به همين صورت در طرف ديگه پياده سازی کردم اما نشد (پايه 16 بايد به rst وصل بشه ديگه ؟؟)
حالا چه کنيم مهندس جان !؟!؟

ترتيب پايه هاي كه تو عكس ارسال كرده بودين به اينصورت هستن :

پايه هاي ميكرويي كه رو پروگرمر نصبه>>>>>>>>>به ميكرويي كه مي خواين پرگرم بشه متصل كنيند
17>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>mosi
miso<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<18
sck<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<19
reset<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<16
gnd<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<gnd
vcc<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<vcc

شما بايد طبق اين الگو ميكرويي كه مي خوايد پروگرم كنيد رو به mega8 روي برد پروگرامر متصل كنيد .
اگه اتصالات شما طبق الگوي بالا بود و بازم موفق نشديد كه ميكروي مورد نظرتون رو پروگرم كنيد، يه ميكروكنترلر ديگه مثلاً mega16 روي سوكت پروگرمر بزنيد، ببينيد كه درايورش رو درست نصب كردين؟ و يا اصلاً پروگرمرتون كار مي كنه ؟ .
يه احتمال خيلي ضعيف ديگم وجود داره اونم اينكه ميكرويي كه باش كار مي كنين و مي خواين پروگرمش كنيد سوخته (بعيده اما دور از ذهن نيست)

hamid67fathi
02-04-2010, 12:50
وقتی ميکرو رو روی خود programer ميزرم program ميشه و کار ميکنه !! مشکلی نداره !!
طبق همون الگو هم بستم اما نشد !! در هنگام program کردن داخل مدار تنظيمات خاصی بايد انجام بدم ؟؟
راستی مهندس تو عکس پايه VCC نداشتيما !!!

Division
02-04-2010, 13:02
راستی مهندس تو عکس پايه VCC نداشتيما !!!

حتماً خودتون يه VCC به ميكرويي كه مي خواين پرگرمش كنين بدين (بدون تغذيه كه نميشه ميكرو رو پروگرم كرد)

و يه مسئله ميمونه اونم اينكه تو مداري كه مي خواين ميكروتون رو پروگرمش كنيند دقت كنيند كه هيچ كدوم از پايه هايي كه تو پست قبلي بشون اشاره كردم، زمين نشن ها !!!!

خيلي نزديك شدين و يه اشكال كوچيك دارين كه نمي تونيد پروگرمش كنيد :wink:

hamid67fathi
02-04-2010, 13:25
چرا نميشه !! من 2 روزه نخوابيدم ....:(:(

morteza_rk
02-04-2010, 16:58
آقا من اگه درست متوجه شده باشم موضوع اینه که : شما یه مگا8 دارید که توی یه مدار دیگه وجود داره و می خواید با پروگرمرتون که از نوع USBasp هست اونو در داخل همون مدار بدون اینکه درش بیارید پروگرم کنید! درسته؟

اگه درسته باید توجه کنید که در هنگام پروگرم کردن مگا8 حتما پایه ی Vcc به 5 ولت وصل باشه ، اما فقط یه منبع 5 ولت! یعنی اینطوری نشه که مگا8 شما هم 5 ولت مدار پروگرمر رو داشته باشه و هم 5 ولت مداری که مگا8 در داخلش قرار داره! از طرفی پایه ی GND برعکس این موضوعه! یعنی هم باید به زمین پروگرمر وصل باشه و هم به زمین مداری که مگا8 توشه!

از طرف دیگه پایه ی RST نباید به جایی وصل باشه جز به پایه ی RST پروگرمر! معمولا در این طور موارد که یه میکرو در داخل یک مدار قرار داره و می خوان بعدا پروگرمش کنن پایه ی RST شو با یک مقاومت 10 کیلو به Vcc وصل می کنن و همزمان به پایه ی RST پروگرمر هم وصل میشه!

حالا مزیت این کار چیه؟ اینه که وقتی میکرو داره داخل مدار کار می کنه پایه ی RST مقدار 5 ولت می بینه و در نتیجه میکرو ریست نمیشه اما در لحظه ای که قراره عملیات پروگرم کردن انجام بشه این پایه توسط پایه ی RST پروگرمر در حالت صفر ولت قرار می گیره و همزمان عملیات پروگرم شدن انجام میشه!

نقش مقاومت 10 کیلو اینه که در لحظه ی پروگرم شدن که قراره پایه ی RST میکروی داخل مدار صفر بشه از اتصال کوتاه شدن منبع تغذیه جلوگیری می کنه.

hamid67fathi
02-04-2010, 17:07
سلام
تمامی اون مواردی رو که شما گفتيد من رعيت کردم ولی نميدونم چرا جواب نميگيرم....
مثله اينکه مجبورم يه programer بسازم که ISP اون کار کنه
به نظرتون کدوم از اين پرگرمر هايی که تو صفحه زير هست رو بسازم ؟
You can see links before reply

morteza_rk
02-04-2010, 17:28
بنظر من شما فعلا یه پروگرمر stk200/300 بساز و با اون امتحان کن که ایا می تونی اون مگا8 رو در داخل مدار برنامه ریزی کنی یا نه؟

اگه جواب داد و بالاخره اوستا شدی!؟! برو سراغ ساختن USBasp . :wink:

hamid67fathi
02-04-2010, 18:26
اگه منظورتون با پورت پرينتر هست ، متأسفانه سيستم من پورتشو نداره
حالا چه کنيم ؟؟

morteza_rk
02-04-2010, 18:31
هیچی دیگه! ii998)

پس مجبوریم همون USBasp رو به سرانجام برسونیم. ولی نمی دونم از پسش بر میای یا نه؟ البته کار ساده ایه ولی با این اوضاعی که برای شما پیش اومده نمی دونم چی می شه! ولی امتحان کن ، هرجا که به مشکل خوردی ما هستیم. همون تاپیکی که در بالا گفتی برای ساختنش کافیه.

پس بسم الله...

hamid67fathi
02-04-2010, 19:28
ممنون ، حالا کدوم رو بسازم ؟؟؟
يه سؤال ديگه : از کجا بفهمم آی سی سوخته يا سالمه ؟؟

Division
02-04-2010, 19:51
دوست عزيز شما يه باره ديگه با خونسردي تمام براي آخرين بار كاري رو كه من بت مي گم رو انجام بده :

رو پروگرمرت كه يه سوكت وجود داره تمام پايه هاش رو در بيار ببين به كجا متصل شدن بعد از ليست كردنشون به ما نشون بده تا بررسي كنيم .
در ضمن يه عكس از روي پروگرمرت هم بگير .

morteza_rk
02-04-2010, 19:52
یعنی چی که کدومو بسازم؟

USBasp رو بساز دیگه! ساختنش خیلی سادست.

یه فایل هگز هست که مال مگا8 هستش ، شما باید اون فایل هگز رو پروگرم کنی روی یه دونه مگا8 ، کریستال مگا8 باید روی 12 مگاهرتز باشه. همین! بعدش یه چنتا دیود زنر و مقاومت و خازن و کریستال به این مگا8 پروگرم شده وصل می کنی و می زنیش به پورت USB ، اونوقت ویندوز یه یغام میده که یه دستگاه جدید به کامپوتر وصل شده که باید درایورش نصب شه ، شما هم درایورشو نصب می کنی. تمام!

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

روش خاصی برای تشخیص اینکه یه میکرو سوخته یا نه وجود نداره! ولی اگه روی یه پروگرمر سالم پروگرم نشد میشه نسبت به سوخته بودن یا قفل شدنش مطمئن شد.

hamid67fathi
02-04-2010, 20:24
ممنون !!!
برم ببينم ميتونم بسازم ، قبلاً يه دونه با lpt ساخته بودم که کار ميکرد ، اما الان پورت lpt ندارم ديگه !!!