امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
اتصال دو میکرو
نویسنده پیام
fateme_com آفلاین
تازه وارد

ارسال‌ها: 1
موضوع‌ها: 1
تاریخ عضویت: مرداد ۱۳۸۹

تشکرها : 0
( 0 تشکر در 0 ارسال )
ارسال: #1
اتصال دو میکرو
من میخوام دو تا میکرو atmega32 رو به هم وصل کنم(پایه ی rx یکی رو به tx دومی وصل کنم.)
یکی از میکرو ها فرستنده و اون یکی گیرنده اس.به گیرنده یه lcd وصل کردم که داده ای که میگیره رو lcd نمایش بده.(این قسمتش رو بلدم) فقط قسمت اتصال دو میکرو و اینکه داده چطوری بینشون رد و بدل میشه رو نمیدونم.اگه میشه کمکم کنید!
۲۳-مرداد-۱۳۸۹, ۱۴:۳۱:۱۶
ارسال‌ها
پاسخ
reza555 غایب
مدیر بازنشسته
*****

ارسال‌ها: 1,073
موضوع‌ها: 17
تاریخ عضویت: شهریور ۱۳۸۸

تشکرها : 3779
( 3261 تشکر در 1342 ارسال )
ارسال: #2
RE: اتصال دو میکرو
اینو ببین(پاسخ شماره 16)
http://www.iranled.com/forum/showthread....ight=usart

زندگی مدیریت فرصت هاست.
۲۳-مرداد-۱۳۸۹, ۱۵:۱۳:۲۵
ارسال‌ها
پاسخ
تشکر شده توسط : t3r!p3000
t3r!p3000 آفلاین
         
*****

ارسال‌ها: 5,050
موضوع‌ها: 83
تاریخ عضویت: اردیبهشت ۱۳۸۵

تشکرها : 34447
( 17423 تشکر در 5116 ارسال )
ارسال: #3
RE: اتصال دو میکرو
چی کاریه !
متنشو می ذاریم :


مهندس ارسال سریال کاری نداره تو بسکام !

می تونی این کتاب رو بخونی : http://forum.iranled.com/showthread.php?tid=10869

اینم یه مثال از کتاب آقای یه نفر ( سعید جون ) :


ارتباط سریال rs232 :


در این ارتباط از دوسیم به نام های rxd و txd استفاده میشود که خط txd وسیله اول دیتا را از ان به بیرون منتقل میکندو خط خروجی دیتا است و به ورودی دیتا دستگاه دوم ( txd ) متصل میشود و خط rxd ورودی دیتا است که به خروجی دیتای دستگاه دیگر (rxd ) متصل میشود.


در این روش میتوان نهایتا تا دووسیله را به هم متصل کرد .(از طریق یک پورت)

این پروتکل برای ارتباط میکرو با میکرو ، میکرو با کامپیوتر و کامپیوتر با کامپیوتر استفاده میشود ، برای ارتباط میکرو با میکرو شما نیاز به دو برنامه برای دو میکرو دارید ، برای ارتباط میکرو با کامپیوتر شما باید علاوه بر نوشتن برنامه برای میکرو یک برنامه نیز برای کامپیوتر بنویسید و در نهایت برای ارتباط دو کامپیوتر با هم شما باید با یکی از زبان های برنامه نویسی برای هر دو کامپیوتر برناه بنویسید که این موضوع از بحث ما خارج است.(برای راه اندازی این پروتکل از کریستال خارجی استفاده کنید)

دستورات این پروتکل در بسکام به شرح زیر است:

تعیین نرخ انتقال دیتا:
کد php:
$BAUD=VAR 
این دستور میزان انتقال دیتا در ثانیه را مشخص میکند وباید در هر دو وسیله ای که به هم متصل میشوند یکی باشد (در غیر این صورت ارتباط کار نمیکند) بهتر است نرخ انتقال دیتا در مناطق دارای نویز کمتر انتخاب شود.

دستور PRINT :
کد php:
PRINT  VAR 
توسط این دستور میتوان داده یا متغیری را به پورت سریال ارسال کرد. VAR یم متغیر از جنس متغیرهای گفته شده میباشد.

دستور PRINTBIN :
کد php:
PRINTBIN VAR 
توسط این دستور متغیر VAR به باینر تبدیل شده سپس به پورت سریال ارسال میشود.

دستور WAITKEY :
کد php:
VAR=WAITKEY() 
این دستور تا زمانی که متغییر توسط دستگاه دیگر به پورت سریال ارسال شود منتظر میماند و پس از دریافت متغیر برنامه از خط بعد ادامه می یابد.

دستور INKEY :
کد php:
VAR=INKEY() 
این دستور مقدار اسکی کاراکتر دریافت شده از پورت سریال را برمیگرداند.

دستور INPUTBIN :
کد php:
INPUTBIN  VAR 
این دستور داده باینری را از پورت سریال میگیرد و در متغیر VAR قرار میدهد.

دستور INPUTHEX :
کد php:
INPUTHEX  VAR 
این دستور داده هگز رااز پورت سریال دریافت میکند و در متغیر VAR قرارمیدهد. مانند:

در مثال زیر با استفاده از ارتباط سریال ، یک ارتباط دوطرفه بین دو میکرو برقرار کرده ایم ،

