PDA

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



alitaroosheh
11-09-2007, 17:03
سلام
نميدونم با چه برنامه اي كار ميكنيد چون بيسيك اين مشكل رو نداره (البته ورژن بعد از 1.11.8.1)
دوستمون زحمت c رو كشيدن اينم براي bascom كه خيلي راحته و تو help خود bascom به وفور ازش استفاده شده:
فرستنده:
dim a as long
print a

براي گيرنده :
dim a as long
input a

saeed_niknami
13-09-2007, 12:59
با سلام
من با بيسيك كار نكردم اما فكر نكنم بشه با سريال متغيير لانگ رو فرستاد چون ديتا فرمت سريال همون طور كه خودتون مي دونين 8 بيتي هستش

alitaroosheh
13-09-2007, 16:28
در تمام ميكروكنترلر هاي هشت بيتي داده ها 8 بيتي هستن
حالا اگر توي ارتباطUART از بسته داده 8n1 استفاده كنيم داده ها 8 بيتي هستن ولي اين دليل نميشه كه نشه بيشتر از 8 بيت را فرستاد. در واقع داده هاي بزگتر از 8بيت آرايه اي از داده هاي 8 بيتي هستند كه با تكنيكهاي برنامه نويسي اعداد بزرگتر از 8 بيت رو بوجود ميارن حالا با اين وضعيت داده long شما شامل 4 بايت كه با printf شما در واقع 4 بايت رو توي بسته 8n1 ميفرستيد.
اگر به زبان اسمبلي وارد باشيد ميدونيد كه تمام داده ها برمبناي بايت هستن و اصلا اثري از int,long,double غيره نيست.
اگر در زبان c اينطوري بنويسيد و ميكرو كارنكنه كامپايلر شما مشكل داره:
long a;
printf ('%d',a);
به هر حال بيسكام جواب ميده.

saeed_niknami
15-09-2007, 22:02
با سلام
همون كاري كه شما مي گين من تو تاپيك هاي قبل انجام دادم به زبان سي اين متغيير لانگ رو به 4 تا ارايه 8 بيتي شكستم
:wink: