Home
JAQForum Ver 20.06
Log In or Join  
Active Topics
Local Time 20:40 01 May 2024 Privacy Policy
Jump to

Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.

Forum Index : Microcontroller and PC projects : ILI9325 driver problems....

Author Message
Grogster

Admin Group

Joined: 31/12/2012
Location: New Zealand
Posts: 9066
Posted: 10:24pm 25 Jan 2016
Copy link to clipboard 
Print this post

Hi folks.

I am not getting any response at all from the driver, and MMBASIC says the command to open the display is unknown.


sub mm.startup
CPU 48
LOCAL CFuncAddr%
LOCAL Retrn%
CFuncAddr%=PEEK(CFUNADDR ILI9325_V64)
Retrn% = ILI9325_V64(CFuncAddr%,4) 'CFunction address, reset pin, orientation
end sub

'sub mm.startup
' ILI9325_V64(PEEK(CFUNADDR ILI9325_V64),4)
'end sub

'**********Append this code and below onto the end of your MMBasic program***********
'
' Copyright (c) Peter Mather 2015
'
' Initialise the Display Driver for ILI9325 controlled TFT LCD Panel in 8-bit databus, 16-bit mode
' i.e. RGB565. This is optimised for the 44-pin uM2 and uses defined pinout except for the reset pin
' NOTE For this display in 8-bit mode you must connect to DB8-DB15 and not DB0 to DB7
'
' Display.Open initialises the loadable CFunction driver so that you can use all of the
' MMBasic graphic commands in your program.
'
' Orient% PORTRAIT=0,RPORTRAIT=1,LANDSCAPE=2,RLANDSCAPE=3
' RST% is pin number of Reset signal
'
' After Calling Display.Open, any of the usual MM Graphic commands may be used
' in your MMBasic program, eg BOX, TEXT, LINE, CIRCLE etc
'
' Note: you must use pins 25,26,27,36,37,38,2,3 for the data pins DB8-DB15
' you must use pin 4 for RS and pin 5 for WR
' Tie CS Low and tie RD high
'
' Ver 1.02 2015-08-19 Initial Release
' Ver 1.03 2015-12-21 Swap parameters for compatibility with 64-pin code
'
'**********************************************************************************
' File ILI9325_V64.bas written 21-Dec-2015 11:56:02
'
CSUB ILI9325_V64
00000021
'writeRegister
3C02BF88 24031000 AC436134 00041A02 306302FF 34630800 AC436430 24030800
AC436134 AC436138 308402FF 34840800 AC446430 AC436134 AC436138 2402FFFF
10A2000E 3C02BF88 24031000 AC436138 7CA34A00 34631800 AC436430 24030800
AC436134 AC436138 30A503FF 34A51800 AC456430 AC436134 AC436138 03E00008
00000000
'main
27BDFFB0 AFBF004C AFB40048 AFB30044 AFB20040 AFB1003C AFB00038 0080A021
3C029D00 8C430090 8CA40000 A0640015 8C420090 2403001C A043002E 2402003C
AFA20018 2402003D AFA2001C 2402003E AFA20020 2402003F AFA20024 24020040
AFA20028 24020001 AFA2002C 24020002 AFA20030 24020003 AFA20034 27B20018
27B30038 3C109D00 8E510000 8E020010 02202021 24050008 0040F809 00003021
8E020010 02202021 24050065 0040F809 00003021 8E02001C 02202021 0040F809
24050005 26520004 5653FFF0 8E510000 3C109D00 8E020010 2404001B 24050008
0040F809 00003021 8E020010 2404001B 24050065 0040F809 00003021 3C11BF88
24021000 AE226138 8E020010 24040018 24050008 0040F809 00003021 8E020010
24040018 24050065 0040F809 00003021 24020800 AE226138 8E030090 8E020010
8064002E 24050008 0040F809 00003021 8E030090 8E020010 8064002E 24050065
0040F809 00003021 8E030090 8E02001C 8064002E 0040F809 24050006 3C029D00
24420084 3C129D00 265208B0 0242182B 10600004 02429023 8E830000 10000003
02439021 8E830000 02439021 3C119D00 263109FC 0222182B 10600004 02228823
8E830000 10000003 02238821 8E830000 02238821 3C109D00 8E030090 8E02001C
8064002E 0040F809 24050006 8E020004 0040F809 3404C350 8E030090 8E02001C
8064002E 0040F809 24050005 8E020004 0040F809 3404C350 8E030090 8E02001C
8064002E 0040F809 24050006 8E020004 0040F809 3404C350 240400E5 240578F0
0411FF4E 00000000 24040001 24050100 0411FF4A 00000000 24040002 24050700
0411FF46 00000000 24040003 24051030 0411FF42 00000000 24040004 00002821
0411FF3E 00000000 24040008 24050207 0411FF3A 00000000 24040009 00002821
0411FF36 00000000 2404000A 00002821 0411FF32 00000000 2404000C 00002821
0411FF2E 00000000 2404000D 00002821 0411FF2A 00000000 2404000F 00002821
0411FF26 00000000 24040010 00002821 0411FF22 00000000 24040011 24050007
0411FF1E 00000000 24040012 00002821 0411FF1A 00000000 24040013 00002821
0411FF16 00000000 24040007 24050001 0411FF12 00000000 8E020004 0040F809
3404C350 24040010 24051090 0411FF0B 00000000 24040011 24050227 0411FF07
00000000 8E020004 0040F809 3404C350 24040012 2405001F 0411FF00 00000000
8E020004 0040F809 3404C350 24040013 24051500 0411FEF9 00000000 24040029
24050027 0411FEF5 00000000 2404002B 2405000D 0411FEF1 00000000 8E020004
0040F809 3404C350 24040020 00002821 0411FEEA 00000000 24040021 00002821
0411FEE6 00000000 24040030 00002821 0411FEE2 00000000 24040031 24050707
0411FEDE 00000000 24040032 24050307 0411FEDA 00000000 24040035 24050200
0411FED6 00000000 24040036 24050008 0411FED2 00000000 24040037 24050004
0411FECE 00000000 24040038 00002821 0411FECA 00000000 24040039 24050707
0411FEC6 00000000 2404003C 24050002 0411FEC2 00000000 2404003D 24051D04
0411FEBE 00000000 24040050 00002821 0411FEBA 00000000 24040051 240500EF
0411FEB6 00000000 24040052 00002821 0411FEB2 00000000 24040053 2405013F
0411FEAE 00000000 24040060 3405A700 0411FEAA 00000000 24040061 24050001
0411FEA6 00000000 2404006A 00002821 0411FEA2 00000000 24040080 00002821
0411FE9E 00000000 24040081 00002821 0411FE9A 00000000 24040082 00002821
0411FE96 00000000 24040083 00002821 0411FE92 00000000 24040084 00002821
0411FE8E 00000000 24040085 00002821 0411FE8A 00000000 24040090 24050010
0411FE86 00000000 24040092 24050600 0411FE82 00000000 24040007 24050133
0411FE7E 00000000 8E020090 80420015 24030002 10430008 24030004 1043000A
24051000 24030001 10430007 24051028 10000002 24050008 24051030 38420003
24031018 0062280A 24040003 0411FE6B 00000000 3C029D00 8C420090 90420015
30420001 10400008 3C029D00 8C430098 240400F0 AC640000 8C420094 24030140
10000007 AC430000 8C430094 240400F0 AC640000 8C420098 24030140 AC430000
3C109D00 8E020048 AC520000 8E020048 8E030094 8C660000 8E030098 8C670000
AFA00010 8C420000 00002021 00002821 24C6FFFF 0040F809 24E7FFFF 8E02004C
AC510000 00001021 00001821 8FBF004C 8FB40048 8FB30044 8FB20040 8FB1003C
8FB00038 03E00008 27BD0050
'defineregion
27BDFFD8 AFBF0024 AFB40020 AFB3001C AFB20018 AFB10014 AFB00010 2483FFFF
00661821 24A6FFFF 00C73021 3C099D00 8D270094 8CE80000 8D270098 8CE90000
0109382B 10E00003 01205021 01005021 01204021 3C079D00 8CE70090 80E90015
24070002 15270008 24070004 00809821 00608821 00A0A021 00C08021 00A09021
10000019 00801021 1527000C 24070001 00031827 006A9821 00048827 022A8821
00063027 00C8A021 00058027 02088021 02009021 10000016 02201021 1527000B
24070003 00063027 00CA9821 00058827 022A8821 0080A021 00608021 00809021
1000000B 02201021 24070003 15270008 00031827 00A09821 00C08821 0068A021
00048027 02088021 02009021 00A01021 24040020 00402821 0411FDF5 00000000
24040021 02402821 0411FDF1 00000000 24040050 02602821 0411FDED 00000000
24040052 02802821 0411FDE9 00000000 24040051 02202821 0411FDE5 00000000
24040053 02002821 0411FDE1 00000000 24040022 2405FFFF 0411FDDD 00000000
8FBF0024 8FB40020 8FB3001C 8FB20018 8FB10014 8FB00010 03E00008 27BD0028
'DrawRectangle_ILI9325
27BDFFE0 AFBF001C AFB10018 AFB00014 0086102A 14400004 8FB00030 00801021
00C02021 00403021 00A7102A 14400005 28820000 00A01021 00E02821 00403821
28820000 0002200B 3C029D00 8C420094 8C420000 0082402B 2443FFFF 0068200A
28C30000 0003300B 00C2182B 2442FFFF 0043300A 28A20000 0002280B 3C029D00
8C420098 8C430000 00A3402B 2462FFFF 0048280A 28E20000 0002380B 00E01021
00E3382B 2463FFFF 0067100A 24070001 00E41823 00663021 00E53823 00E23821
70E68802 0411FF66 00000000 24031000 3C02BF88 AC436138 00102403 308400F8
7E021340 00822025 34841800 00101143 304200E0 7E1020C0 00508025 1220000E
36101800 2631FFFF 3C02BF88 24030800 2405FFFF AC446430 AC436134 AC436138
AC506430 AC436134 AC436138 2631FFFF 1625FFF8 00000000 8FBF001C 8FB10018
8FB00014 03E00008 27BD0020
'DrawBitmap_ILI9325
27BDFFB0 AFBF004C AFBE0048 AFB70044 AFB60040 AFB5003C AFB40038 AFB30034
AFB20030 AFB1002C AFB00028 AFA40050 00A0F021 00C09021 AFA7005C 8FB00060
8FA30064 8FA20068 8FB3006C 3C069D00 8CC70094 8CF10000 8CC60098 8CC60000
AFA60010 0003BC03 32F700F8 7C661340 02E6B825 36F71800 0003B143 32D600E0
7C6320C0 02C3B025 36D61800 0002AC03 32B500F8 7C431340 02A3A825 36B51800
0002A143 329400E0 7C4220C0 0282A025 36941800 72123002 8FA2005C 72023802
0411FF14 00000000 24031000 3C02BF88 AC436138 8FA3005C 1860005B 02007821
AFBE0014 00121023 AFA2001C 7072F002 27DEFFFF AFB20020 00007021 AFA00018
24180001 3C05BF88 1000004B 24060800 04400019 0051202B 50800018 24630001
05220016 24630001 51600014 24630001 91A40000 008C2024 10800009 00000000
ACB76430 ACA66134 ACA66138 ACB66430 ACA66134 ACA66138 10000008 24630001
ACB56430 ACA66134 ACA66138 ACB46430 ACA66134 ACA66138 24630001 1470FFE4
24420001 24E70001 2508FFFF 10F20010 014F5021 00EE1021 24430007 284D0000
006D100B 000268C3 026D6821 000817C3 00021742 01026021 318C0007 01826023
01986004 01401021 1000FFD1 00001821 27390001 17300004 25290001 10000009
8FA30018 0000C821 1A40FFF9 8FAA0050 03C04021 00003821 8FA20010 1000FFE5
0122582B 24630001 AFA30018 8FA20014 004F1021 AFA20014 8FA3001C 03C3F021
8FA20020 01C27021 8FA30018 8FA2005C 10620006 8FBF004C 1E00FFEA 8FA90014
1000FFF0 8FA30018 8FBF004C 8FBE0048 8FB70044 8FB60040 8FB5003C 8FB40038
8FB30034 8FB20030 8FB1002C 8FB00028 03E00008 27BD0050
End CSUB