کد php:
$regfile "m32def.dat" $crystal 1000000
$baud 
9600
Config Portb 
Input Config Porta Output
Dim A 
As Byte As Byte
W
:
Pinb Printbin Q
Inkey() : Porta A
Goto W
End
میکرو 2
:
$regfile "m32def.dat" $crystal 1000000
$baud 
9600
Config Portb 
Input Config Porta Output
Dim A 
As Byte Dim Q As Byte
W
:
Pinb Printbin Q
Inkey() : Porta A
Goto W
End 

از انجا که ارتباط دو طرفه میباشد ( هر دو میکرو دقیقا مانند هم هستند ) برنامه دو میکرو مشابه است ،

درخط اول میکرو و کریستال معرفی شده است که میکرو مگا 32 و کریستال مورد استفاده 10 مگا هرتز میباشد .

در خط دوم نرخ انتقال دیتا مشخص گردیده است ، مقدار ان 9600 است . نرخ انتقال دیتا باید در هر دو میکرو یکسان باشد .

در خط سوم پورت b به عنوان ورودی ( برای اتصال کلید ) و پورت a به عنوان خروجی (برای اتصال led) معرفی شده اند .

در خط چهارم دو متغیر از جنس بایت برای ذخیره مقادیر معرفی شده است .

در خط پنجم شروع یک حلقه میباشد ( شما میتواندی از دیگر حلقه ها نیز استفده کنید).

در خط ششم مقدار موجود بر روی پورت b در متغیر q ریخته میشود و سپس با دستور Printbin Q به پورت سریال فرستاده میشود.

در خط هفتم مقدار گرفته شده از پروت سریال در متغیر a ریخته میشود و بعد متغیر a بر روی پورت a ریخته میشود.

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

خط هشتم پایان برنامه است.


در حالتی که هیچ یک از کلید ها یک نشده اند ، مقدار q صفر دسیمال و &b00000000 باینری است ، حال اگر هر یک از کلید ها فشرده شود مقدار q تغیر میکند.

دو پایه txd و rxd میکرو نقش دریافت و ارسال داده را در حالت پیشفرض برعهده دارند ، با دستور زیر شما میتوانید این دو پایه را به پایه های دلخواه تغییر دهید:

کد php:
Open "comx.y:$baud,8,n,1" For Output/input As #q 

comx.y : نام پورت و پایه ای است که باید به عنوان txd یا rxd جدید عمل کند.

:$baud نرخ داده عبوری از پایه را نشان میدهد ، این مقدار باید با نرخ انتقال دیتا ی اصلی برابر باشد.

Output/input : پایه میتواند وردی داده( rxd) یا خروجی داده( txd ) باشد.

Q : شماره کانال را مشخص میکند.
مانند:

کد php:
Open "comd.1:19200,8,n,1" For Output As #1
Open "comd.0:19200,8,n,1" For Input As #2 

در مورد بالا portd.1 به عنوان txd و portd.0 به عنوان rxd در نظر گرفته شده است ، همچنین نرخ انتقال داده برابر با 19200 است.
۲۳-مرداد-۱۳۸۹, ۱۹:۱۱:۳۰
ارسال‌ها
پاسخ
تشکر شده توسط : kimiafars, رسول, reza555, mahdi20, HamidSay


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  معرفی یک سنسور جریان برای اتصال به میکرو ؟ mega16 6 1,738 ۲۷-اردیبهشت-۱۳۹۹, ۱۷:۳۸:۳۲
آخرین ارسال: Ambassador
  اتصال سنسور lm35 در فاصله 12 متری به میکرو ؟ mega16 3 1,643 ۲۷-بهمن-۱۳۹۸, ۱۸:۴۳:۲۸
آخرین ارسال: aKaReZa75
Question اتصال کامپیوتر به میکرو با بلوتوث surena3 0 2,563 ۱۷-فروردین-۱۳۹۶, ۱۲:۲۶:۲۶
آخرین ارسال: surena3
Question [فوری] اتصال lcd گرافیکی به پایه های دلخواه میکرو در بسکام behzadsen 4 4,337 ۰۵-دى-۱۳۹۵, ۱۵:۲۵:۳۰
آخرین ارسال: behzadsen
Exclamation اتصال به روتر enc28j60 HamidSay 11 7,714 ۲۹-آذر-۱۳۹۵, ۲۲:۲۳:۵۵
آخرین ارسال: HamidSay
  سوال در مورد اتصال حافظه eeprom جانبی به میکرو SBRE77 9 10,467 ۰۷-مهر-۱۳۹۵, ۲۳:۳۱:۲۹
آخرین ارسال: omidrn
  تست میکرو saber.k 10 14,048 ۰۹-شهریور-۱۳۹۵, ۰۲:۰۹:۲۷
آخرین ارسال: yadulla fazel
  [فوری] اتصال دوربین گوشی به AVR و نمایش بر روی ال سی دی n96 MN-123 9 7,186 ۱۸-اردیبهشت-۱۳۹۵, ۲۲:۵۹:۴۴
آخرین ارسال: MN-123
Sad [سوال] اتصال کامپیوتر به میکرو از طریق پورت سریال Monje 11 11,438 ۱۱-خرداد-۱۳۹۴, ۱۶:۲۷:۰۷
آخرین ارسال: alira725
  اتصال تابلو روان P10 با AVR HamidSay 0 3,022 ۲۱-اسفند-۱۳۹۳, ۱۹:۱۷:۲۵
آخرین ارسال: HamidSay

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS