اطلاعیه

Collapse
No announcement yet.

کمک برای اصلاح کد نویسی بیسکام

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    کمک برای اصلاح کد نویسی بیسکام




    سلام
    دوستانی که در کد نویسی بیسکام مهارت دارند لطفا کمک کنند
    این پروژه نوشتن تکس در ال سی دی هست
    چندتا تغییرات داشتم
    1 -صفحه کلید ماتریسی رو تبدیل به کلید کردم و با هر پالس منفی حرف تایپ میشه،میخواستم این تعداد ورودی را به 8 یا 10 عدد وروردی پالس منفی یا مثبت بشه
    2-موقعه تایپ بعد از تکس ، کاراکتر به خانه بعدی منتقل میشه، که نمی خواهم جابجایی داشته باشم چون هر کدوم حرفها رو دارم یه جمله می نویسم و نمیخوام جمله در پالس بعدی یه خونه به جلو بره
    3-اگر امکان داره دوستان کدها رو برام اصلاح کنن و بفرستن واگر بتونم فارسی تایپ کنم خیلی عالی میشه دوستان کد های مربوط به رنپی کردن پیکسل در قسمت TOOLSرا برام کد نویسی کنن خودم اصلاح میکنم
    4- این امکان باشه که هر ردیف بالا هم پایین جداگانه تایپ کنم
    تشکر فراوان
    اگر هزینه ای هم داشته باشه پرداخت میکنم

    دلیل: ادغام دو پست برای جلوگیری از اسپم

    [QUOTE=saeedsn2000;645432]


    سلام
    دوستانی که در کد نویسی بیسکام مهارت دارند لطفا کمک کنند
    این پروژه نوشتن تکس در ال سی دی هست
    چندتا تغییرات داشتم
    1 -صفحه کلید ماتریسی رو تبدیل به کلید کردم و با هر پالس منفی حرف تایپ میشه،میخواستم این تعداد ورودی را به 8 یا 10 عدد وروردی پالس منفی یا مثبت بشه
    2-موقعه تایپ بعد از تکس ، کاراکتر به خانه بعدی منتقل میشه، که نمی خواهم جابجایی داشته باشم چون هر کدوم حرفها رو دارم یه جمله می نویسم و نمیخوام جمله در پالس بعدی یه خونه به جلو بره
    3-اگر امکان داره دوستان کدها رو برام اصلاح کنن و بفرستن واگر بتونم فارسی تایپ کنم خیلی عالی میشه دوستان کد های مربوط به رنپی کردن پیکسل در قسمت TOOLSرا برام کد نویسی کنن خودم اصلاح میکنم
    4- این امکان باشه که هر ردیف بالا هم پایین جداگانه تایپ کنم
    تشکر فراوان
    اگر هزینه ای هم داشته باشه پرداخت میکنم[/QUO


    این هم کد


    $regfile = "m16def.dat"
    $crystal = 1000000
    $framesize = 128
    $hwstack = 128
    $swstack = 128
    $projecttime = 2

    'Globals
    Dim Position As Byte , Index As Byte , Tmr As Byte , Capslock As Bit
    Dim _num As String * 5 , Old_num As String * 5

    'Int
    Enable Interrupts

    'Timer
    Config Timer0 = Timer , Prescale = 64
    On Ovf0 Timeout0
    Enable Ovf0
    Stop Timer0

    'LCD
    Config Lcdpin = Pin , Db4 = Porta.4 , Db5 = Porta.5 , Db6 = Porta.6 , Db7 = _
    Porta.7 , E = Porta.2 , Rs = Porta.3
    Config Lcd = 16 * 2

    'Keypad
    Config Kbd = Portc

    'Sub's
    Declare Sub Main()
    Declare Sub _system_call_1()

    'Backlight
    Config Pinb.2 = Output : Backlight Alias Portb.2

    'Speaker
    Config Pinb.6 = Output : Speaker Alias Portb.6

    'Main Prog Start Here:
    Do
    Call Main()
    Loop
    End
    '_________________________________________________ ______________________________

    Sub Main()
    Sound Speaker , 240 , 50
    Cls : Cursor Off Blink
    Position = 1
    Local _key As Byte , _ch As String * 1
    Index = 0
    Old_num = ""
    Cls
    Do
    _key = Getkbd()

    _num = Lookupstr(_key , Keypad)
    If _num = "F2" Then
    Toggle Backlight
    Sound Speaker , 120 , 20
    Waitms 200
    End If
    If _num = "1" Then
    Call _system_call_1()
    _ch = Lookupstr(index , Sms1)
    Locate 1 , Position
    Lcd _ch
    Incr Index
    If Index > 12 Then Index = 0
    Sound Speaker , 120 , 20
    Waitms 200
    End If
    If _num = "2" Then
    Call _system_call_1()
    _ch = Lookupstr(index , Sms2)
    Locate 1 , Position
    If Capslock = 1 Then _ch = Ucase(_ch)
    Lcd _ch
    Incr Index
    If Index > 3 Then Index = 0
    Sound Speaker , 120 , 20
    Waitms 200
    End If
    If _num = "3" Then
    Call _system_call_1()
    _ch = Lookupstr(index , Sms3)
    Locate 1 , Position
    If Capslock = 1 Then _ch = Ucase(_ch)
    Lcd _ch
    Incr Index
    If Index > 3 Then Index = 0
    Sound Speaker , 120 , 20
    Waitms 200
    End If
    If _num = "4" Then
    Call _system_call_1()
    _ch = Lookupstr(index , Sms4)
    Locate 1 , Position
    If Capslock = 1 Then _ch = Ucase(_ch)
    Lcd _ch
    Incr Index
    If Index > 3 Then Index = 0
    Sound Speaker , 120 , 20
    Waitms 200
    End If
    If _num = "5" Then
    Call _system_call_1()
    _ch = Lookupstr(index , Sms5)
    Locate 1 , Position
    If Capslock = 1 Then _ch = Ucase(_ch)
    Lcd _ch
    Incr Index
    If Index > 3 Then Index = 0
    Sound Speaker , 120 , 20
    Waitms 200
    End If
    If _num = "6" Then
    Call _system_call_1()
    _ch = Lookupstr(index , Sms6)
    Locate 1 , Position
    If Capslock = 1 Then _ch = Ucase(_ch)
    Lcd _ch
    Incr Index
    If Index > 3 Then Index = 0
    Sound Speaker , 120 , 20
    Waitms 200
    End If
    If _num = "7" Then
    Call _system_call_1()
    _ch = Lookupstr(index , Sms7)
    Locate 1 , Position
    If Capslock = 1 Then _ch = Ucase(_ch)
    Lcd _ch
    Incr Index
    If Index > 4 Then Index = 0
    Sound Speaker , 120 , 20
    Waitms 200
    End If
    If _num = "8" Then
    Call _system_call_1()
    _ch = Lookupstr(index , Sms8)
    Locate 1 , Position
    If Capslock = 1 Then _ch = Ucase(_ch)
    Lcd _ch
    Incr Index
    If Index > 3 Then Index = 0
    Sound Speaker , 120 , 20
    Waitms 200
    End If
    If _num = "9" Then
    Call _system_call_1()
    _ch = Lookupstr(index , Sms9)
    Locate 1 , Position
    If Capslock = 1 Then _ch = Ucase(_ch)
    Lcd _ch
    Incr Index
    If Index > 4 Then Index = 0
    Sound Speaker , 120 , 20
    Waitms 200
    End If
    If _num = "0" Then
    Call _system_call_1()
    _ch = Lookupstr(index , Sms0)
    Locate 1 , Position
    Lcd _ch
    Incr Index
    If Index > 1 Then Index = 0
    Sound Speaker , 120 , 20
    Waitms 200
    End If
    If _num = "#" Then
    Call _system_call_1()
    _ch = Lookupstr(index , Sms_sh)
    Locate 1 , Position
    Lcd _ch
    Incr Index
    If Index > 1 Then Index = 0
    Sound Speaker , 120 , 20
    Waitms 200
    End If
    If _num = "Esc" Then
    If Tmr > 0 Then
    Stop Timer0
    Tmr = 0
    Incr Position
    End If
    If Position > 1 Then Decr Position
    Locate 1 , Position
    Lcd " "
    Locate 1 , Position
    Sound Speaker , 120 , 20
    Waitms 200
    Sound Speaker , 120 , 80
    End If
    If _num = "*" Then
    Toggle Capslock
    Sound Speaker , 120 , 20
    Waitms 200
    End If
    Loop
    End Sub
    '_________________________________________________ ______________________________

    'Keypad Decode Data Table
    Keypad:
    Data "1" , "2" , "3" , "Esc"
    Data "4" , "5" , "6" , "F2"
    Data "7" , "8" , "9" , "F3"
    Data "*" , "0" , "#" , "Enter" , "no"
    '_________________________________________________ ______________________________

    'SMS
    Sms1:
    Data "." , "," , "-" , "?" , "!" , "'" , "@" , ":" , ";" , "/" , "(" , ")" , "1"
    Sms2:
    Data " SALAM "
    Sms3:
    Data "SSSSSSSS"
    Sms4:
    Data " FFFFFFF "
    Sms5:
    Data "j" , "k" , "l" , "5"
    Sms6:
    Data "m" , "n" , "o" , "6"
    Sms7:
    Data "p" , "q" , "r" , "s" , "7"
    Sms8:
    Data "t" , "u" , "v" , "8"
    Sms9:
    Data "w" , "x" , "y" , "z" , "9"
    Sms0:
    Data "+" , "0"
    Sms_sh:
    Data " " , "#"
    '_________________________________________________ ______________________________

    Timeout0:
    Incr Tmr
    If Tmr > 30 Then
    Stop Timer0
    Tmr = 0
    Sound Speaker , 120 , 80
    Index = 0
    Incr Position
    Locate 1 , Position
    End If
    Return
    '_________________________________________________ ______________________________
    Sub _system_call_1()
    If Tmr > 0 And Old_num <> _num Then
    Stop Timer0
    Tmr = 0
    Incr Position
    End If
    Old_num = _num
    Start Timer0
    Tmr = 0
    End Sub



    'end of file

    #2
    پاسخ : کمک برای اصلاح کد نویسی بیسکام

    از پایه adc میکرو استفاده کن واسه صفحه کلیدت . اینطوری میتونی هرتعداد کلید ورودی که بخوای رو فقط با یه پین به میکرو متصل کنی و بعدش برنامتو ساده تر بنویسی

    دیدگاه


      #3
      پاسخ : کمک برای اصلاح کد نویسی بیسکام

      سلام
      اگه از دستور kbd و پیکر بندی اون استقاده کنی تا 16 تا کلید رو هم به راحتی میشه بهش وصل کرد
      در کل 8 تا پین هم بیشتر استفاده نمیشه
      برنامه نویسی ش هم خیلی راحت تره



      اگه مردم می دونستن زمان چقدر با ارزشه دیگه هیچ وقت کفش بند دار نمی خریدن البرت انیشتن

      دیدگاه


        #4
        پاسخ : کمک برای اصلاح کد نویسی بیسکام

        اگه از adc استفاده کنی فقط بااستفاده از یه پایه میکرو میتونی هر تعداد کلید که میخوای رو به میکرو متصل کنی و برنامت راحت تر میشه

        دیدگاه


          #5
          پاسخ : کمک برای اصلاح کد نویسی بیسکام

          بهتر بود برای اینکه برنامه شما کامل تر دیده بشه فایل را به صورت نوت پد یا با فرمت اصلی خود برنامه آپلود میکردید تا راحتر بشه راهنمایی کرد

          دیدگاه

          لطفا صبر کنید...
          X