ايران ويج

نسخه‌ی کامل: سوالهای برنامه نویسی با کامپایلر BASCOM
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
صفحه‌ها: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
(۱۱-فروردین-۱۳۹۰, ۱۱:۳۱:۲۴)ahmado نوشته است: [ -> ]باسلام : به دوستان عزيز: من يه مشكل در دريافت اطلاعات (رشته ها) و مقايسه اونها دارم لطفا راهنمايي كنيد :
اكر ما در حال دريافت تعدادي رشته به صورت سريال باشيم : مثلا : ( ahmad mahmod hosinie sara mina ahmadi) كه بعد از دريافت هررشته يا كلمه فوق ( اينتر ) زده باشد . اولا جطوري اين رشته ها را دريافت كنيم ودر ميكرو .دخيره كنيم و دوما اكر ما بخواهيم در اين رشته ها دنبال رشته خودمان باشيم . مثلا mina ahmadi را جطوري بفهميم كه در اين رشته ها است : ممنون ميشم كسي جواب بده :

سلام.
چيزي كه نوشتم كلي هست و خيلي محدود ، در حد دادن يه ايده براي كار هست ...
البته اگر درست باشه !
كتاب آقاي 1nafar هم دانلود كنيد كه خيلي بدرد مي خوره ...
يه سرچ بزني پيدا مي كني.

و اما كد ها ، اين طور فرض كردم كه اطلاعات از يك ميكرو به ميكروي ديگر فرستاده مي شه ...
کد:
'micro 1
' Data sender
Dim A As String * 30
A = "1Ali1ahmad1hadi1"
Config Porta = Output
Shiftout Pina.0 , Porta.1 , A , 0                           ' A.0 : send data & A.0 : it's clock

' .........................................

'micro 2
' Data reciver
Config Porta = Input
Dim A As String * 30 , F(10) As String * 10
Dim B(10) As Byte : Dim C As String * 1
C = "1"
Shiftin Pina.0 , Porta.1 , A , 0
B(0) = Instr(a , C)
For D = 1 To 11
E = B(d -1) + 1
B(d) = Instr(e , A , C)
Next D
For D = 0 To 10
Sta = B(d) + 1
L = B(d + 1) - b(d)
F(d) = Mid(a , Sta , L )
Next D
End

موفق باشيد.
يا علي.


(۲۶-تير-۱۳۹۰, ۲۳:۳۳:۳۹)arashdj نوشته است: [ -> ]با سلام

من یه مدار با 1307 راه انداختم و یک کلید تعریف کردم میخوام وقتی کلید زده شد 10 دقیقه رله وصل بعد قطع شود .یعنی رجیستر _min خوانده شود و 10 مین رله روشن و قطع شود
جز چند خط کانفیگ و 1307 اگه میشه این چند خطو بگید ممنون
نمیخوام ساعت کوک کنم فقط زمانه حالو بخونه و 10 مین بعد خاموش کنه

سلام.
1307 ؟! چي هست !
براي ساختن زمان 10 دقيقه از يكي از تايمر ها بايد استفاده كنيد ديگه ...
بسته به crystal اي كه تعيين كرديد ، در كد تايمر هم يه prescale مناسب تعيين مي كنيد و 10 دقيقه رو مي سازيد.
حالا داستان اينه كه هر وقت كليد زده شد ، تايمر شروع كنه به شمارش و بعد از اينكه 10 دقيقه تمام شد ، اون port رو صفر كنه ...
به همين سادگي ...
اون كليد رو هم مي تونيد مستقيم به يكي از وقفه هاي خارجي وصل كنيد.

موفق باشيد.
يا علي.
سلام
منظورم ds1307 آی سی ساعت و تاریخه
سلام به همگي ...

دوستان ، فرض كنيد 3 متغيير از نوع string داريم كه طول هر كدام مثلا يك هست.
به طريقي اين 3 متغيير مقدار دهي شده اند ...
حالا چطور بايد 3 متغيير رو پشت سر هم بزاريم و در يك متغيير جمع كنيم ؟!
بايد از چه دستوري استفاده كنيم ؟
کد:
Str1 = "f"
Str2 = "H"
Str3 = "c"
.
.
.
S = ؟
'S = fhc
:d

خوب جواب اينه كه بايد بنويسيم ...

کد:
s=str1+str2+str3

به همين سادگي ... :d
یاشاسین

می خوام بدونم نحوه کد دهی برای برنامه ماژول hm-t و hm-r چطوریه؟؟

اونجایی که مثلا نوشته :

کد:
dim a as string * 13

منظورش از 13 کد هستش یا چیز دیگه؟؟

