String of characters(array) to decimal value


Closed Thread
Results 1 to 21 of 21

Hybrid View

  1. #1
    Join Date
    Oct 2005
    Location
    Sweden
    Posts
    3,624


    Did you find this post helpful? Yes | No

    Default Re: String of characters(array) to decimal value

    I don't understand the problem...The code in your first post should work just fine and so should that in your latest post - have you actually TRIED this or are you just thinking to much ;-)

    myArray[0] = "H"

    If myArray[0] = "H" THEN...
    or
    If myArray[0] = 72 THEN...
    or
    If myArray[0] = 001000 THEN...
    or
    If myArray[0] = $48 THEN...

    Same thing as in my previous response - they are all the exact same thing just expressed in different ways.

  2. #2
    Join Date
    Jun 2011
    Location
    Philippines
    Posts
    223


    Did you find this post helpful? Yes | No

    Default Re: String of characters(array) to decimal value

    Okay I'm a little confused...the following is what I'm actually trying to make it work..
    Code:
    porta=0  :  portb=0  :  portc=0  :  portd=0
    trisa=0  :  trisb=0  :  trisc=0  :  trisd=0
    porte=0  : trise=0
    harf_reg var byte
    adres_sec var byte
    yinele var byte
    sutun_reg var byte[300]
    veri var byte
    yazi_reg var byte 
    i VAR BYTE
    x var byte
    z var byte
    y var byte
    t var byte
    q var byte
    sure var byte
    yedek var byte
    '*****************************************************************************
    myArray VAR BYTE[11]
    myArray[0]="H"     
    myArray[1]="E"
    myArray[2]="L"
    myArray[3]="L"
    myArray[4]="O"
    myArray[5]=" "
    myArray[6]="W"
    myArray[7]="O"
    myArray[8]="R"
    myArray[9]="L"
    myArray[10]="D"
    
    
    CLEAR  :  portd=255:sure=200 :GOTO oku:
    oku:
    z=11
    
    
        for i=1 to z
            
            harf_reg = myArray[i]
        
            call data_sec
            
            for y=0 to yinele
                call datalar
                sutun_reg[t]=veri  :  t=t+1
                adres_sec=adres_sec+1
            next y
        next i
    t=0
    goto gonder
    gonder:
    FOR Q=0 TO 5
        for i=0 to 15
            portb=sutun_reg[t]  :  t=t+1
            porta=i
            
            portc=1111110:PAUSEUS sure:portc=111111
            
        next i
    
    
     for i=0 to 15
            portb=sutun_reg[t]  :  t=t+1
            porta=i
            portc=111101:pauseus sure:portc=111111
        next i
     for i=0 to 15
            portb=sutun_reg[t]  :  t=t+1
            porta=i
            portc=111011:pauseus sure:portc=111111
        next i
     
     for i=0 to 15
            portb=sutun_reg[t]  :  t=t+1
            porta=i
            portc=110111:pauseus sure:portc=111111
        next i
     
     for i=0 to 11
            portb=sutun_reg[t]  :  t=t+1
            porta=i
            portc=101111:pauseus sure:portc=111111
        next i
     
     
       
       
    t=0   
    
    
    NEXT Q
    goto kaydir
    kaydir:
        yedek=sutun_reg[0]
        for i=0 to 239
          ' sutun_reg[i]=sutun_reg[i+1]  ' this is for moving characters
        next i
          '  sutun_reg[240]=yedek
    goto gonder
    
    
    data_sec:
    select case harf_reg
    case "A"
    adres_sec=0  :  yinele=5  :  return
    case "B"
    adres_sec=6  :  yinele=5  :  return
    case "C"
    adres_sec=12  :  yinele=5  :  return
    case "D"
    adres_sec=18  :  yinele=5  :  return
    case "E"
    adres_sec=24  :  yinele=5  :  return
    case "F"
    adres_sec=30  :  yinele=5  :  return
    case "G"
    adres_sec=36  :  yinele=5  :  return
    case "H"
    adres_sec=42  :  yinele=5  :  return
    case "I"
    adres_sec=48  :  yinele=3  :  return
    case "i"
    adres_sec=52  :  yinele=3  :  return
    case "J"
    adres_sec=56  :  yinele=5  :  return
    case "K"
    adres_sec=62  :  yinele=5  :  return
    case "L"
    adres_sec=68  :  yinele=5  :  return
    case "M"
    adres_sec=74  :  yinele=5  :  return
    case "N"
    adres_sec=80  :  yinele=5  :  return
    case "O"
    adres_sec=86  :  yinele=5  :  return
    case "P"
    adres_sec=92  :  yinele=5  :  return
    case "Q"
    adres_sec=98  :  yinele=5  :  return
    case "R"
    adres_sec=104  :  yinele=5  :  return
    case "S"
    adres_sec=110  :  yinele=5  :  return
    case "T"
    adres_sec=116  :  yinele=5  :  return
    case "U"
    adres_sec=122  :  yinele=5  :  return
    case "ü"
    adres_sec=128  :  yinele=5  :  return
    case "V"
    adres_sec=134  :  yinele=5  :  return
    case "W"
    adres_sec=140  :  yinele=5  :  return
    case "X"
    adres_sec=146  :  yinele=5  :  return
    case "Y"
    adres_sec=152  :  yinele=5  :  return
    case "Z"
    adres_sec=158  :  yinele=5  :  return
    case " "
    adres_sec=164  :  yinele=5  :  return
    case "0"
    adres_sec=170  :  yinele=5  :  return
    case "1"
    adres_sec=176  :  yinele=3  :  return
    case "2"
    adres_sec=180  :  yinele=5  :  return
    case "3"
    adres_sec=186  :  yinele=5  :  return
    case "4"
    adres_sec=192  :  yinele=5  :  return
    case "5"
    adres_sec=198  :  yinele=5  :  return
    case "6"
    adres_sec=204  :  yinele=5  :  return
    case "7"
    adres_sec=210  :  yinele=5  :  return
    case "8"
    adres_sec=216  :  yinele=5  :  return
    case "9"
    adres_sec=222  :  yinele=5  :  return
    end select
    
    
    datalar:
    
    
     lookup adres_sec,[$7C,$0A,$09,$0A,$7C,0_      ;A
                       ,$7F,$49,$49,$49,$36,0_      ;B
                       ,$3E,$41,$41,$41,$22,0_      ;C
                       ,$7F,$41,$41,$41,$3E,0_      ;D
                       ,$7F,$49,$49,$49,$41,0_      ;E
                       ,$7F,$09,$09,$09,$01,0_      ;F
                       ,$3E,$41,$49,$49,$3A,0_      ;G
                       ,$7F,$08,$08,$08,$7F,0_      ;H
                       ,$41,$7F,$41,0_              ;I
                       ,$44,$7D,$44,0_              ;Ý
                       ,$20,$40,$41,$3F,$01,0_      ;J
                       ,$7F,$08,$14,$22,$41,0_      ;K
                       ,$7F,$40,$40,$40,$40,0_      ;L
                       ,$7F,$02,$04,$02,$7F,0_      ;M
                       ,$7F,$04,$08,$10,$7F,0_      ;N
                       ,$3E,$41,$41,$41,$3E,0_      ;O
                       ,$7F,$09,$09,$09,$06,0_      ;P
                       ,$3E,$41,$51,$61,$3E,0_      ;Q
                       ,$7F,$09,$19,$29,$46,0_      ;R
                       ,$26,$49,$49,$49,$32,0_      ;S
                       ,$01,$01,$7F,$01,$01,0_      ;T
                       ,$3F,$40,$40,$40,$3F,0_      ;U
                       ,$1E,$41,$01,$41,$1E,0_      ;Ü
                       ,$1F,$20,$40,$20,$1F,0_      ;V
                       ,$3F,$40,$30,$40,$3F,0_      ;W
                       ,$63,$14,$08,$14,$63,0_      ;X
                       ,$07,$08,$70,$08,$07,0_      ;Y
                       ,$61,$51,$49,$45,$43,0_      ;Z
                       ,$00,$00,$00,$00,$00,0_      ;Space
                       ,$3E,$51,$49,$45,$3E,0_      ;0
                       ,$42,$7F,$40,0_              ;1
                       ,$62,$51,$49,$45,$42,0_      ;2    
                       ,$22,$49,$49,$49,$36,0_      ;3
                       ,$18,$14,$12,$7F,$10,0_      ;4
                       ,$2F,$49,$49,$49,$31,0_      ;5
                       ,$3E,$49,$49,$49,$32,0_      ;6
                       ,$61,$11,$09,$05,$03,0_      ;7
                       ,$36,$49,$49,$49,$36,0_      ;8
                       ,$26,$49,$49,$49,$3E,0],veri ;9
    return
    I think my trouble is this part..
    Code:
     for i=1 to z
            
            harf_reg = myArray[i]
    
            call data_sec
    it produce this output (not HELLO WORLD)
    Name:  LedMatrix1.png
