PDA

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



amin69
19-03-2014, 01:41
سلام دوستان
الان به یه مشکلی خوردم
گفتم باز اولین جایی که به ذهنم رسید همین جا بود
من برای خوندن عداد مقدار یکان دهگان و 3 رو از کی پد میگیرم
و با ضرب و جمع در اخر مقدار ورودی رو میتونیم به دست بیاریم

ولی حالا میخوام یه رشته عددی 15 رقمی رو از طریق کی پد وارد کنم
ولی اولین مشکل انه که داده من چطوری در پایان به صورت یه string 15تایی در خواهد اومد
و دومین سوال اینه که حلقه لازم برای اسکن و نمایش و ایجاد این رشته به چه صورت خواهد بود(با بیسیک کار میکنم)
:unh:

sobhan537
19-03-2014, 02:06
سلام
برای دریافت یک رشته 15 کاراکتری از کیپد، می تونید از تکه برنامه زیر استفاده کنید:

Dim A As Byte
Dim B As Byte
Dim Reshte As String * 15 : Reshte = ""
Dim I As Byte

Do
A = Getkbd()
If A <> 16 Then
B = Lookup(a , Jadvaleadad)
Reshte = Reshte + Str(b)
Incr I
End If
Loop Until I => 15

amin69
19-03-2014, 02:21
برای تغییر مقدارا باید چیکار کنم(مثلا وقتی 1 زده میشه 0 بر میگرده که برای عددی ها من باselect case یه جوری ردیفش کردم(بدون حلقه!)برای ان نمیدونم ولی!)
در ضمن تو این تکه برنامه نشون داده نمیشه رشته!

sobhan537
19-03-2014, 04:07
این یک تکه از برنامست دوست عزیز، اینجا که قرار نیست ما برای شما برنامه نویسی کنیم. :unh: الگوریتم و چگونگی برنامه نویسی رو میگیم و حالا شما به هر زبانی که دوست داشته باشی میتونی برنامشو بنویسی... :018:

تو خطی که نوشتم (B = Lookup(a , Jadvaleadad، یعنی اینکه مقدار B بستگی به جدول lookup داره. من اینجا جدول lokkup رو ننوشتم، چون جدول lookup وابسته هستش به: به نحوه اتصال پایه های کیپد به میکرو و همچنین مقدار رشته هایی که شما دوست دارید با ردن هر کلید برگرده. با select case هم میشه برنامه رو نوشت و دیگه از جدول lookup استفاده نکرد، اما lookup استانداردتره.

رشته وارد شده داخل متغیر reshte ریخته میشه، حالا شما هر بلایی دوست داری سرش بیار؛ روی lcd نشونش بده یا ...

amin69
19-03-2014, 11:54
واقیتش منم همچین انتظاری ندارم!
ولی همین راهنمایی ها هم خیلی مهمه
من تو کتاب کاهه چیزی در مورد این جدول lookupپیدا نکردم
اگه ممکنه یه مثالم برای اون بزنید
نحوه نمایششم فک کنم بنونم ردیفش کنم

sobhan537
19-03-2014, 13:09
جدول lookup بصورت زیر تعریف میشه:

B = Lookup(a , Jadvaleadad)
.
.
.
End
Jadvaleadad:
Data 7 , 8 , 9 , 10 , 4 , 5 , 6 , 20 , 1 , 2 , 3 , 30 , 40 , 0 , 50 , 60

برنامه بالا یعنی اینکه بسته به مقدار a، یکی از ارقام 7 یا 8 یا ... داخل متغیر B قرار میگیره. اگه a صفر باشه 7، اگه a=1 باشه 8، اگه a=2 باشه 9 و ... داخل B قرار میگیره.

برای فراخوانی کاراکتر هم میتونید از دستور lookupstr استفاده کنید.