just saying... "Problem is definitely in arrays... but as soon their total length exceeds 24 bytes, issues start to appear. " doesn't seem to pan out.
The following reads three 16-byte arrays (48 bytes total) 20K times and verifies the arrayreads. No errors.
Same with the original two 16-byte arrays.
Tried both PBP 3.16 and PBPL. No difference.Code:' device = 18F45K80 topline var byte [16] 'top part of the screen array botline var byte [16] 'bottom part of screen line3 var byte [16] 'more array data ix var byte ct var byte cb var byte c3 var byte i var word fail var word fail = 0 for i = 0 to 20000 ' clear arrays for ix = 0 to 15 topline[ix] = 0 botline[ix] = 0 line3[ix] = 0 next ix ' read array data arraywrite topline,["ABCDEFGHIJKLMNOP"] arraywrite botline,["QRSTUVWXYZ[\]^_`"] arraywrite line3, ["abcdefghijklmnop"] 'read array char by char and check for ix = 0 to 15 ct = topline[ix] if (ct-"A" <> ix) then fail = fail + 1 cb = botline[ix] if (cb-"Q" <> ix) then fail = fail + 1 c3 = line3[ix] if (c3-"a" <> ix) then fail = fail + 1 next ix next i ' check for failure if (fail > 0) then i = fail endif
Post the complete code that doesn't work.I just wrote another code, which simply reads values of array and writes data on 1602LCD.
Issue still exists




Bookmarks