اگه کد هست , چه کدهای دیگه ای هم میشه بهش داد؟؟

در کل برای جلو گیری از تداخل این ماژولها چطوری بهش کد بدم؟؟


--------------------------------------------------------------
کلمات حباب آبند و اعمال , قطره طلا (ضرب المثل چینی)
سلام رسول جان.

در مورد hmt-hmr اينا رو ببين.

http://www.iranled.com/forum/thread-2078...9%84+HM-TR

http://www.iranled.com/forum/search.php?...order=desc
نقل قول: اونجایی که مثلا نوشته :

کد:
dim a as string * 13

اينجا يه متغيير با نام A از نوع string با طول 13 تعريف كرده . براي string بايد طولش رو هم بنويسيم ...
منظورتون همين بود ؟

يا علي.
یاشاسین

منظورم اینه که اگه بخوام مثلا چند تا ماژول باهم کار کنن اما با هم تداخلی نداشته باشن , چطوری بهشون کدهای جداگانه بدم؟؟

یعنی چطوری توی برنامه بهش کد بذارم؟؟ با چه دستوری؟؟

-----------------------------------------------------
هر چه صبر بیشتر , دقت و موفقیت بیشتر (فارلو)
آهان ...
(باز من حرف زدم ... )
ببخشيد ...

از نظر عملي كه ... ، اما از نظر تئوري استدلال كنيم ، اگر قرار باشه فرستنده ها با يه فركانس مشخص كار كنند و گيرنده ها هم همينطور ...( يعني قابل تغيير نباشه ... ) ، پس سيگنال هاي همه به هم مي رسه ... !!
اما براي تفاوت قائل شدن بين هر فرستنده و گيرنده بايد سيگنال هامون رو در فرستنده كد بزنيم و در گيرنده با ديكود خاص همون كد ، سيگنال رو ديكود كنيم.
در واقع يه نوع فيلترينگ هست ...

مثل پروژه ي caller ID هست ، اولش چطور شروع مي شه ؟
داده ها رو مي گيره ، اما اعتنا نمي كنه تا اينكه مثلا مقدار 4 رو در وروديش ببينه كه بفهمه اين سيگنال مربوط به خودش مي شه و بعد باقيه ماجرا ...

حالا اگر همه بخوان تحت فرمان يه IC باشن ، خوب ماژول فرستنده و گيرنده اي كه روي MASTER هست ، بجايي كه فقط به يك كد حساس باشه ( مثل همون 4 ) بايد كل كدها و ديكودهاي اعضاي تو شبكه رو داشته باشه كه بتونه باهاشون صحبت كنه و ازشون اطلاعات بگيره ...

در كل فكر نمي كنم كار سختي باشه ( مگر اينكه استدلالم غلط باشه كه ناشي از نشناختن سخت افزار هه ... )
اگر چيزايي كه گفتم درسته ، فقط كافيه يه كد مثلا به اول هر دستوري اضافه كنيم و در گيرنده شناسايي كنيم و اون كد رو از اطلاعات اصلي جدا كنيم ( اصطلاحا ديكود كنيم ... )

اميدوارم درست گفته باشم ...

موفق باشيد.
يا علي.

نمي دونم از چه پروتكل ارتباطي بايد استفاده كني ،‌ يه چيز كلي مي گم ...

فرض كن داده اي كه مي خواهي بفرستي ( بر حسب دسيمال ) 4004 باشه ، مي خواي اين سيگنال رو كد كني ، مي نويسي ...

کد:
A=4004
code1=22
A_coded1=A+10000*code1
print A_coded

براي ديكود كردنش هم بايد تقسيم بر 10000*code1 كني...

-----------------
مي توني اول string اشون كني و چينشش رو درست كني بعد دوباره تبديل كني به هگزادسيمال مثلا ...
موقع گرفتن تبديلش كني به string و 2 رقم اولش رو جدا كني و با if شرط رو check كني ...
----------------
اگر باداده هاي باينري كار مي كني ، بعد از فرستادن ، مي توني با استفاده از mask ديكود كني و ...

خلاصه هر جور دوست داشتي ...
دستت بازه ...

يا علي.
سلام...
اگه من پابه RX رو خروجی کنم میتونم از پایه TX به عنوان ارسال اطلاعات استفاده کنم؟؟ یا ابنکه نمیشه!!!
اگه نخواین با میکرو اطلاعات بگیرین میشه
ربطی به اون نداره ابراهیم جون
جدا هستند
با سلام
من می خوام اطلاعات متغیر s که از نوع string هم هست را به جدول lockup در بسکام اضافه کنم . خواهشا سریع راهنماییم کنید
صفحه‌ها: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23