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 : New 4 inch LCD
Page 12 of 12 | |||||
Author | Message | ||||
stanleyella Guru Joined: 25/06/2022 Location: United KingdomPosts: 2127 |
ili9341 vs ili9488 same prog https://www.youtube.com/watch?v=z_8eiKH4Hjw |
||||
stanleyella Guru Joined: 25/06/2022 Location: United KingdomPosts: 2127 |
will soldering resistors fix blit read not working? |
||||
stanleyella Guru Joined: 25/06/2022 Location: United KingdomPosts: 2127 |
Phil, if you are familiar with this ips 9488 then which resistors need blobbing please? and using 1n5819 and 10kr no probs with reading sd card though, it's blit read/write. Edited 2024-04-15 08:02 by stanleyella |
||||
phil99 Guru Joined: 11/02/2018 Location: AustraliaPosts: 2135 |
Some ILI9341 and older ILI9488 boards require the resistors to be blobbed but the IPS ILI9488 is different as explained here and again . On the 4" IPS ILI9488 R8 needs to be removed, not blobbed if the SD card is to share System SPI with the LCD panel. R8 is connected to SDO and is a 4.7kΩ pullup to 3.3V. When SDO is connected to MISO R8 prevents the 10kΩ resistor pulling MISO low, stopping Blit from working. Make sure you only use 3.3v on this board to avoid destroying your SD card. This board does not have a 3.3V regulator (U1) fitted, instead it is bypassed by a link (R0). To make it interchangeable with other panels remove R0 and solder a 3.3V LDO regulator on U1. Edited 2024-04-15 11:34 by phil99 |
||||
stanleyella Guru Joined: 25/06/2022 Location: United KingdomPosts: 2127 |
Brill Phil! a simple explanation that works. Blit read/write now works and still reads sd card. I use a 3.3V and 5V barrel jack reg board. 5V to lcd and 3.3V to pico 3.3V enable grounded so just a jumoer link to change 5V to 3.3V for lcd. De soldering R8 was hard. Surprised powering ils 9488 with 5V not blown it, I thought there was a reg u1 but it was a transistor for led/bl. Thanks again stan |
||||
stanleyella Guru Joined: 25/06/2022 Location: United KingdomPosts: 2127 |
Spoke too soon, colours missing are these colour values correct for ips 9488? 'colour shortcuts const WH =RGB(255, 255, 255) 'WHITE const YE =RGB(255, 255, 0) 'YELLOW const LI =RGB(255, 128, 255) 'LILAC const BR =RGB(255, 128, 0) 'BROWN const FU =RGB(255, 64, 255) 'FUCHSIA const RU =RGB(255, 64, 0) 'RUST const MA =RGB(255, 0, 255) 'MAGENTA const RE =RGB(255, 0, 0) 'RED const CY =RGB(0, 255, 255) 'CYAN const GR =RGB(0, 255, 0) 'GREEN const CE =RGB(0, 128, 255) 'CERULEAN const MI =RGB(0, 128, 0) 'MIDGREEN const CO =RGB(0, 64, 255) 'COBALT const MY =RGB(0, 64, 0) 'MYRTLE const BL =RGB(0, 0, 255) 'BLUE const Bk =RGB(0, 0, 0) 'BLACK const Gy =RGB(128, 128, 128) 'GREY const Lg =RGB(210, 210, 210) 'LITEGREY const Og =RGB(255, 165, 0) 'ORANGE const PK =RGB(255, 160, 171) 'PINK const Gd =RGB(255, 215, 0) 'GOLD const SA =RGB(250, 128, 114) 'SALMON const BE =RGB(245, 245, 220) 'BEIGE ' |
||||
stanleyella Guru Joined: 25/06/2022 Location: United KingdomPosts: 2127 |
for a=0to 2:b=0:for c=0to 255:d=c<<a*8:pixel 9,9,d:if d=pixel(9,9)then:inc b:endif:next:?b:next gives > run 64 64 64 > so does that mean lcd is ok. is reading pixels same as blit read/write? |
||||
lizby Guru Joined: 17/05/2016 Location: United StatesPosts: 3150 |
You can test with: const WH =RGB(255, 255, 255) 'WHITE const YE =RGB(255, 255, 0) 'YELLOW const LI =RGB(255, 128, 255) 'LILAC const BR =RGB(255, 128, 0) 'BROWN const FU =RGB(255, 64, 255) 'FUCHSIA const RU =RGB(255, 64, 0) 'RUST const MA =RGB(255, 0, 255) 'MAGENTA const RE =RGB(255, 0, 0) 'RED const CY =RGB(0, 255, 255) 'CYAN const GR =RGB(0, 255, 0) 'GREEN const CE =RGB(0, 128, 255) 'CERULEAN const MI =RGB(0, 128, 0) 'MIDGREEN const CO =RGB(0, 64, 255) 'COBALT const MY =RGB(0, 64, 0) 'MYRTLE const BL =RGB(0, 0, 255) 'BLUE const Bk =RGB(0, 0, 0) 'BLACK const Gy =RGB(128, 128, 128) 'GREY const Lg =RGB(210, 210, 210) 'LITEGREY const Og =RGB(255, 165, 0) 'ORANGE const PK =RGB(255, 160, 171) 'PINK const Gd =RGB(255, 215, 0) 'GOLD const SA =RGB(250, 128, 114) 'SALMON const BE =RGB(245, 245, 220) 'BEIGE ? hex$(WH),hex$(YE),hex$(LI),hex$(BR),hex$(RU),hex$(MA),hex$(RE),hex$(CY),hex$(GR),hex$(CE),hex$(MI) ? hex$(CO),hex$(MY),hex$(BL),hex$(Bk),hex$(Gy),hex$(Lg),hex$(Og),hex$(PK),hex$(Gd),hex$(SA),hex$(BE) Results: > RUN FFFFFF FFFF00 FF80FF FF8000 FF4000 FF00FF FF0000 FFFF FF00 80FF 8000 40FF 4000 FF 0 808080 D2D2D2 FFA500 FFA0AB FFD700 FA8072 F5F5DC But also note from the manual: 'shortcut' allows common colours to be specified by naming them. The colours that can be named are white, black, blue, green, cyan, red, magenta, yellow, brown, white, orange, pink, gold, salmon, beige, lightgrey and grey (or USA spelling gray/lightgray) PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed |
||||
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 9112 |
The colours defined in the PicoMite are as follows. Use RGB(COLOURNAME) to use them: #define WHITE RGB(255, 255, 255) //0b1111 #define YELLOW RGB(255, 255, 0) //0b1110 #define LILAC RGB(255, 128, 255) //0b1101 #define BROWN RGB(255, 128, 0) //0b1100 #define FUCHSIA RGB(255, 64, 255) //0b1011 #define RUST RGB(255, 64, 0) //0b1010 #define MAGENTA RGB(255, 0, 255) //0b1001 #define RED RGB(255, 0, 0) //0b1000 #define CYAN RGB(0, 255, 255) //0b0111 #define GREEN RGB(0, 255, 0) //0b0110 #define CERULEAN RGB(0, 128, 255) //0b0101 #define MIDGREEN RGB(0, 128, 0) //0b0100 #define COBALT RGB(0, 64, 255) //0b0011 #define MYRTLE RGB(0, 64, 0) //0b0010 #define BLUE RGB(0, 0, 255) //0b0001 #define BLACK RGB(0, 0, 0) //0b0000 #define BROWN RGB(255, 128, 0) #define GRAY RGB(128, 128, 128) #define LITEGRAY RGB(210, 210, 210) #define ORANGE RGB(0xff, 0xA5, 0) #define PINK RGB(0xFF, 0xA0, 0xAB) #define GOLD RGB(0xFF, 0xD7, 0x00) #define SALMON RGB(0xFA, 0x80, 0x72) #define BEIGE RGB(0xF5, 0xF5, 0xDC) |
||||
stanleyella Guru Joined: 25/06/2022 Location: United KingdomPosts: 2127 |
lizby thanks. I changed colour short cuts and my sprites/blit write are correct again, no missing pixels. all getting too strange for me. The problem now is gui calibrate works but GUI TEST TOUCH is total messed. It did work but think removing R8 I damaged display, dunno const WH =RGB(white) 'WHITE const YE =RGB(yellow) 'YELLOW const BR =RGB(brown) 'BROWN const MA =RGB(magenta) 'MAGENTA const RE =RGB(red) 'RED const CY =RGB(cyan) 'CYAN const GR =RGB(green) 'GREEN const BL =RGB(blue) 'BLUE const Bk =RGB(black) 'BLACK const Gy =RGB(grey) 'GREY const Lg =RGB(lightgrey) 'LITEGREY const Og =RGB(orange) 'ORANGE const PK =RGB(pink) 'PINK const Gd =RGB(gold) 'GOLD const SA =RGB(salmon) 'SALMON const BE =RGB(beige) 'BEIGE Edited 2024-04-16 05:15 by stanleyella |
||||
phil99 Guru Joined: 11/02/2018 Location: AustraliaPosts: 2135 |
Got around to testing this and it works from 1kΩ to 2kΩ but colour counter and Blit errors start at 2.2k. All the SD cards I have are happy with this so I suggest leaving R8 in place and using 1.5kΩ or 1.8kΩ for the LCD_CS to MISO resistor. Footnote added 2024-04-17 11:20 by phil99 A more informative 2 line colour counter. > clear : option base 0 : dim string s(2)=(" blues"," greens"," reds") : dim integer a, b, c, d > for a=0to 2:b=0:for c=0to 255:d=c<<a*8:pixel 9,9,d:if d=pixel(9,9)then:inc b:endif:next:?b;s(a):next 64 blues 64 greens 64 reds > Footnote added 2024-04-17 12:02 by phil99 More playing. You can remove the diode and replace it with a 1nF capacitor and it all works. Pixel, Blit and SD card. |
||||
stanleyella Guru Joined: 25/06/2022 Location: United KingdomPosts: 2127 |
Phil, thanks for the advice.I tried ips 9488 again and gui calibrate no errors but today touch is working accurately. think it's the tight fit on the board, screen touches pico so maybe resistive layer distorted. removing R8 sorted blit read/write and sd card reads ok using 10KR and 1N5819 |
||||
Page 12 of 12 |
Print this page |