Views: 7280
Size:  50.7 KB
    But when I modify it to this code..
    Code:
     for i=1 to z
            
            harf_reg = 64+i
    
            call data_sec
    This is the output..
    Name:  LedMatrix2.png
Views: 7029
Size:  8.0 KB

    What do you think I'm missing in the process?

    Thanks,
    tacbanon
    Last edited by tacbanon; - 10th June 2012 at 15:02.

  3. #3
    Join Date
    Oct 2005
    Location
    Sweden
    Posts
    3,624


    Did you find this post helpful? Yes | No

    Default Re: String of characters(array) to decimal value

    Hi,
    Try using GOSUB instead of CALL.
    Also, your FOR loop starts indexing at myArray[1] instead of myArray[0] but that's not the real problem.

    /Henrik.

  4. #4
    Join Date
    Jun 2011
    Location
    Philippines
    Posts
    223


    Did you find this post helpful? Yes | No

    Default Re: String of characters(array) to decimal value

    Quote Originally Posted by HenrikOlsson View Post
    Hi,
    Try using GOSUB instead of CALL.
    Also, your FOR loop starts indexing at myArray[1] instead of myArray[0] but that's not the real problem.
    /Henrik.
    Hi, I tried it already but no changes...probably I need to try it on the real hardware....I will post later any results.

    Kind regards,
    tacbanon

  5. #5
    Join Date
    Jun 2011
    Location
    Philippines
    Posts
    223


    Did you find this post helpful? Yes | No

    Default Re: String of characters(array) to decimal value

    I thought it was a simulation issue so I tried it in the real device...but to my surprise I still get the same output..(not displaying 'HELLO WORLD')
    Attachment 6520

    I appreciate any input...

    Thanks in advance,
    tacbanon
    Attached Images Attached Images  
    Last edited by tacbanon; - 11th June 2012 at 02:02.

  6. #6
    Join Date
    Aug 2006
    Location
    Look, behind you.
    Posts
    2,818


    Did you find this post helpful? Yes | No

    Default Re: String of characters(array) to decimal value

    Looks to me as if you load HELLO WORLD into your array and then the following statement "CLEAR" erases all of your good work. I would try moving clear up above the array loading statements.
    If you do not believe in MAGIC, Consider how currency has value simply by printing it, and is then traded for real assets.
    .
    Gold is the money of kings, silver is the money of gentlemen, barter is the money of peasants - but debt is the money of slaves
    .
    There simply is no "Happy Spam" If you do it you will disappear from this forum.

  7. #7
    Join Date
    Jun 2011
    Location
    Philippines
    Posts
    223


    Did you find this post helpful? Yes | No

    Default Re: String of characters(array) to decimal value

    Quote Originally Posted by Archangel View Post
    Looks to me as if you load HELLO WORLD into your array and then the following statement "CLEAR" erases all of your good work. I would try moving clear up above the array loading statements.
    Wow ..thank you for taking the time looking at the code...now it's working as expected..(yipee!).
    Thank you Archangel and thanks Henrik....

    Kind Regards,
    tacbanon

  8. #8
    Join Date
    Jun 2011
    Location
    Philippines
    Posts
    223


    Did you find this post helpful? Yes | No

    Default Re: String of characters(array) to decimal value

    Hi, I,m trying to modify the program by entering strings from serial communicator to make led matrix message display dynamic.
    I've been trying to incorporate DT's LCDBackpack code to this led matrix application but I'm getting no results.
    Here is what I'm doing...first is to test if interrupts will work.
    1. In the main loop I'm sending text/data thru serial communicator
    2. I'm using the LCDBackPack code to receive strings using "^" as the end text terminator.
    3. When the terminator is detected it calls the sub process which is the ledmatrix code(post#5).
    But I realized that it only happens once, and it never goes back to the main program to accept another set of text string...probably this is not a good solution to what I'm trying to achieve. I'm asking from the experienced members to give some pointers/suggestions that will solve the issue I'm having.
    I appreciate any input and your time.

    Regards,
    tacbanon

Members who have read this thread : 1

You do not have permission to view the list of names.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts