به نام خدا : سلام، با توجه به این که دیگه تو آردوینو خبری از PORT نیست(تو AVR) بود، البته تو آردوینو هم هستش PORT ولی مشکلاتی داره که بیخیالش شدم ، البته ریجستر PORT، که به کمکش پایه ها رو مقدار دهی میکردیم، کاری که الان تو آردوینو با digitalWrite انجام میدیم، ولی مشکل digitalWrite اینه که برا هر پایه باس یه بار بنویسیمش ولی با PORT میشد با یه بار نوشتنش ۸ تا پایه رو کنترل کرد، لذا این مطلب رو مینویسم تا دوستان ببینن که یه راه حل کردن این مشکل همانند پروژه آردوینو این مطلب هستش، البته اگه توستان راه دیگه ای به ذهنشون میرسه بگن تا ما هم بدونیم ، لذا تو این آموزش آردوینو میسبینید چطور با نوشتن یه تابع از تابع digitalWrite همانند PORT استفاده کردیم.(برا آشنایی بیشتر با پورت مطلب جلسه ۱ آموزش جامع AVR رو بخونید.)
پروژه ساده روشن کردن ۸ تا LED با آردوینو
عکسی از پروژه تو پروتئوس
توجه : پروژه رو تو پروتئوس اجرا نکنید و در عمل تست کنید.
اینم از کد های پروژه
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
int PinList[8]={2,3,4,5,6,7,8,9}; void setup() { Serial.begin(9600); for (int i = 2; i <= 9; i++) pinMode(i, OUTPUT); } void loop() { for (int i = 1; i <= 128; i=i*2) { DigitalWrite_To_PORT(i, PinList); delay(400); } } void DigitalWrite_To_PORT(int Value, int PinList[8]) { digitalWrite(PinList[0], bitRead(Value, 0)); digitalWrite(PinList[1], bitRead(Value, 1)); digitalWrite(PinList[2], bitRead(Value, 2)); digitalWrite(PinList[3], bitRead(Value, 3)); digitalWrite(PinList[4], bitRead(Value, 4)); digitalWrite(PinList[5], bitRead(Value, 5)); digitalWrite(PinList[6], bitRead(Value, 6)); digitalWrite(PinList[7], bitRead(Value, 7)); } |
پروژه به نظرم سادس و چیز خاصی نداره لذا توضیح نمیدم ولی اگه سوالی بود در خدمتیم.
اینم از فیلم پروژه(۹۰۰ کیلو بایته همش )
اگه مطلب بدردتون خرد ۳ تا صلوات بفرستید(هزینه مطلب)
فعلا یا علی.
مهمان
خیلی ممنون
کاش یک مقدار بیشتر توضیح میدادید.من برای بچه خواهرم میخواستم بفرستم
مهمان
سلام ممنون از آموزشتون
من میخوام از آردوینو خروجی صوتی بگیرم.به این صورت که یا ماژول میکروفون صدا دریافت میکنه و اون رو با اسپیکر پخش میکنه.
چجوری میتونم اسپیکررو وصل کنم؟DACنیاز داره؟
مهمان
سلام وقت بخیر
ببخشید من وقتی میخوام بعد از نوشتن برنامه، آپلودش کنم، این خطا رو میده:
not in sync: resp=0x66
میشه راهنمایی کنید لطفا؟ (اصلا نمیدونم منظورش چیه)
مهمان
اول باید نوع برد رو تو تنظیمات بزنید بعد نوع برنامه خود را کامپایل کنید و در نهایت باید گو اجرا بشه وگرنه مشکل از خود کد یا برنامه(نرمافزار) است
مهمان
استاد اگه میشه در مورده برنامه خا توضیح بدین
مهمان
سلام خسته نباشيد اگه بخوايم تعداد زيادي ال اي دي رو وصل كنيم مثلا ٣٢ تا
پايه اردوينو كم مياريم در اين صورت ميتونيم مثلا از دو تا ديكدر ٤ به ١٦ استفاده كنيم ولي ديگه نميتونيم تو برنامه نويسي مشابه اين پروژه ك شما گذاشتين عمل كرد
چون هر ال اي دي ب يك پايه از اردوينو وصل نيست ؟
نویسنده این مطلب
سلام – از آیسی هایی که در تابلو روان استفاده شده، استفاده کنید.
اسم آیسیشون یادم نی – یه بررسی بکنیدشون – شاید کارتونو راه انداختن این آیسی ها.
مهمان
آی سی 74hc595 یک آی سی هشت بیتی
مهمان
باز هم میشه از آرایه و حلقه for برای برنامه نویسی کنترل همه ال ای دی ها استفاده کرد.
مهمان
سلام و خدا قوت چطور میشه ال ای دی های شاخه ای ۱۲ ولت رو به اردینو متصل کرد؟ مثلا راه پله.
نویسنده این مطلب
سلام-روش های زیادی داره.
1-استفاده از اپتو کوپلر
2-ترانزیستور
3-آیسی های بافر مثلا سری uln
4-رله ^_^
و…
معقول ترینش همون مرود 2و3 هستش
مهمان
یه سوال میخوام یه برنامه بنویسم ۶ تا ال ای دی وقتی دکمه میزنم از چپ به راست روشن شه و وقتی یه بار دیگه زدم از راست به چپ خاموش شه ممنون میشم بهم کمک کنید
مهمان
سلام.خسته نباشید من تازه وارد هستم لطفا بگین از برنامه اردوینو 1.8.7میتونم کار کنم . بعد کدوم قسمتش باید برم تا بتونم این کدهارو بنویسم ؟
نویسنده این مطلب
سلام – بعد وصل کردن برد به PC و اجرای نرم افزار آردینو – کد رو کپی میکنی توش و میری تو منو TOOLS و گزینه های BOARD – PROCESSOR – PORT رو تنظیم میکنی – و بعد پروگرام میکنی ( بالا سمت چپ – اون دکمه که شبیه فلش به سمت راست هستش! )
مهمان
سلام ببخشید مزاحم شدم من امشب قرار هست یه پروژه تحویل بدم درمورد اینکه ۷تا ال ای دی در آردینو روشن بشن میخواستم راهنمایی کنید ممنونم این عدد ۹۶۰۰و ۱۲۸از کجا آوردید ممنونم منتظرم تا جواب بدید
نویسنده این مطلب
سلام – برا 9600 مطلب ارتباط سریال آردوینو رو مطالعه کنید.
برا 128 هم اون 4 خط کد رو تحلیل کنید ببینید چیکار میکنه اون 4 خط – چیز سختی نی.
مهمان
سلام خسته نباشید ببحشید من چطور میتونم وقتی ک از 2-9 رفت و روشن شد به ترتیب ذوباره روشن شدنش بلعکس باشع ینی از 9 به پایین باشه و اینکه بخوام چند نوع و مدل روشن خاموش بزارم برای این دسته طریقه برنامه نویسیش به چه صورته میشه توضیح بدین…؟
ینی مثلا این نوع اول باشه توع دوم اونی ک مطرح کردم و بخوام مدل دیگ چشمک زن تصادفی باشه و همشو تو یه برنامه بریزم سه تا رو چجوری بنویسم و کجا قرار بدم هر کدومو ک به ترتیب اینا انجام بشه.؟
نویسنده این مطلب
سلام
رفت :
for (int i = 1; i < = 128; i=i*2)
برگشت :
for (int i = 128; i >= 1; i=i/2)
مهمان
با سلام
می خواستم بدونم چ مقاومت هایی استفاده شده چون عکس ها واضح نیستن
نویسنده این مطلب
سلام-زیاد مهم نی – یه چی بین 1 تا 10 کیلو بزار- که خب هر چی مقاومت بیشتر بشه – جریان کمتر و نور led کمتر میشه.
مهمان
ممنون
مهمان
سلام ببخشید تو برد من هیچ چی اپلود نمیشه باید چیکار کنم
نویسنده این مطلب
سلام.
بببین اگه نوع برد و پورت رو تو آردوینو درست تنظیم نکردی درست کن – اگه از این نبود مشکلو نمیدونم – خدوم هم 3-4 تا برد اینطوری دارم – که حوصلم نمیشه برم ببینم چه مرگشه
مهمان
سلام ببخشیArduino: 1.8.5 (Windows 7), Board: “Arduino/Genuino Uno”
Sketch uses 2076 bytes (6%) of program storage space. Maximum is 32256 bytes.
Global variables use 200 bytes (9%) of dynamic memory, leaving 1848 bytes for local variables. Maximum is 2048 bytes.
avrdude: ser_open(): can’t open device “\\.\COM1”: The system cannot find the file specified.
Problem uploading to board. See http://www.arduino.cc/en/Guide/Troubleshooting#upload for suggestions.
This report would have more information with
“Show verbose output during compilation”
option enabled in File -> Preferences.
د من اپلودش کردم این ارور داد
مهمان
سلام خدمت آقا مهدی گل
داداش من میخوام آردوینوام رو آپلود کنم ولی این اخطار رو میده
can’t open device “\\.\COM4”: The system cannot find the file specified.
اولین باره که میخوام از این آردوینو استفاده کنم.uno هم هستش به نظر شما مشکلش چیه؟
نویسنده این مطلب
سلام
خب پورت 4 وجود نداره و یا نمیتونه بازش کنه ( توسط نرم افزار دیگه ای ممکنه اشغال شده باشه که چون میگی اولین باره که هیچی ) مدل ch340 خریدی؟
مهمان
دوستان در واقع میتونید هم DDR و هم از PORT استفاده کنید من جدید ترین نسخه اردوینو رو دارم حتی از زیجستر هایی مثل UCSRA هم پشتیبانی میکنه فقط توجه کنید نه مثل کدویژن یعنی نمیتونید بگید

