گناه براى غیر گناهکار نیز شوم است، اگر گنهکار را سرزنش کند به آن مبتلا مى شود، اگر از او غیبت کند گنهکار شود و اگر به گناه او راضى باشد، شریک وى است.
روز قیامت، بدترین مردم در پیشگاه خدا، کسانی هستند که مرم از ترس گزندشان به آنها احترام بگذارند.
کسی که رضایت خدا را بر ناراحتی مردم ترجیح دهد، خداوند قلب های مردم را به سوی او جلب خواهد کرد و کسی که رضایت مردم را بر خشنودی خدا ترجیح دهد، خداوند او را به مردم وا می گذارد.
به نام خدا : تو این مطلب از آموزش آردوینو جلسه 18 میخوام به آموزش استفاده از کتابخونه ارتباط سریال مجازی رو بگم تا دیگه مجبور نباشید به علت کم بودن پایه های ارتباط سریال برید میکروهایی مثل برد آردوینو مگا رو بخرید، با این کتابخونه میتونید رو هر پایه ای به هر تعدادی ارتباط سریال برقرار کنید(پایه های میکرو تقسیم بر 2 = تعداد uart که میتونید بسازید) ، این مطلب ترجمه شده ی! مطلب سایت آردوینو به نشانی SoftwareSerial هستش.(اینو گفتم تا برید کم کم سراغ انگلیسی خوندن، این سایت آردوینو هم متن انگلیسیش ساده هستش و به راحتی میتونید از خود سایت آردینو، خود آردینو رو یاد بگیرید و انگلیسیتون رو هم قوی کنید.) >>>>آموزش جامع آردوینو جلسه 18 software serial
این کتابخونه شامل توابع عمومی زیر هستش(یه سری توابع خصوصی هم داره ولی ما لازم نیست ازشون استفاده کنیم، حالا شمایی که من میشناسم توابع عمومی رو ول میکنید یه راست میرید سراغ توابع خصوصی کلا چیزای خصوصی رو دوست دارید، از شوخی بگذریم، یه سری از توابع رو معمولا خصوصی میکنن، ممکنه به کار کاربر نیاد به صورت مستقیم و یا اگه کاربر از توابع خصوصی به صورت ناشیانه استفاده کنه ممکنه مشکلاتی ایجاد بشه و… کلا بیخیال توابع خصوصی بشید، توابع عمومی رو در زیر براتون میزارم، با کلیک بر روی هر کدوم به منبعش میرید)
در زیر یه سری نکات رو براتون میگم که خوندنش خالی از لطف نیست. توجه 1 :اگه از ارتباط سریال سخت افزاری استفاده میکنید، در اون پایه های سریال سخت افزاری نمیتونید سریال مجازی برقرار کنید، و باید سریال سخت افزاری اون پایه ها رو غیر فعال کنید تا بتونید سریال مجازی روشون اعمال کنید(عمرا کسی فهمیده باشه، در زیر به یه روش دیگه توضیح میدم) >>> خب همون طور که میدونید پایه های 0 و 1 برد آردوینو (و پایه های 0 و 1 و 14 تا 19 در برد مگا) پایه های ارتباط سریال سخت افزاری هستن، حالا اگه شما از ارتباط سریال سخت افزاری استفاده کنید، این پایه ها میرن تو نقش سریال سخت افزاری، حالا اگه بخواین از ارتباط سریال مجازی روی این دو تا پایه استفاده کنید نمیشه دیگه، نه جدا فک کردی میشه؟ خب معلومه نمیشه، یا باید بیخیال سریال مجازی روی این دو تا پایه بشید و برید سراغ پایه های دیگه، و یا این که سریال سخت افزاری اون پایه ها رو غیر فعال کنید و براشون سریال مجازی رو فعال کنید…….اووووووووووف عجب توضیحی!! توجه 2 : در برد های سری مگا، تنها پایه های زیر میتونن در نقش RX قرار بگیرن :
توجه 3 : در بردهای لئوناردو و میکرو تنها پایه های زیر میتونن در نقش RX قرار بگیرن :
8, 9, 10, 11, 14 (MISO), 15 (SCK), 16 (MOSI)
توجه 4 : در برد Arduino or Genuino 101 ماکزیمم سرعت RX برابر 57600bps هستش. توجه 5 : در برد Arduino or Genuino 101 پایه RX بر روی پایه 13 عمل نمیکند و لذا نباید RX رو به این پایه منتسب کرد. توجه 6 : ماکزیمم سرعت برابر 115200bps هستش(استثناها در بالا ذکر شدن)
دیگه بریم سراغ توضیح تک تک این توابع :
Library
C
1
#include <SoftwareSerial.h>
برای استفاده از این کتابخونه باید در اول پروژه فراخونی کنید این کتابخونه رو، یعنی کد بالا رو در اول پروژه قرارش بدید.
SoftwareSerial
C
1
SoftwareSerial(rxPin,txPin,inverse_logic)
rxPin : پایه ای که میخواین RX باشه. txPin : پایه ای که میخواین TX باشه. inverse_logic : مهم نیست فعلا و نمیخواد ازش استفاده کنید(بجاش چیزی قرار ندید، انگار که تابع 2 تا پارامتر داره) نحوه استفاده از این تابع به صورت زیر هستش :
C
1
SoftwareSerial mySerial(2,3);
همون طور که میبینید الان پایه های 2 و 3 تبدیل شدن به پایه های RX و TX ارتباط سریال مجازی ما.
سوال : در کد بالا اون mySerial داستانش چیه؟ جواب : خب نمیخوام زیاد به بحث برنامه نویسی بپردازم، فقط اینو بگم که : همون طور که گفتم مثلا 10 تا ارتباط سریال مجازی(تعداد ورودی خروجی های بردمون تقسیم بر 2) میتونیم داشته باشیم در بردمون و لذا باید برا هرکدوم اسم مشخصی بزاریم، مثلا من در پروژه ام از یه ارتباط سریال مجازی استفاده میکنم و اسمش رو گزاشتم mySerial و حالا شما میتونید هر اسمی که دوست داری قرار بدید، مثلا بنویسید علی، تنقی، نقی، دیوار، بربری، سنگک و یا هر اسمی که دوست داشتین، فقط اگه بخواین 2 تا ارتباط سریال مجازی بسازین باید از کد بالا دو بار استفاده کنید(که معلومه) و اسم ارتباط سریال ها رو هم متفاوت از هم تعیین کنید.
خب بعد از استفاده از تابع بالا(البته لفظ تابع درست نیست و شئی بگیم فک کنم درست تر باشه، در هر صورت مهم نیته^_^)، باید پایه هایی که استفاده کردین در در اول تابع Setup ورودی/خروجیشون رو تعیین کنید، مثلا برای کد بالا باید از کد زیر استفاده کنید(پایه RX رو ورودی میکنیم و پایه TX رو خروجی میکنیم - دلیلش هم معلومه، پایه دریافت کننده اطلاعات باید ورودی باشه و پایه ارسال کننده اطلاعات باس خروجی تعریف بشه) :
C
1
2
pinMode(2,INPUT);
pinMode(3,OUTPUT);
begin
C
1
SoftwareSerialName.begin(speed)
خب این تابع برای تنظیم سرعت نرخ انتقال داده (baud rate) هستش، که به جای speed میتونید مقادیر زیر رو قرار بدید. توجه : speed در فرستنده و گیرنده باید یکسان باشه.
مثال : خب تا اینجا توابعی رو که گفتم باید به صورت زیر استفاده کنیم(البته اون نام mySerial و او نسرعت 9600 دلبخواهی هستش و میتونید شما تغییرش بدید و همچنین پایه های 2 و 3 یعنی پایه های ارتباط سریال مجازی رو هم میتونید تغییر بدید) :
C
1
2
3
4
5
6
7
8
9
10
#include <SoftwareSerial.h>
// ساخت یه ارتباط سریال مجازی جدید
SoftwareSerial mySerial=SoftwareSerial(2,3);
voidsetup()
{
pinMode(rxPin,INPUT);
pinMode(txPin,OUTPUT);
mySerial.begin(9600);
}
voidloop(){}
available
C
1
SoftwareSerialName.available()
این تابع تعداد بایت های موجود برای دریافت رو بر میگردونه.
// هر موقع دیتایی موجود باشه برا دریافت این "ایف" اجرا میشه
if(mySerial.available()>0)
{
// دریافت و پردازش دیتا
}
}
read
C
1
SoftwareSerialName.read()
این تابع برا خوندن دیتا هستش(البته باید دیتایی موجود باشه که بتونه بخونه، برا این کار میتونید از تابع available استفاده کنید و هم موقع دیتایی برا دریافت موجود بود، از تابع بالا استفاده کنید و اون دیتا رو شکارش کنید ^_^) مثال :
// هر موقع دیتایی موجود باشه برا دریافت این "ایف" اجرا میشه
if(mySerial.available()>0)
{
// خوندن 1 بایت دیتا و ذخیره در متغییر "دیتا"ا
Data=mySerial.read();
// نمایش دیتا _ مثلا_ یا هر کار دیگه ای
// که دوست داشتین میتونید با این دیتا بکنید
}
}
print & println
خب تو این قسمت میخوام دو تابع زیر رو بگم
C
1
2
SoftwareSerialName.print(data)
SoftwareSerialName.println(data)
دو تابع بالا برای ارسال دیتا هستن اولی دیتا(data) رو فقط ارسال میکنه و دومی علاوه بر ارسال دیتا میاد و کاراکتر رفتن به خط بعدی رو هم ارسال میکنه. data : یه رشته و یه کاراکتر و یا یه متغییر صحیح و اعشاری مثال :
// هر موقع دیتایی موجود باشه برا دریافت این "ایف" اجرا میشه
if(mySerial.available()>0)
{
// خوندن 1 بایت دیتا و ذخیره در متغییر "دیتا"ا
Data=mySerial.read();
// ارسال دیتای دریافت شده
mySerial.println(Data);
// mySerial.print(Data);
}
}
write
C
1
SoftwareSerialName.write(data)
این تابع برای ارسال به صورت کاراکتر هستش. مثال :
C
1
2
3
4
5
6
7
8
9
10
SoftwareSerial mySerial(10,11);
voidsetup()
{
mySerial.begin(9600);
}
voidloop()
{
mySerial.write(45);// send a byte with the value 45
intbytesSent=mySerial.write(“hello”);//send the string “hello” and return the length of the string.
}
توابع زیر هم بمونه برای بعد، خسته شدم فعلا(البته توابع اصلی همونایی بود که در بالا گفتم، یه سری توابع جزئی هستش که در زیر میبینید و اینم بعدا میگم) : peek – overflow – isListening – listen
تو خود کتاب خونه یه 2 تا مثال هستش حالا اگه کسی خواست بگه تا مثال بیشتر بزنم. در ضمن کسی اگه مطالب ارتباط سریال سخت افزاری رو اگه خونده باشه این مطلب براش خیلی ساده و رووون میشه. خب امید وارم این مطلب مفید بوده باشه براتون، هزینه این مطلب^_^(البته قابلتون رو نداره هااااا) 3 تا صلوات برا شادی روح شهدا و امام شهدا هستش. خاطرات من در دانشگو قسمت N ام : حالا برا شادی روح خودتون هم یه عکس بزارم، شنیدین که میگم … کردی آب قطعه؟ حکایت عکس زیر و داستان زیر هستش، یکی از بچه ها تعریف میکرد رفتیم دستشویی و بعد آخر سر دیدیم آب قطعه، اون ساعت هم امتحان داشتم، با کلی دردسر و دستمال و … کارمون رو انجام دادیم و اومدیم بیرون ولی نیم ساعت دیر رسیدیم به سر امتحان(الته اون موقع این رفیق بنده خدای ما که رفته بود WC همچین کاغذی نبود که ببینه، چند وقت من من خواستم برم تا این برگه رو دیدم درجا با سرعت نور رفتم سراغ یه مرکز دیگه ) >>>> یکی نیست بگه داستان قطعی هستش که اینا رو میگی آخه فعلا یا علی
سلام. من یه اردینو pro micro بر پایه atmega32 u4 دارم که برنامه اردینو به عنوان leonardo میشناسش.این از این. االان هرچی سعی می کنم پروگرامش کنم نمیشه. 1-برنامه compile میشه. 2-میره تو مرحله uploading 3-led ارسال و دریافت روشن میشن. 4-led دریافت خاموش میشه و فقط ارسال روشن می مونه. و در این حین برنامه اردینو میزنه uploading برنامه رو حذف و نصب کردم فایده نداشت پورتا رو داخل devicce manager عوض کردم فایده نداشت(تو device… اسمشو میاره و درایورش نصبه) محل usb رو عوض کردم نشد انواع مدل کد های اماده رو تست کردم روش ولی نتیجه یکسان بود.
همه مطالب شما عالی است فقط این جمله که “جنگ ما فتح قدس را به همراه خواهد داشت” به نظرم جاش در یک سایت علمی نیست. به ادم استرس میده. چطور میشه با جنگ و خون ریزی دنیا را به ارامش و امنیت رساند.
چطور میشه با جنگ و خون ریزی دنیا را به ارامش و امنیت رساند؟ نمونه : با داعش مبارزه نمیشد، الان عراق/سوریه سقوط میکردن، اون وقت برادران داعشی بهت میگفت که چطور میشه با جنگ و خونریزی…
ا داداش سلام من یه مشکل مسخره دارم یه ماژول gpsخریدم ک میخوام خروجیش رو تو سریال مانیتور ببینم اما با سریال نرم افزاری نمیشه چون تابعseryal.readفقط کاراکتر میخونه میشه یه کدی بدی ک فقط خروجی نششون بده همین؟؟ به مولا جز تو کسیو ندارم بپرسم ج بده
با سلام من میخوام با آردوینو از طریق ارتباط سریال (rs232) یه کدی مثل این رو ارسال کنم : ۰۰۲۰۴۳۹۵۷۳۱۷|۱۵|۰۶۲۰۰۶۳۶۲۰۹۹۴۲۴|۰۶۱۰۴۵۷۷|۰|۰۰۰۰۰۰۰۰۱۰۰۰|۰۱|۰|۰۱|۰|۰|۰۰|۰۰ ممنون میشم راهنمایی کنید، چون به هر روشی که کد رو ارسال میکنم سمت گیرنده دیتا رو به درستی دریافت نمیکنه، چرا که دیتای ارسالی به صورت تیکه تیکه و در چند قسمت مثلا ۴ قسمت ارسال میشه . ممنون میشم راهنمایی فرمایید …
با سلام یه برانه تو نرم افزار زدم دگمه verifyمیزنم پیغام زیر میده D:irNew FolderNRF24L01cod_recivcod_reciv.ino:7:23: fatal error: SerialLib.h: No such file or directory #include ^ compilation terminated. exit status 1 Error compiling for board Arduino/Genuino Uno. ایا باید اون کتابخانه کهبالا گذاشتید تو نرم افزار بذارم؟؟؟؟؟؟
سلام کارت خیلی درسته مهندس دمرچیلو اینکه DATA رو از I2Cگرفت رو متوجه شدم ولی ارسالش به یه پورت 485رو نفهمیدم با چی براش تو چند بازه دیتا ارسال کنم و چطور بهش دستور بدم؟
نه داش حوصلم نمیشد جواب بدم به قطعه 200 تومنی سفارش دادم – تو سایت پست نوشته تحویل داده شده ولی تو خونه کسی چیزی نگرفته – همسایه ها هم همین طور یه 1ساعتی کسی خونمون نبوده – شاید اون موقع مامور پست اومده جلو درمون – الان 2 روز کارم عقب اوفتاده – شنبه برم پست ببینم جریان چیه و محموله رو به کی داده
سلام من میخوام از دو تا ماژول بلوتوث و rfid همزمان روی برد آردوینو due استفاده کنم وقتی دستورات رو مینویسم و دو تا سریال نرم افزاری تعریف میکنم (این جوری نوشتم) ;(SoftwareSerial EMserial(4, 5 ;(SoftwareSerial HCserial(6, 7 ولی مشکلم اینه که هر کدوم از این دستورات رو بنویسم فقط اولی کار میکنه یعنی مثلا اگه بلوتوث رو به HCserial وصل کنم و rfid رو به این EMserial فقط ماژول بلوتوث کار میکنه حالا اگه دستورات رو جا به جا کنم یعنی این شکلی ;(SoftwareSerial HCserial(6, 7 ;(SoftwareSerial EMserial(4, 5 و به همون ترتیب وصل کنم فقط ماژول بلوتوث کار میکنه چه جوری این جوری میشه؟؟دلیلش چیه؟ جونم رو بالا آورده یعنی هر جوری که تونستم کرم ریختم سرش و نشد
سلام والا من خودم همیشه برا این دست موارد از سریال سخت افزاری استفاده میکنم و از سریال نرم افزارری استفاده نمیکنم. الان به نظر من برو ببین این کتابخونه سریال نرم افزاری به چه صورت نوشته شده و روال کارش به صورت هستش – یا باید از وقفه خارجی استفاده کنه یا از پایه معمولی که این روش دوم به نظر من باعث میشه دیتا از بین بره
چاره ای ندارم برد uno یه دونه سریال سخت افزاری داره حالا فعلا سرشا کلاه گذاشتم اومدم برا بلوتوث یه دونه سریال نرم افزاری ساختم و rfid رو وصل کردم به سریال سخت افزاری الان سریال سخت افزاری هم به کامپیوتر وصله هم به rfid فرستدندش رو کامپیوتر گذاشتم باشه گیرندش رو وصل کردم به rfid
سلام آقا مهدی، خسته نباشی داداش،خدا قوتحوصله تعریف کردن ازت رو ندارم ولی کارت خیلی درسته،اجرت با خود خدا آقا یه سوال، میشه فرکانس کلاک کار کردن پردازنده های آردوینو رو تغییر داد؟ و اینکه واسه آردوینو Due نوشتن که فرکانس کاریش 84 مگاهرتزه، این یعنی همون موقع که واسه اولین بار روشنش میکنی فرکانس کاری پردازندش، 84 مگاهرتزه یا باید دسکاریش کنی که به این سرعت برسه؟
سلام – فیوز بیت هاشو باید تغییر بدی – اگه پروگرامر داری – میکروی آردوینو رو بزار تو پروگرامر و فیوز بیتاشو تغییر بده – اگه نداری – نمیدونم چطوری میشه که بخوام بهت بگم.
سلام….برای غیر فعال کردن سریال سخت افزاری و فعال کردن نرم افزاری از چه کدی باید استفاده کنیم؟؟توی برد های سری مگا با غیر فعال کردن سریال سخت افزاریشون میشه از سریال نرم افزاری استفاده کرد؟؟
سلام موردی که هستش اینه که مثلا تو برد UNO پایه 0 و 1 برا سریال سخت افزاری هستش شما میتونید از پایه های دیگه(غیر از 0 و 1) برای سریال نرم افزاری استفاده کنید ولی اگه میخواید حتما حتما رو پایه های 0 و 1 سریال نرم افزاری برقرار کنید نباید سریال سخت افزاری این دو پایه رو فعال کنید(یعنی نباید از کد SERIAL.BEGIN استفاده کنید یعنی نباید سریال سخت افزاری رو به کمک این تابع فعال کنید) – حالا که سریال سخت افزاری این دو پایه رو فعال نکردید – این دو پایه، دو پایه در نقش ورودی/خروجی ساده(پایه دیجیتال معمولی) هستن و میتونید روشون ارتباط سریال نرم افزاری برقرار کنید.
مهمان
سلام یعنی میشه از طریق پایههایی غیر از ۰ و ۱ هم آردوینو رو پروگرام کرد؟؟ با استفاده از سافت سریال؟
مهمان
ممنون
مهمان
سلام.
من یه اردینو pro micro بر پایه atmega32 u4 دارم که برنامه اردینو به عنوان leonardo میشناسش.این از این.
االان هرچی سعی می کنم پروگرامش کنم نمیشه.
1-برنامه compile میشه.
2-میره تو مرحله uploading
3-led ارسال و دریافت روشن میشن.
4-led دریافت خاموش میشه و فقط ارسال روشن می مونه.
و در این حین برنامه اردینو میزنه uploading
برنامه رو حذف و نصب کردم فایده نداشت
پورتا رو داخل devicce manager عوض کردم فایده نداشت(تو device… اسمشو میاره و درایورش نصبه)
محل usb رو عوض کردم نشد
انواع مدل کد های اماده رو تست کردم روش ولی نتیجه یکسان بود.
مهمان
همه مطالب شما عالی است فقط این جمله که “جنگ ما فتح قدس را به همراه خواهد داشت” به نظرم جاش در یک سایت علمی نیست. به ادم استرس میده. چطور میشه با جنگ و خون ریزی دنیا را به ارامش و امنیت رساند.
نویسنده این مطلب
چطور میشه با جنگ و خون ریزی دنیا را به ارامش و امنیت رساند؟
نمونه : با داعش مبارزه نمیشد، الان عراق/سوریه سقوط میکردن، اون وقت برادران داعشی بهت میگفت که چطور میشه با جنگ و خونریزی…
مهمان
سلام آیا میشه کتابخونه رو خودمون با پسوند h. و cpp. درست کنیم؟آخه یه کتابخونه میخوام نمیشه دانلودش کرد ولی کدش تو سایت هست.
مهمان
اقا مهدی سلام و خسته نباشید
اقا ما هر جوری کد زدیم سریال نرم افزاری کار نکرد تو پروتوس
نویسنده این مطلب
سلام-پروتئوس کار نکن.!
مهمان
سلام ممنون از پاسخ
یعنی رو اردوینو واقعی اپلود کنم جواب میده؟
نویسنده این مطلب
سلام – خب چیزی که در عمل جواب نداه – میخوای تو شبیه سازی جواب بده؟ بر فرض که جواب داد!!! خب که چی؟
مهمان
سلام اشتباه متوجه شدین
تو پرتوس جواب نمیده میگم اگه رو اردوینو واقعی بریزم جواب میده چون یه جا گفته بودید پروتوس خطا وباگ داره بعضی وقتا
نویسنده این مطلب
آها – خو خود داری میگی – عمل جواب میده – پروتئوس جواب نمیده – من خیلی وقته کار نمیکنم با پروتئوس – مگه بخوام برا مطالبم شماتیکی بکشم …
وقتی میشه مدارات رو عملی بست چرا رفت سراغ شبیه ساز ها …
مهمان
سلام خسته نباشید
من میخوام با ماژول cp2102 از آردوینو سریال بفرستم به رسپبری ممنون میشم راهنمایی کنید .
مهمان
ا
داداش سلام من یه مشکل مسخره دارم یه ماژول gpsخریدم ک میخوام خروجیش رو تو سریال مانیتور ببینم اما با سریال نرم افزاری نمیشه چون تابعseryal.readفقط کاراکتر میخونه
میشه یه کدی بدی ک فقط خروجی نششون بده همین؟؟
به مولا جز تو کسیو ندارم بپرسم ج بده
مهمان
با سلام
من میخوام با آردوینو از طریق ارتباط سریال (rs232) یه کدی مثل این رو ارسال کنم :
۰۰۲۰۴۳۹۵۷۳۱۷|۱۵|۰۶۲۰۰۶۳۶۲۰۹۹۴۲۴|۰۶۱۰۴۵۷۷|۰|۰۰۰۰۰۰۰۰۱۰۰۰|۰۱|۰|۰۱|۰|۰|۰۰|۰۰
ممنون میشم راهنمایی کنید، چون به هر روشی که کد رو ارسال میکنم سمت گیرنده دیتا رو به درستی دریافت نمیکنه، چرا که دیتای ارسالی به صورت تیکه تیکه و در چند قسمت مثلا ۴ قسمت ارسال میشه . ممنون میشم راهنمایی فرمایید …
نویسنده این مطلب
سلام
کدتو بفرست ببینم چطوری میفرستی – کد کامل
مهمان
سلام // میشه اموزش اردینو رو بصورت پی دی اف بذارید تو سایت بصورت کامل تا دانلود کنیم و بتونیم پرینت بگیریم اینطوری چیزی نمیفهمیم
نویسنده این مطلب
سلام – وقت ندارم مطالب رو pdf کنم.
مهمان
با سلام یه برانه تو نرم افزار زدم دگمه verifyمیزنم پیغام زیر میده
D:irNew FolderNRF24L01cod_recivcod_reciv.ino:7:23: fatal error: SerialLib.h: No such file or directory
#include
^
compilation terminated.
exit status 1
Error compiling for board Arduino/Genuino Uno.
ایا باید اون کتابخانه کهبالا گذاشتید تو نرم افزار بذارم؟؟؟؟؟؟
نویسنده این مطلب
سلام.فایل SerialLib.h رو پیدا نمیکنه…..پروژه این مطلب این خطا رو میده؟
مهمان
سلام کارت خیلی درسته مهندس دمرچیلو
اینکه DATA رو از I2Cگرفت رو متوجه شدم ولی ارسالش به یه پورت 485رو نفهمیدم با چی براش تو چند بازه دیتا ارسال کنم و چطور بهش دستور بدم؟
نویسنده این مطلب
متجوه نشدم – الان آموزش 485 رو میخوای؟
مهمان
سلام
داداش من یه نظر دادم سوال پرسیدم اما خبری ازش نیست
در دست برسیه؟تایید نشده؟جریان چیه؟
نویسنده این مطلب
نه داش حوصلم نمیشد جواب بدم
به قطعه 200 تومنی سفارش دادم – تو سایت پست نوشته تحویل داده شده ولی تو خونه کسی چیزی نگرفته – همسایه ها هم همین طور
یه 1ساعتی کسی خونمون نبوده – شاید اون موقع مامور پست اومده جلو درمون – الان 2 روز کارم عقب اوفتاده – شنبه برم پست ببینم جریان چیه و محموله رو به کی داده
مهمان
سلام
من میخوام از دو تا ماژول بلوتوث و rfid همزمان روی برد آردوینو due استفاده کنم وقتی دستورات رو مینویسم و دو تا سریال نرم افزاری تعریف میکنم (این جوری نوشتم)
;(SoftwareSerial EMserial(4, 5
;(SoftwareSerial HCserial(6, 7
ولی مشکلم اینه که هر کدوم از این دستورات رو بنویسم فقط اولی کار میکنه
یعنی مثلا اگه بلوتوث رو به HCserial وصل کنم و rfid رو به این EMserial فقط ماژول بلوتوث کار میکنه حالا اگه دستورات رو جا به جا کنم یعنی این شکلی
;(SoftwareSerial HCserial(6, 7
;(SoftwareSerial EMserial(4, 5
و به همون ترتیب وصل کنم فقط ماژول بلوتوث کار میکنه چه جوری این جوری میشه؟؟دلیلش چیه؟
جونم رو بالا آورده یعنی هر جوری که تونستم کرم ریختم سرش و نشد
نویسنده این مطلب
سلام
والا من خودم همیشه برا این دست موارد از سریال سخت افزاری استفاده میکنم و از سریال نرم افزارری استفاده نمیکنم.
الان به نظر من برو ببین این کتابخونه سریال نرم افزاری به چه صورت نوشته شده و روال کارش به صورت هستش – یا باید از وقفه خارجی استفاده کنه یا از پایه معمولی که این روش دوم به نظر من باعث میشه دیتا از بین بره
مهمان
چاره ای ندارم برد uno یه دونه سریال سخت افزاری داره
حالا فعلا سرشا کلاه گذاشتم اومدم برا بلوتوث یه دونه سریال نرم افزاری ساختم و rfid رو وصل کردم به سریال سخت افزاری
الان سریال سخت افزاری هم به کامپیوتر وصله هم به rfid فرستدندش رو کامپیوتر گذاشتم باشه گیرندش رو وصل کردم به rfid
نویسنده این مطلب
از مگا هم میتونی استفاده کنی
مهمان
سلام
کلا در لحظه فقط میشه یک سریال نرم افزاری رو باز کرد برای اینکه از 2 تا استفاده کنی باید از تابع listen کمک بگیری
مهمان
سلام آقا مهدی، خسته نباشی داداش،خدا قوتحوصله تعریف کردن ازت رو ندارم ولی کارت خیلی درسته،اجرت با خود خدا
آقا یه سوال، میشه فرکانس کلاک کار کردن پردازنده های آردوینو رو تغییر داد؟
و اینکه واسه آردوینو Due نوشتن که فرکانس کاریش 84 مگاهرتزه، این یعنی همون موقع که واسه اولین بار روشنش میکنی فرکانس کاری پردازندش، 84 مگاهرتزه یا باید دسکاریش کنی که به این سرعت برسه؟
نویسنده این مطلب
سلام
آره میشه – کار نشد نداره
ولی چون فرکانس ها روی حداکثر تعیین شده کسی دیگه نمیاد فرکانس پایین تنظیم کنه.
due اطلاع ندارم
مهمان
سلام . چطوری میشه؟ چطوری میشه فرکانس اردوینو را تغییر داد ؟
نویسنده این مطلب
سلام – فیوز بیت هاشو باید تغییر بدی – اگه پروگرامر داری – میکروی آردوینو رو بزار تو پروگرامر و فیوز بیتاشو تغییر بده – اگه نداری – نمیدونم چطوری میشه که بخوام بهت بگم.
مهمان
خیلی خوب بود…..منتظر جلسات بعدی هستیم…..
مهمان
آموزشهاتون خیلی عالیه همیشه منتظر مطلب جدیدم.
مهمان
بافر سریال نرم افزاری 64بایته پس اگه اطلاعات دریافتی بیش از این باشه اطلاعات از بین میره!!
نویسنده این مطلب
فک کنم همین طور باید باشه –
مهمان
مطمئن باش….. چون تست کردم این موضوع رو.
تابع findهم رو سریال نرم افزاری جواب میده.
مهمان
سلام….برای غیر فعال کردن سریال سخت افزاری و فعال کردن نرم افزاری از چه کدی باید استفاده کنیم؟؟توی برد های سری مگا با غیر فعال کردن سریال سخت افزاریشون میشه از سریال نرم افزاری استفاده کرد؟؟
نویسنده این مطلب
سلام
موردی که هستش اینه که مثلا تو برد UNO پایه 0 و 1 برا سریال سخت افزاری هستش
شما میتونید از پایه های دیگه(غیر از 0 و 1) برای سریال نرم افزاری استفاده کنید
ولی اگه میخواید حتما حتما رو پایه های 0 و 1 سریال نرم افزاری برقرار کنید نباید سریال سخت افزاری این دو پایه رو فعال کنید(یعنی نباید از کد SERIAL.BEGIN استفاده کنید یعنی نباید سریال سخت افزاری رو به کمک این تابع فعال کنید) – حالا که سریال سخت افزاری این دو پایه رو فعال نکردید – این دو پایه، دو پایه در نقش ورودی/خروجی ساده(پایه دیجیتال معمولی) هستن و میتونید روشون ارتباط سریال نرم افزاری برقرار کنید.
مهمان
سلام اقا مهدی من ی برد اردوینو اونو خریدم میخواستم بدونم میتونم باهاش پایه گیت ماسفت رو درایو کنم یعنی ازش پالس بگیرم فک کنم بشه اما کدش چطور میشهههههه؟؟؟؟؟؟؟؟؟؟
اگر میدونید تورو خدا ی کمکی کنید
نویسنده این مطلب
سلام
مطلب آموزش آردوینو که گزاشتم رو بخونید.