After loading this into memory, cycling power, and issuing Display.Open at the command prompt, I get a message that this is an unknown command.

Note in this version of the code, I have added in the extra startup code as suggested by matherp at the end of page 1 of that thread. I have commented-out the original lines for my own reference.

Back in that thread this driver was discussed, but there have been many changes to it over the course of that thread, and the description text I think is now also wrong with it mentioning use of pin numbers etc, which are not needed for the V64 port of the driver. However, this text is still in the driver file, and is confusing the hell out of me.

@ Matherp - could you perhaps paste a version of the code here on this thread, which I could just copy-and-paste into MMEDIT to get the display working?

Also, on the later version of the driver, there is a 4 hanging off the end of the line calling the driver in mm.startup - what is that for? Orientation? If so, text says orientation is 0-3, but no mention of a four...
Edited by Grogster 2016-01-27
Smoke makes things work. When the smoke gets out, it stops!
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 8590
Posted: 10:43pm 25 Jan 2016
Copy link to clipboard 
Print this post

The only thing wrong with the above is the comments which weren't updated from the 44-pin version.

Corrected comments below - just tested on 5.1 64-pin MM+

Use the same pins on the 64-pin MM+ as you would for a SSD1963 display. Remember that you must connect to data pins DB8-DB15 on the display and not DB0-DB7


