سلام من یه پیشنهاد دارم
بیاین اول از وقف دریافت استفاده کنین بیخیال input بشین
من خودم از این روش جواب گرفتم یعنی از 485 مطمئن شدم
اتصالات رو که میدونین و طریقه برنامه رو هم که میدونین چون تو کتاب کاهه هستش
فقط یه نکته کوچک و مهم داره
اینکه عدد 48 رو دریافت میکنین در واقع عدد 48 نیست کد ASCII عدد صفر هستش این اتفاق وقتی رخ میده که
شما نتونستین درست دریافت داشته باشین وقتی از دریافت استفاده میکنین حواستون باید باشه که بعد از اینکه دریافت داشتین گیرنده رو غیر فعال کنین rxc.rxen=0دو تو روال برنامتون تون رو یک کنین
همین .
راستش من با کد ویژن کار میکنم و خیلی نمی تونم کمک کنم ولی با توجه به گفته ها باز هم فکر می کنم که به دلیل اختلاف در فرکانس دریافت این مشکل بوجود امده . در ضمن اگه اشتباه نکرده باشم در صورتی که هیچی دریافت نشود کد 0 hex را می دهد نه کد صفر ascii که هگز ان تازه 30 بوده و دسیمال ان 48 پس کلا نمی شه گفته شما را قبول کرد.
سلام من یه پیشنهاد دارم
بیاین اول از وقف دریافت استفاده کنین بیخیال input بشین
من خودم از این روش جواب گرفتم یعنی از 485 مطمئن شدم
اتصالات رو که میدونین و طریقه برنامه رو هم که میدونین چون تو کتاب کاهه هستش
فقط یه نکته کوچک و مهم داره
اینکه عدد 48 رو دریافت میکنین در واقع عدد 48 نیست کد ASCII عدد صفر هستش این اتفاق وقتی رخ میده که
شما نتونستین درست دریافت داشته باشین وقتی از دریافت استفاده میکنین حواستون باید باشه که بعد از اینکه دریافت داشتین گیرنده رو غیر فعال کنین rxc.rxen=0دو تو روال برنامتون تون رو یک کنین
همین .
بله دوست عزیز حرف شما درست است من عدد 48 دارم ولی مثال من هم زمان دارم چند عدد رو دریافت می کنم چه طوری می تو نم هر عدد که در یافت می کنم رو در یک متغیر بریزم با وقفه
بله دوست عزیز حرف شما درست است من عدد 48 دارم ولی مثال من هم زمان دارم چند عدد رو دریافت می کنم چه طوری می تو نم هر عدد که در یافت می کنم رو در یک متغیر بریزم با وقفه
ممنون می شم یک روش برای من مسال بزنید یا نمونه برنامه برای من بزارین با وقفه
سلام
یه نمونه کار با ارسال و دریافت وقفه در سریال .
ببین تو بسکام یه دستور هست برای کنترل 485 که اگر از یه 485 هم برای ارسال و هم برای دریافت استفاده میکنی میتونی از این دستور استفاده کنی که در حالت عادی در حالت دریافت هست یعنی 485 پایه فعال سازی اون پین 2و3 صفر هست و زمانی که شما اقدام به ارسال میکنین خودش یک میشه و بعد از اتمام ارسال خودش به طور اتو ماتیک صفر میکنی
اگه تو helpبسکام سرچ کنی config print توضیحاتش هست من هم از این استفاده میکنم البته بدون اینم میشه ها
config print= pinc.1 ,mod,set
پین c.1کنترلر 485 هست
ارسال :
DO
if pin b.1=1 then
udr=100
print udr
end if
LOOP
دریافت :
dim d as bit
dim daryaft byte
on urxc input_serial
do
if d=1 then
lcd: daryaft
rxc.urxc=1
d=0
end if
loop
input_serial:
dryaft=udr
d=1
rxc.urxc=0
'تا زمانی که udr رو خالی نکنینین امکان دارد که این وقفه چند بار اجرا شود اما اگه همان دفعه اول دریافت سریال رو غیر فعال کنین البته بعد از خالی کردن udr دیگه این اتفاق رخ نمیدهد و بعد از اینکه کار با سریال تموم شد میتونین دوباره فعال کنین .
return
اگه مساله دیگه هم هست در خدمتیم
شاد و پیروز باشین
دوست عزیز ممنون از برنامه ای که گزاشتی من می خوام در میکرو فرستنده ام مثلا اگر متغیر علی رو فرستادم برای میکروی گیرنده تو متغیره علی گیرنده ذخیره بشه و همین تور متغیر های دیگر چه کار باید بکنم و ممنون می شم برنامه کمی بیشتر تضیح بدین
من هر کاری می کنم زمانی 0 می فرستم عدد 48 مگیرم با وقفه هم کار کردم و لی باز هم همان عدد است هیچ تقیری نکرد دوستان یعنی کسی این مشکل رو نداشته :cry2: :cry2: :cry2:
من هر کاری می کنم زمانی 0 می فرستم عدد 48 مگیرم با وقفه هم کار کردم و لی باز هم همان عدد است هیچ تقیری نکرد دوستان یعنی کسی این مشکل رو نداشته :cry2: :cry2: :cry2:
48 کد اسکی عدد 0 هستش . تو بیسیک نمیدونم . ولی تو کدویژن از تابع putchar استفاده کنی مشکلت حل میشه . باید اطلاعاتو به صورت رشته نفرستی .
دوستان یه سوال
این دو رشته حتما باید دور هم تابیده بشه
هرچه سعی کنیم لایه های نرم افزاری زیاد کرده و از سخت افزار دور کنیم مشکلات(باگ ها) کمتر خواهد شد(امنیت بیشتری خواهید داشت)
بهترین جواب دهنده برای سوال شما، خود شما هستید البته بعد تلاش،پشتکار و مطالعه بیشتر
میدونی مشکل ما کجاست؟سرمایه و مغز ها رو نمیتونیم یکجا جمع کنیم...
تعدادی ماژول GPS GP5MX1513F1 با بالاتریت حساسیت -170db به قیمت خرید بفروش میرسد
من که مشکل قبلی هم هنوز حل نشد البته بخواتر امتهان ها گذاشتم کنار حالا دو باره دارم سر ش کار می کنم اساتید اگر می تونند من رو کمک کنند
من با چه دستوری می تونم عددی که فرستادم تبدیل به کد اسکی شده رو دوباره تبدیل به عدد بکنم در بسکام فکر کنم بایک چنین دستور مشکلم حل بشه
نوشته اصلی توسط n340
دوستان یه سوال
این دو رشته حتما باید دور هم تابیده بشه
حالا جواب شما
نه دوست عزیزو لی بهتر است این کار رو انجام دهی این برای کابل های مخابراتی است اگر دقت کرده باشی و بخواهی برای مسافت های زیاد استفاده کنی داخل کابل های مخابراتی سیم ها دو تا دو تا بهم پیچیده شده اند مثلا سفید و قرمز سفید و آبی از ایکی از این دو تا برای کارت استفاده کن
دوستان یه سوال
برا یک سیم یک متری مقامت چند استفاده کنم
و فرقی بین max485 و ad485 هست یا نه
هرچه سعی کنیم لایه های نرم افزاری زیاد کرده و از سخت افزار دور کنیم مشکلات(باگ ها) کمتر خواهد شد(امنیت بیشتری خواهید داشت)
بهترین جواب دهنده برای سوال شما، خود شما هستید البته بعد تلاش،پشتکار و مطالعه بیشتر
میدونی مشکل ما کجاست؟سرمایه و مغز ها رو نمیتونیم یکجا جمع کنیم...
تعدادی ماژول GPS GP5MX1513F1 با بالاتریت حساسیت -170db به قیمت خرید بفروش میرسد
دیدگاه