PORTA.1=0
که البته مشابه این کارو میتونید با analogWrite() انجام بدین
مهمان
یه سوال دیگه هم دارم. چرا تو for دومی ، i رو از ۱ تا ۱۲۸ نوشتین؟
چرا از ۱ تا ۷ ننوشتین مثلا ؟
نویسنده این مطلب
چون میخوام led ها به صورت دونه دونه روشن بشن – ردیفی – و مقادیر حلقه برابر ۱-۲-۴-۸-۱۶-۳۲-۶۴-۱۲۸ هستش
مهمان
آها بله متوجه شدم ممنونم
مهمان
سلام خسته نباشید. من از این راه برنامه رو نوشتم جواب هم داد. خواستم بپرسم مشکلی هست تو این برنامه که از این راه نرفتین ؟؟ چون ساده تر هم هست ?
void setup()
{
( ++for (int i=0; i<=۹; i
;( pinMode (i, OUTPUT
}
void loop()
{
(++ for (int i =2 ; i <=۹; i
{
;(digitalWrite (i,HIGH
;( delay(5
; ( digitalWrite (i,LOW
;(delay(500
}
}
نویسنده این مطلب
سلام
من خواستم کارم ساده بشه – و به صورت پورتی/دسته ای به پایه ها دسترسی داشته باشم.
مهمان
با سلام
من یه برد مگا دارم و یه پروژه ی پرینتر سه بعدی و کد ها آماده و دانلود کردم ولی هر کاری میکنم آپلود نمیشه و خطا میده میشه راهنمایی کنید
با تشکر
بازم ببخشید خارج از مطلب بود ولی خیلی مهم لطف جواب بدید
خواهش
مهمان
با سلام
من یه برد مگا دارم و یه پروژه ی پرینتر سه بعدی و کد ها آماده و دانلود کردم ولی هر کاری میکنم آپلود نمیشه و خطا میده میشه راهنمایی کنید
با تشکر
بازم ببخشید خارج از مطلب بود ولی خیلی مهم لطف جواب بدید
خواهش
مهمان
سالاری داداش
ممنون رایگان گذاشتی
مهمان
سلام من یک برد uno r3 خریدم ویلی وقتی به کامپیوتر وسلش میکنم توی برنامه نمی نویسه سخت افزار وصل شد
نویسنده این مطلب
سلام
جلسه اول آموزش اول مطلب یه فیلم/عکس دقیقا نمیدونم کدومشه! گزاشتم – برو ببین – بردت ch340 که نیست ان شاء الله؟
مهمان
نه بردم ch340 نیست
مهمان
منصورتون از جلسه اول اموزش avr است
نویسنده این مطلب
آردوینو
مهمان
سلام ببخشین،رمز فایل چیه؟برا من رمز میخواد..
نویسنده این مطلب
سلام – با حروف کوچیک
www.dmf313.ir
مهمان
سلام مقاومت های این مدار ۸ ال ای دی چند کیلو اهم؟ ممنون از این سایت خوبت خیرش را ببینی
نویسنده این مطلب
سلام – من معمولا ۱کیلو میزارم – اگه میخوای قطعه بخری و کلا بیای تو این وادی و کلا تو کار بستن پروژه – سعی کن رنج های ۱کیلو و ۱۰ کیلو و ۴٫۷ کیلو و ۱۰۰ اهم و ۴۷۰ اهم رو بخری.
مهمان
سلام
با راه علمیش میشه۱۵۰اهم. اما اردوینو فک نکنم زیادی جریان بده(فکر می کنما!خالی وصل نکنی.)
مهمان
با سلام خدمت اقای دمر چیلو من خودم رشته الکترونیکم وعلاقه زیادی به الکترونیک دارم همیشه هم به سایتتون سر میزنم واقعا مطالب خوبی داره ودر حال حاظر در کار تابلوهای تبلیغاتی مشغولم مثل تابلو روان .ال ای دی ثابت .حروف برجسته.
نویسنده این مطلب
سلام

مهمان
سلام به همه من امروز یه ماژول آردوینو uno – مدل smd خریدم ولی وقی وصلش می کنم به لب تاپ هیچ گونه صدایی نمیده و توی دیوایس منیجر هم اصلا نشان نمیده که سخت افزار وصل شده ولی چراغ های روی بر روشن میشه ترو خداا کمک کنید
نویسنده این مطلب
سلام
از این چینا خریدی؟
لینکی که از خرید کردی؟
مهمان
برد با usb خودش کار نمیکنه الان با واسطه ی پروگرمر توش برنامه می ریزم پشتیبانی سایت هم که هیچی دیگه
http://iran-micro.com/%D9%85%D8%A7%DA%98%D9%88%D9%84-%D8%A2%D8%B1%D8%AF%D9%88%DB%8C%D9%86%D9%88-%D9%85%D8%AF%D9%84-p-10017.html
نویسنده این مطلب
خب لینک زیر رو ببین، ببین چیزی توش پیدا میکنی یا نه : download driver arduino uno windows 7
و این که نگران نباش، دفعه اول هم خودم همچین ضد حالی خوردم ماژولم خراب در اومد،
و این که اول به اینترنت وصل بشو و صفحه دیواس منیجر رو باز بزار، بعد برد رو به کامپیوتر وصل کن، حالا ببین اگه چیزی تو دیوایس منیجر بعد وصل شدن برد به کامپیوتر نمایش داده میشه یا نه و تغیییری میکنه یا نه، اگه علامت سوالی چیزی دیدی روش کلیک کن و بروز رسانیش کن، اگه اصلا چیزی پیدا نشد و تغییری نکرد برو لینک بالا و بگرد ببین درایورش رو پیدا میکنی یا نه
و اگه در آخر به هیچ وج درست نشد برو یکی دیگه بخر
مهمان
سلام
ممنون فهمیدم
مهمان
سلام داداش
واقعا دستت درد نکنه همه ی آموزشاتت عالیی هستند
یک سوال من چون تو کتابخانه نویسی ضعیفم اینجا رو نفهمیدم که این تابع چگونه کار میکنه :
void DigitalWrite_To_PORT
ممنون میشم اگر یکم این قسمت رو توضیح دهید
نویسنده این مطلب
سلام
توابعی که توی تابع DigitalWrite_To_PORT استفاده کردم رو تو مطالب اموزش آردوینو توضیح دادم
و عرضم به حظورت که این تابع DigitalWrite_To_PORT کاریش اینه که : تو کدویژن یه ویژگی خوبی که بود این بود که میشد پورت ها رو یجا مقدار دهی کرد، مثلا پورتA که شمال ۸ تا پایه بود رو میشد توسط یه چیزی به نام PORTA مقدار دهی کرد و دیگه مجبور نبودی پایه ها رو دونه دونه مقدار دهی کنی…….حدف از نوشتن تابع DigitalWrite_To_PORT هم همین امر هستش …. این تابع چون تو آردوینو کمبودش احساس میشد به شدت لذا این تابع رو نوشتم.
در ضمن این تابع DigitalWrite_To_PORT دو تا مقدار میگیره، ۱) مقداری که باید به این پورت بده(ورودی اول) ۲) لیست پایه هایی از آردوینو که مقدار دریافتی رو باید بهش بده
OK?
مهمان
سلام بلاخره با خوندن این آموزش ها برد آردوینو uno رو سفارش دادم ایشا الله چرخش واسم بچرخه . دمت گرم داش مهدی اجرت با خدا .
مهمان
سلام . من آردوینو مدل uno دارم برنامه رو نوشتم الان هر کاری می کنم برنامه آپلود نمی شه com رو درست انتخاب کردم
نویسنده این مطلب
سلام
دقیقا خاطرم نیست درایور باید نصب بشه نشه
ولی تو نرم افزار ببین برد uno رو انتخاب کردی یا نه….
اگه یه برد دیگه انتخاب کرده باشی …شاید مشکل این باشه که پروگرام نمیشه
مهمان
سلام باید بری دیوایس منیجر کامپیوترت اونجا بورد اتصالی رو پیدا کنی گزینه اپدیت نرم افزارو بزنی البته از قبل درایور رو باید یه جای مشخص از کامپیوتر گزاشته باشی تابتونی پیداش کنی و اونو انتخاب کنی نهایتش درایور نصب میشه و رابطه بین بورد و کامپیوتر برقرار میشه