sub mm.startup
ILI9325_V64(PEEK(CFUNADDR ILI9325_V64),4)
end sub
'
' Initialise the Display Driver for ILI9325 controlled TFT LCD Panel in 8-bit databus, 16-bit mode
' i.e. RGB565. This is optimised for the 64-pin uM2
' NOTE For this display in 8-bit mode you must connect to DB8-DB15 and not DB0 to DB7
'
' ILI9325_V64 initialises the loadable CFunction driver so that you can use all of the
' MMBasic graphic commands in your program.
'
' Parameters:
' Orientation% LANDSCAPE=1,PORTRAIT=2,RLANDSCAPE=3,RPORTRAIT=4
'
' After Calling ILI9325_V64, any of the usual MM Graphic commands may be used
' in your MMBasic program, eg BOX, TEXT, LINE, CIRCLE etc
'
' Note: you must use the standard MM+ pins for the data pins DB8-DB15
' and for WR, RS and RESET as though the display was a SSD1963
' Tie CS Low and tie RD high
'
' Ver 1.02 2015-08-19 Initial Release
' Ver 1.03 2015-12-21 Swap parameters for compatibility with 64-pin code
' Ver 1.04 2015-12-28 Additional wait states for 64-pin code
'
'**********************************************************************************
' File ILI9325_V64.bas written 21-Dec-2015 11:56:02
'
CSUB ILI9325_V64
0000002D
'writeRegister
3C02BF88 24031000 AC436134 3C03BF81 8C66F220 00043202 30C602FF 34C60800
AC466430 24060800 AC466134 8C67F220 AC466138 8C67F220 308402FF 34840800
AC446430 AC466134 8C64F220 AC466138 8C62F220 2402FFFF 10A20014 3C02BF88
24031000 AC436138 3C03BF81 8C64F220 7CA44A00 34841800 AC446430 24040800
AC446134 8C66F220 AC446138 8C66F220 30A503FF 34A51800 AC456430 AC446134
8C65F220 AC446138 8C62F220 03E00008 00000000
'main
27BDFFB0 AFBF004C AFB40048 AFB30044 AFB20040 AFB1003C AFB00038 0080A021
3C029D00 8C430090 8CA40000 A0640015 8C420090 2403001C A043002E 2402003C
AFA20018 2402003D AFA2001C 2402003E AFA20020 2402003F AFA20024 24020040
AFA20028 24020001 AFA2002C 24020002 AFA20030 24020003 AFA20034 27B20018
27B30038 3C109D00 8E510000 8E020010 02202021 24050008 0040F809 00003021
8E020010 02202021 24050065 0040F809 00003021 8E02001C 02202021 0040F809
24050005 26520004 5653FFF0 8E510000 3C109D00 8E020010 2404001B 24050008
0040F809 00003021 8E020010 2404001B 24050065 0040F809 00003021 3C11BF88
24021000 AE226138 3C12BF81 8E42F220 8E020010 24040018 24050008 0040F809
00003021 8E020010 24040018 24050065 0040F809 00003021 24020800 AE226138
8E42F220 8E030090 8E020010 8064002E 24050008 0040F809 00003021 8E030090
8E020010 8064002E 24050065 0040F809 00003021 8E030090 8E02001C 8064002E
0040F809 24050006 3C029D00 244200B4 3C129D00 265208EC 0242182B 10600004
02429023 8E830000 10000003 02439021 8E830000 02439021 3C119D00 26310A54
0222182B 10600004 02228823 8E830000 10000003 02238821 8E830000 02238821
3C109D00 8E030090 8E02001C 8064002E 0040F809 24050006 8E020004 0040F809
3404C350 8E030090 8E02001C 8064002E 0040F809 24050005 8E020004 0040F809
3404C350 8E030090 8E02001C 8064002E 0040F809 24050006 8E020004 0040F809
3404C350 240400E5 240578F0 0411FF3F 00000000 24040001 24050100 0411FF3B
00000000 24040002 24050700 0411FF37 00000000 24040003 24051030 0411FF33
00000000 24040004 00002821 0411FF2F 00000000 24040008 24050207 0411FF2B
00000000 24040009 00002821 0411FF27 00000000 2404000A 00002821 0411FF23
00000000 2404000C 00002821 0411FF1F 00000000 2404000D 00002821 0411FF1B
00000000 2404000F 00002821 0411FF17 00000000 24040010 00002821 0411FF13
00000000 24040011 24050007 0411FF0F 00000000 24040012 00002821 0411FF0B
00000000 24040013 00002821 0411FF07 00000000 24040007 24050001 0411FF03
00000000 8E020004 0040F809 3404C350 24040010 24051090 0411FEFC 00000000
24040011 24050227 0411FEF8 00000000 8E020004 0040F809 3404C350 24040012
2405001F 0411FEF1 00000000 8E020004 0040F809 3404C350 24040013 24051500
0411FEEA 00000000 24040029 24050027 0411FEE6 00000000 2404002B 2405000D
0411FEE2 00000000 8E020004 0040F809 3404C350 24040020 00002821 0411FEDB
00000000 24040021 00002821 0411FED7 00000000 24040030 00002821 0411FED3
00000000 24040031 24050707 0411FECF 00000000 24040032 24050307 0411FECB
00000000 24040035 24050200 0411FEC7 00000000 24040036 24050008 0411FEC3
00000000 24040037 24050004 0411FEBF 00000000 24040038 00002821 0411FEBB
00000000 24040039 24050707 0411FEB7 00000000 2404003C 24050002 0411FEB3
00000000 2404003D 24051D04 0411FEAF 00000000 24040050 00002821 0411FEAB
00000000 24040051 240500EF 0411FEA7 00000000 24040052 00002821 0411FEA3
00000000 24040053 2405013F 0411FE9F 00000000 24040060 3405A700 0411FE9B
00000000 24040061 24050001 0411FE97 00000000 2404006A 00002821 0411FE93
00000000 24040080 00002821 0411FE8F 00000000 24040081 00002821 0411FE8B
00000000 24040082 00002821 0411FE87 00000000 24040083 00002821 0411FE83
00000000 24040084 00002821 0411FE7F 00000000 24040085 00002821 0411FE7B
00000000 24040090 24050010 0411FE77 00000000 24040092 24050600 0411FE73
00000000 24040007 24050133 0411FE6F 00000000 8E020090 80420015 24030002
10430008 24030004 1043000A 24051000 24030001 10430007 24051028 10000002
24050008 24051030 38420003 24031018 0062280A 24040003 0411FE5C 00000000
3C029D00 8C420090 90420015 30420001 10400008 3C029D00 8C430098 240400F0
AC640000 8C420094 24030140 10000007 AC430000 8C430094 240400F0 AC640000
8C420098 24030140 AC430000 3C109D00 8E020048 AC520000 8E020048 8E030094
8C660000 8E030098 8C670000 AFA00010 8C420000 00002021 00002821 24C6FFFF
0040F809 24E7FFFF 8E02004C AC510000 00001021 00001821 8FBF004C 8FB40048
8FB30044 8FB20040 8FB1003C 8FB00038 03E00008 27BD0050
'defineregion
27BDFFD8 AFBF0024 AFB40020 AFB3001C AFB20018 AFB10014 AFB00010 2483FFFF
00661821 24A6FFFF 00C73021 3C099D00 8D270094 8CE80000 8D270098 8CE90000
0109382B 10E00003 01205021 01005021 01204021 3C079D00 8CE70090 80E90015
24070002 15270008 24070004 00809821 00608821 00A0A021 00C08021 00A09021
10000019 00801021 1527000C 24070001 00031827 006A9821 00048827 022A8821
00063027 00C8A021 00058027 02088021 02009021 10000016 02201021 1527000B
24070003 00063027 00CA9821 00058827 022A8821 0080A021 00608021 00809021
1000000B 02201021 24070003 15270008 00031827 00A09821 00C08821 0068A021
00048027 02088021 02009021 00A01021 24040020 00402821 0411FDE6 00000000
24040021 02402821 0411FDE2 00000000 24040050 02602821 0411FDDE 00000000
24040052 02802821 0411FDDA 00000000 24040051 02202821 0411FDD6 00000000
24040053 02002821 0411FDD2 00000000 24040022 2405FFFF 0411FDCE 00000000
8FBF0024 8FB40020 8FB3001C 8FB20018 8FB10014 8FB00010 03E00008 27BD0028
'DrawRectangle_ILI9325
27BDFFE0 AFBF001C AFB10018 AFB00014 0086102A 14400004 8FB00030 00801021
00C02021 00403021 00A7102A 14400005 28820000 00A01021 00E02821 00403821
28820000 0002200B 3C029D00 8C420094 8C420000 0082402B 2443FFFF 0068200A
28C30000 0003300B 00C2182B 2442FFFF 0043300A 28A20000 0002280B 3C029D00
8C420098 8C430000 00A3402B 2462FFFF 0048280A 28E20000 0002380B 00E01021
00E3382B 2463FFFF 0067100A 24070001 00E41823 00663021 00E53823 00E23821
70E68802 0411FF66 00000000 24031000 3C02BF88 AC436138 3C02BF81 8C42F220
00102C03 30A500F8 7E021340 00A22825 34A51800 00101143 304200E0 7E1020C0
00508025 12200013 36101800 2631FFFF 3C02BF88 24040800 3C03BF81 2406FFFF
AC456430 AC446134 8C67F220 AC446138 8C67F220 AC506430 AC446134 8C67F220
AC446138 8C67F220 2631FFFF 1626FFF4 00000000 8FBF001C 8FB10018 8FB00014
03E00008 27BD0020
'DrawBitmap_ILI9325
27BDFFB0 AFBF004C AFBE0048 AFB70044 AFB60040 AFB5003C AFB40038 AFB30034
AFB20030 AFB1002C AFB00028 AFA40050 00A0F021 00C09021 AFA7005C 8FB00060
8FA30064 8FA20068 8FB3006C 3C069D00 8CC70094 8CF10000 8CC60098 8CC60000
AFA60014 0003BC03 32F700F8 7C661340 02E6B825 36F71800 0003B143 32D600E0
7C6320C0 02C3B025 36D61800 0002AC03 32B500F8 7C431340 02A3A825 36B51800
0002A143 329400E0 7C4220C0 0282A025 36941800 72123002 8FA2005C 72023802
0411FF0D 00000000 24031000 3C02BF88 AC436138 3C02BF81 8C42F220 8FA3005C
18600067 0200C021 AFBE0018 00121023 AFA20020 70721002 2442FFFF AFA20010
AFB20024 00007821 AFA0001C 24190001 3C05BF88 24070800 10000055 3C06BF81
04400021 0051202B 50800020 24630001 0542001E 24630001 5180001C 24630001
91C40000 008D2024 1080000D 00000000 ACB76430 ACA76134 8CC4F220 ACA76138
8CC4F220 ACB66430 ACA76134 8CC4F220 ACA76138 8CC4F220 1000000C 24630001
ACB56430 ACA76134 8CC4F220 ACA76138 8CC4F220 ACB46430 ACA76134 8CC4F220
ACA76138 8CC4F220 24630001 1470FFDC 24420001 25080001 2529FFFF 11120010
01785821 010F1021 24430007 284E0000 006E100B 000270C3 026E7021 000917C3
00021742 01226821 31AD0007 01A26823 01B96804 01601021 1000FFC9 00001821
27DE0001 17D00004 254A0001 10000009 8FA3001C 0000F021 1A40FFF9 8FAB0050
8FA90010 00004021 8FA20014 1000FFE5 0142602B 24630001 AFA3001C 8FA20018
00581021 AFA20018 8FA30010 8FA20020 00621821 AFA30010 8FA30024 01E37821
8FA2001C 8FA3005C 10430006 8FBF004C 1E00FFE8 8FAA0018 1000FFEE 8FA3001C
8FBF004C 8FBE0048 8FB70044 8FB60040 8FB5003C 8FB40038 8FB30034 8FB20030
8FB1002C 8FB00028 03E00008 27BD0050
End CSUB
 
Grogster

Admin Group

Joined: 31/12/2012
Location: New Zealand
Posts: 9066
Posted: 10:54pm 25 Jan 2016
Copy link to clipboard 
Print this post

Cool, thanks - that was a quick reply!

I will paste this in now - looks like I was using a different version of the mm.startup thing too.

Does this HAVE to be in the library?

At the moment, I just have the Cfunction sitting in main program memory, and am cycling the power - perhaps that is wrong?

Yes, data is via DB8-DB15, and other pins as per MM+ manual for the 1963 displays.
Smoke makes things work. When the smoke gets out, it stops!
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 8590
Posted: 10:58pm 25 Jan 2016
Copy link to clipboard 
Print this post

  Quote  Does this HAVE to be in the library?


NO

  Quote  At the moment, I just have the Cfunction sitting in main program memory, and am cycling the power - perhaps that is wrong?


That is how I just tested. I've also just tested in the library and that works fine as wellEdited by matherp 2016-01-27
 
Grogster

Admin Group

Joined: 31/12/2012
Location: New Zealand
Posts: 9066
Posted: 11:02pm 25 Jan 2016
Copy link to clipboard 
Print this post

OK, bright LCD backlight, but no display if I type GUI TEST LCDPANEL.
MMBASIC does not complain about no LCDPANEL now, like it was before, so progress.
Smoke makes things work. When the smoke gets out, it stops!
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 8590
Posted: 11:06pm 25 Jan 2016
Copy link to clipboard 
Print this post

Is J3 on the display PCB open? This is the link that selects between 8-bit and 16-bit operation and must be open.

I've also made J1 which bypasses the regulator as I run 3.3V supply.

Otherwise its a case of buzzing out your wiring
 
Grogster

Admin Group

Joined: 31/12/2012
Location: New Zealand
Posts: 9066
Posted: 11:12pm 25 Jan 2016
Copy link to clipboard 
Print this post

UPDATE: Solder-blob J3 is OPEN, which would seem to be correct, referring to the other thread....

Here is an image of how I have the LCD connected to the 64 pin chip:





I've made the tracks brown on green to make them show up a little better then blue on green. I don't see any obvious mistakes here, but am double-checking this now.

The DB0-DB7 for the 1963 displays as per the MM+ advanced manual, are connected to DB8-DBF on the layout, which is correct 8-15.
Smoke makes things work. When the smoke gets out, it stops!
 
Grogster

Admin Group

Joined: 31/12/2012
Location: New Zealand
Posts: 9066
Posted: 11:25pm 25 Jan 2016
Copy link to clipboard 
Print this post

  matherp said  I've also made J1 which bypasses the regulator as I run 3.3V supply.


Where is J1?

I only see a J3.

I too am running the display from 3v3, but the backlight from 5v.

EDIT: These are the LCD's I bought, and although the photo looks the same as your ones in the other thread, the ones sent to me are a different PCB:





Note this one uses a different PCB layout from the one in the actual eBay listing.

Do you think it is possible I have been sent the wrong ones?

EDIT: Looks like J3 on THIS LCD is the 3v3 regulator bypass, based on what my microscope is showing me. :





I will try bypassing this by SHORTING the J3 solder blobs. Problem is, if that bypasses the reg, there then is no way to put the display into 8-bit mode, so I might be in the market for more LCD's...

Edited by Grogster 2016-01-27
Smoke makes things work. When the smoke gets out, it stops!
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 8590
Posted: 11:48pm 25 Jan 2016
Copy link to clipboard 
Print this post

This is certainly a different layout to my display. You could try removing R2. That is in about the same place as J3 on my version. Otherwise you are going to need to lift the display and try and find signal IM0. This needs to be high for 8-bit operation (may be OK to leave it disconnected). If it is pulled low then the controller is set for 16-bit databus
 
Grogster

Admin Group

Joined: 31/12/2012
Location: New Zealand
Posts: 9066
Posted: 11:55pm 25 Jan 2016
Copy link to clipboard 
Print this post

Thanks for the pointers.

I have confirmed with a quick Google search, that 65Z5 is a SOT23 voltage regulator, and the pinout matches what I am seeing here on my LCD's, so I will bypass this by solder-blobbing J3 first, and see what happens then.

I can pop the LCD out of it's carrier easy enough if needs be - I will post updates as I go along.

It's annoying, as the eBay listing clearly shows the same type of LCD you had, and I did not notice any difference until I starting looking more closely at the LCD, but they have sent a different version.

Stay tuned for further updates.
Smoke makes things work. When the smoke gets out, it stops!
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 8590
Posted: 11:58pm 25 Jan 2016
Copy link to clipboard 
Print this post

This display is your layout. Note it says that it can be converted to 8-bit operation but doesn't say how.

So it is the 16-bit databus that is definitely the issue. The problem is to find the fix.

Looking at the pics again R" may be the LED resistor (3.9ohm?) if so this won't help.
 
Grogster

Admin Group

Joined: 31/12/2012
Location: New Zealand
Posts: 9066
Posted: 12:03am 26 Jan 2016
Copy link to clipboard 
Print this post

UPDATE: No change shorting out J3. I have a couple of these LCD's, so I am swapping each one to make sure I don't perhaps have a crook one. Time to get it out of the carrier...

EDIT: Just saw your post - yep, that's my trouble-child! I will take the LCD out of the carrier, and post a shot or two from the microscope. You might be able to see what I need to change - MIGHT be....
Edited by Grogster 2016-01-27
Smoke makes things work. When the smoke gets out, it stops!
 
Grogster

Admin Group

Joined: 31/12/2012
Location: New Zealand
Posts: 9066
Posted: 12:19am 26 Jan 2016
Copy link to clipboard 
Print this post

UPDATE:

Under the shell:











Does that give any insights?

I am thinking that perhaps R2("16"), needs to be removed, and a blob on R1("8")
Would you think this would be a good place to start?

I could TRY to move the black thing on R2, but it is TINY, and I think I would end up having some problems, even under the scope. I could make the attempt though - nothing ventured, nothing gained....
Smoke makes things work. When the smoke gets out, it stops!
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 8590
Posted: 12:25am 26 Jan 2016
Copy link to clipboard 
Print this post

I think you have found it.

Move the resistor that is on R2 to R1.

 
Grogster

Admin Group

Joined: 31/12/2012
Location: New Zealand
Posts: 9066
Posted: 12:31am 26 Jan 2016
Copy link to clipboard 
Print this post

I will do that and see what happens. Wish me luck.

Here is a 30x close-up, but I note that the 'Resistor' is not marked with anything at all to say what the hell it actually is. Normally, resistors are marked. Oh well...





I will try to move it.
Smoke makes things work. When the smoke gets out, it stops!
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 8590
Posted: 12:34am 26 Jan 2016
Copy link to clipboard 
Print this post

I've found if you use the soldering iron in one hand and have a very fine screwdriver in the other, heat the resistor and it will stick to the soldering iron. Move it to the new location and then hold it down with the screwdriver then remove the soldering iron.

There is the same mod on the SSD1289 displays and the above approach worked easily for me
 
robert.rozee
Guru

Joined: 31/12/2012
Location: New Zealand
Posts: 2290
Posted: 12:51am 26 Jan 2016
Copy link to clipboard 
Print this post

sharp pointed stainless-steel tweezers. use a soldering iron bit that is wide enough to cover both ends of the resistor at once

0402 resistors generally have no markings.


cheers,
rob :-)
 
Grogster

Admin Group

Joined: 31/12/2012
Location: New Zealand
Posts: 9066
Posted: 12:59am 26 Jan 2016
Copy link to clipboard 
Print this post

SUCCESS!!!





That 'Resistor' felt like an 0402 to me, maybe even 0201 - it was frickin' tiny. Only about a quarter the size of the 0805 on the other side of the board. Just a speck, and nothing more.

Managed to move it though - now all I have to do, is do the same move on my other ones to make them 8-bit.
Smoke makes things work. When the smoke gets out, it stops!
 
Print this page


To reply to this topic, you need to log in.

© JAQ Software 2024