Giter Site home page Giter Site logo

nopnop2002 / raspberry-ili9325 Goto Github PK

View Code? Open in Web Editor NEW
60.0 5.0 15.0 2.97 MB

Parallel TFT Shield Library for wiringPi

C 96.27% Shell 1.34% Makefile 1.03% Python 1.37%
wiringpi ili9325 ili9341 s6d1121 ili9481 spfd5408 ili9327 raspberrypi xpt2046 st7781

raspberry-ili9325's Introduction

8Bit/16Bit Parallel TFT Library for WiringPi

This is library for RaspberryPi.
You can use a TFT Shield for UNO R3.
This library can show a chart to TFT Shield.

TFT-Shield

Primarily, these TFT Shiled is the one for Arduino.
This may works with other boards like OrangePi/NanoPi.

Supported TFT controllers:

Generic 8bit Sheild

  • ILI9320(240x320)
  • ILI9325(240x320)
  • ILI9341(240x320)
  • ILI9342(240x320)
  • ILI9481(320x480)
  • ILI9486(320x480)
  • ILI9488(320x480)
  • SPFD5408(240x320 Same as ILI9320)
  • R61505U(240x320 Same as ILI9320)
  • R61509V(240x400)
  • ST7781(240x320)
  • ST7783(240x320 Same as ST7781)
  • ST7793(240x400 Same as R61509)
  • ST7796(320x480 Same as ILI9486)

Generic 16bit Sheild

  • ILI9341(240x320)

OPEN-SMART Products

  • OPEN-SMART ILI9225 TFT-Shield(176x220)
  • OPEN-SMART ILI9327 TFT-Shield(240x400)
  • OPEN-SMART ILI9340 TFT-Shield(240x320)
  • OPEN-SMART S6D1121 16Pin-Parallel(240x320)
  • OPEN-SMART ST7775 16Pin-Parallel(176x220 Same as ILI9225)
  • OPEN-SMART ST7783 16Pin-Parallel(240x320)
  • OPEN-SMART R61509V 16Pin-Parallel(240x400)
  • OPEN-SMART ILI9488 16Pin-Parallel(320x400 Color inversion)

These are all 2.4 inch, 320x240 TFTs. TFT-SHIELD-2

3.95 inches is almost twice as large as 2.4 inches. TFT-SHIELD-3

These are OPEN-SMART 16Pin-Parallel Products. OPEN-SMART-16Pin


Software requirement

  • WiringPi Library
    This project uses the wiringPiSetup() function to initialize GPIOs.
    If you use it on a board other than the RPI board, you may need to change the GPIO number.
    As far as I know, there are these libraries.
    • WiringPi for OrangePi
    • WiringPi for OrangePi Zero
    • WiringPi for OrangePi3
    • WiringPi for BananaPi
    • WiringPi for NanoPi
    • WiringPi for Pine-64

Wirering for 8Bit Parallel

TFT RPI
LCD_RST -- Pin#7
LCD_CS -- Pin#3
LCD_RS -- Pin#5
LCD_WR -- Pin#26
LCD_RD -- Pin#28
LCD_D0 -- Pin#29
LCD_D1 -- Pin#31
LCD_D2 -- Pin#33
LCD_D3 -- Pin#35
LCD_D4 -- Pin#37
LCD_D5 -- Pin#32
LCD_D6 -- Pin#36
LCD_D7 -- Pin#38
5V -- 5V(*)
3.3V -- 3.3V(*)
GND -- GND

*When a regulator(It's often AMS1117) is mounted on the back, it's operated 5V.
*When a regulator is NOT mounted on the back, it's operated 3.3V.

NOTE
My R61509V has a regulator on the back.
Normally, a TFT with a regulator works at 5V, but my R61509V doesn't work unless I supply both 5V and 3.3V.

NOTE
You can change any pin.
Pin define is "pin.conf".
If you use a 26-pin header, you can use "pin.conf.26pin" instead of "pin.conf".


Build

  • for ILI9225
    make ILI9225

  • for ILI9320
    make ILI9320

  • for ILI9325
    make ILI9325

  • for ILI9327
    make ILI9327

  • for ILI9341
    make ILI9341

  • for ILI9342
    make ILI9342

  • for ILI9481
    make ILI9481

  • for ILI9486
    make ILI9486

  • for ILI9488
    make ILI9488

  • for ILI9488 Inversion Color
    make ILI9488-INVERT

  • for SPFD5408
    make SPFD5408

  • for R61505U
    make R61505U

  • for R61509V
    make R61509V

  • for S6D1121
    make S6D1121

  • for ST7775
    make ST7775

  • for ST7781
    make ST7781

  • for ST7783
    make ST7783

  • for ST7793
    make ST7793

  • for ST7796
    make ST7796


How to find the TFT driver name


The information provided by sellers on Ebay or AliExpress is largely incorrect.
You waste time if you don't choose the right driver.
There are many variations of the 2.4 inch shield.
You can use this to find out your driver.
This is for Arduino UNO.
Do not use this on the RPI as the GPIO on the RPI is not 5V tolerant.
Never believe the seller's information.


Graphic support

ILI9341-10 ILI9341-12 ILI9341-13 ILI9341-14 ILI9341-18

Fonts support

ILI9341-11 ILI9341-15 ILI9341-16 ILI9341-17 ILI9341-19

Image support

JPEG file
ILI9341-JPEG PNG file
ILI9341-PNG


Start Auto Demo

./demo

Start Interpreter mode

You can change draw1.txt & draw2.txt & me.sh

./draw draw1.txt
./draw draw2.txt
bash ./me.sh

me_sh

Take animal picture from www.365calendar.net and display.

To use this, you need python3 and Pillow.
And reduce the security level of OpenSSL encryption.

$ sudo apt install libtiff5 libopenjp2-7
$ python -m pip install -U Pillow
$ sudo cp /usr/lib/ssl/openssl.cnf /usr/lib/ssl/openssl.cnf.old
$ sudo vi /usr/lib/ssl/openssl.cnf
#CipherString = DEFAULT@SECLEVEL=2
CipherString = DEFAULT@SECLEVEL=1
$ bash ./365calendar.sh

365calendar

Take wallpaper from bing and display

To use this, you need python3 and imagemagick.

$ sudo apt install imagemagick
$ bash ./bing_wallpaper.sh

bing_wallpaper


Wirering for 16Bit Parallel

TFT RPI
LCD_RST -- Pin#7
LCD_CS -- Pin#3
LCD_RS -- Pin#5
LCD_WR -- Pin#26
LCD_RD -- Pin#28
LCD_D0 -- Pin#29
LCD_D1 -- Pin#31
LCD_D2 -- Pin#33
LCD_D3 -- Pin#35
LCD_D4 -- Pin#37
LCD_D5 -- Pin#32
LCD_D6 -- Pin#36
LCD_D7 -- Pin#38
LCD_D8 -- Pin#13
LCD_D9 -- Pin#15
LCD_D10 -- Pin#16
LCD_D11 -- Pin#18
LCD_D12 -- Pin#8
LCD_D13 -- Pin#10
LCD_D14 -- Pin#40
LCD_D15 -- Pin#27
5V -- 5V(*)
3.3V -- 3.3V(*)
GND -- GND

*When a regulator(It's often AMS1117) is mounted on the back, it's operated 5V.
*When a regulator is NOT mounted on the back, it's operated 3.3V.

NOTE
You can change any pin.
Pin define is "pin.conf".


Build

cc -o demo demo.c fontx.c tft_lib.c driver/*.c -lwiringPi -lm -lpthread -DILI9341 -DP16BIT
cc -o draw draw.c fontx.c tft_lib.c driver/*.c -lwiringPi -lm -lpthread -DILI9341 -DP16BIT


Start Auto Demo

./demo

ili9341-16bit-1

ili9341-16bit-2


SPI Touch Sensor

ili9341-16bit-2 This module has SPI Touch Sensor.
So you can read touch position.
Use raspi-config to enable SPI.

Wirering for SPI-Touch sensor

TFT RPI
PEN -- Pin#22(**)
T_CS -- Pin#24(**)
MOSI -- Pin#19(***)
MISO -- Pin#21(***)
CLK -- Pin#23(***)

**It's defined in the source code.
#define SPI_CHANNEL 0 // /dev/spidev0.0
//#define SPI_CHANNEL 1 // /dev/spidev0.1
#define GPIO_PEN 6

***Can't change

cc -o xpt xpt.c xpt2046.c -lwiringPi -lm -lpthread
sudo ./xpt

touch-1

And you can operate Pi using touch sensor.

cc -o touch touch.c fontx.c tft_lib.c driver/ili9341.c xpt2046.c -lwiringPi -lm -lpthread -DILI9341 -DP16BIT
sudo ./touch

touch-2


4-wire resistive touch screen

OPEN SMART products have 4-wire resistive touch screen, but Pi cannot use this because Pi cannot input analog.


JPEG Decoder

This project uses this JPEG library.
This can reduce the image to 1/2 1/4 1/8.


PNG Decoder

I ported the pngle library from here.
This can reduce the image to any size.


raspberry-ili9325's People

Contributors

electroboycodes avatar nopnop2002 avatar patchrequest avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

raspberry-ili9325's Issues

wiringpi problem

Im getting a problem with wiringpi. It says it cant be found, and its not installed on my pi 3. I cant install it.
This is the error i get.
make ILI9341
cc -c -o driver/ili9225.o driver/ili9225.c
cc -c -o driver/ili9320.o driver/ili9320.c
cc -c -o driver/ili9325.o driver/ili9325.c
cc -c -o driver/ili9327.o driver/ili9327.c
cc -c -o driver/ili9341.o driver/ili9341.c
cc -c -o driver/ili9342.o driver/ili9342.c
cc -c -o driver/ili9481.o driver/ili9481.c
cc -c -o driver/ili9486.o driver/ili9486.c
cc -c -o driver/ili9488.o driver/ili9488.c
cc -c -o driver/lgdp4532.o driver/lgdp4532.c
cc -c -o driver/r61509.o driver/r61509.c
cc -c -o driver/s6d1121.o driver/s6d1121.c
cc -c -o driver/st7781.o driver/st7781.c
ar crv driver.a driver/ili9225.o driver/ili9320.o driver/ili9325.o driver/ili9327.o driver/ili9341.o driver/ili9342.o driver/ili9481.o driver/ili9486.o driver/ili9488.o driver/lgdp4532.o driver/r61509.o driver/s6d1121.o driver/st7781.o
a - driver/ili9225.o
a - driver/ili9320.o
a - driver/ili9325.o
a - driver/ili9327.o
a - driver/ili9341.o
a - driver/ili9342.o
a - driver/ili9481.o
a - driver/ili9486.o
a - driver/ili9488.o
a - driver/lgdp4532.o
a - driver/r61509.o
a - driver/s6d1121.o
a - driver/st7781.o
driver.a make success
cc -c -o tjpgd2/decode_jpeg.o tjpgd2/decode_jpeg.c
cc -c -o tjpgd2/tjpgd.o tjpgd2/tjpgd.c
ar crv jpeg.a tjpgd2/decode_jpeg.o tjpgd2/tjpgd.o
a - tjpgd2/decode_jpeg.o
a - tjpgd2/tjpgd.o
jpeg.a make success
cc -c -o pngle/decode_png.o pngle/decode_png.c
cc -c -o pngle/miniz.o pngle/miniz.c
cc -c -o pngle/pngle.o pngle/pngle.c
ar crv png.a pngle/decode_png.o pngle/miniz.o pngle/pngle.o
a - pngle/decode_png.o
a - pngle/miniz.o
a - pngle/pngle.o
png.a make success
cc -o demo demo.c fontx.c tft_lib.c driver.a jpeg.a png.a -lwiringPi -lm -lpthread -DILI9341
demo.c:10:10: fatal error: wiringPi.h: No such file or directory
10 | #include <wiringPi.h>
| ^~~~~~~~~~~~
compilation terminated.
tft_lib.c:6:10: fatal error: wiringPi.h: No such file or directory
6 | #include <wiringPi.h>
| ^~~~~~~~~~~~
compilation terminated.
make: *** [Makefile:58: ILI9341] Error 1

Code works but frame buffer doesnt on Mcufriend ili9325

where did you get this init code?
init=\ -1,0x00E3,0x3008,-1,0x00E7,0x0012,-1,0x00EF,0x1231,\ -1,0x0001,0x0100,-1,0x0002,0x0700,-1,0x0003,0x1030,\ -1,0x0004,0x0000,-1,0x0008,0x0207,-1,0x0009,0x0000,\ -1,0x000A,0x0000,-1,0x000C,0x0000,-1,0x000D,0x0000,\ -1,0x000F,0x0000,-1,0x0010,0x0000,-1,0x0011,0x0007,\ -1,0x0012,0x0000,-1,0x0013,0x0000,-2,200,\ -1,0x0010,0x1690,-1,0x0011,0x0223,-2,50,\ -1,0x0012,0x000D,-2,50,-1,0x0013,0x1200,\ -1,0x0029,0x000A,-1,0x002B,0x000C,-2,50,\ -1,0x0020,0x0000,-1,0x0021,0x0000,-1,0x0030,0x0000,\ -1,0x0031,0x0506,-1,0x0032,0x0104,-1,0x0035,0x0207,\ -1,0x0036,0x000F,-1,0x0037,0x0306,-1,0x0038,0x0102,\ -1,0x0039,0x0707,-1,0x003C,0x0702,-1,0x003D,0x1604,\ -1,0x0050,0x0000,-1,0x0051,0x00EF,-1,0x0052,0x0000,\ -1,0x0053,0x013F,-1,0x0060,0xA700,-1,0x0061,0x0001,\ -1,0x006A,0x0000,-1,0x0080,0x0000,-1,0x0081,0x0000,\ -1,0x0082,0x0000,-1,0x0083,0x0000,-1,0x0084,0x0000,\ -1,0x0085,0x0000,-1,0x0090,0x0010,-1,0x0092,0x0600,\ -1,0x0007,0x0133,-3

ive been trying for 3 days to get this screen to work when i first use the commands for modprobe it will turn the screen black (but its always black) and then it will just flash ... i suspect the init codes are wrong or i have an ili 9325 (C) or (D) which are newer revisions that have different init sequences.i also cant figure out how this init sequecen works how does the system know which part of the variables is the command and which is the data...

RPi type A and ILI 9341

Good afternoon, I am trying to connect an Arduino LCD Shield with ILI9341 to a Raspberry Pi model A, but it does not work.
Your schematic uses the full comb of pins from the RPi model 3, so I reassigned the pins to those of my RPi version.
Unfortunately, I always get a picture like the one in the picture.
IMG_2856

Below in the schematic and in the config pins.confiring the pins I used:

IMG_1749

#Number is WiringPi Number(NOT GPIO Number)
RST=7
CS=8
RS=9
WR=11
RD=10
D0=0
D1=2
D2=3
D3=4
D4=5
D5=6
D6=12
D7=13
#If your TFT is 8 bit Parallel,A definition after this isn't used.
D8=2
D9=3
D10=4
D11=5
D12=15
D13=16
D14=29
D15=30

My LCD module looks like this:
IMG_1751
IMG_1750

IMG_2857

I have tried reassigning the pins several times, but I either get the same thing as above, or just a white screen.
I really need your help!

2.8" TFT (8bit) touch screen feature not working

Hello,

Firstly, thank you for making this possible and sharing it; I've struggled to gather knowledge on how to make my display work with a Raspberry Pi for long time now.

I was able to run through most of the demo/examples you provided, successfully, apart from the last one with the touch screen.

My issue currently is that I cannot get input from the touch screen. I have compiled the touch binary with the 8BIT parameter, and when I run it, it displays the numbers, but that is pretty much all I can do with it;
I see that in touch.c there is a pin defined for pen input on GPIO 6; I don't understand how that works, or where the input will come from, because my TFT screen does not have a separate pin for the PEN (I have the 8bit parallel version).

Because I have redefined the pins I'm using, I changed the pin in the touch.c file to an "empty" one, like it was initially (or that's how I'm reading it).

  1. Are you able to point me in the right direction on how to sort this out, please?
  2. Can I create my own interface to display, and get the touch screen input via Python script, rather than C?
  3. is there a way to control the backlight ON/OFF?

Here's my git diff output, to help you understand what I changed:

RST=7
CS=8
RS=9
-WR=11
+WR=5
-RD=31
+RD=6
D0=21
D1=22
D2=23
D3=24
D4=25
-D5=26
+D5=27
-D6=27
+D6=28
-D7=28
+D7=29
#If your TFT is 8 bit Parallel,A definition after this isn't used.
D8=2
D9=3
diff --git a/touch.c b/touch.c
index b559ffb..5eec9ab 100644
--- a/touch.c
+++ b/touch.c
@@ -12,8 +12,8 @@

#define SPI_CHANNEL 0 // /dev/spidev0.0
//#define SPI_CHANNEL 1 // /dev/spidev0.1
-#define GPIO_PEN 6
+#define GPIO_PEN 26
-#define DEBUG 0
+#define DEBUG 1

This is the TFT Screen I am using: elegoo 2.8"TFT Touch Screen
Thank you kindly for your effort and feedback, and for making this possible!
Much appreciated!

Stay safe and healthy,
ciobania

Please add support for ili9341 16bit data bus

Hi.. thanks for awsome library... i have test your library and its work... but i have an issue that the color doesnt show correctly, maybe because i have 16bit data bus (16 pin paralel data) but the library implement just 8 bit data bus (8 pin parallel data). If you have any spare time please add support for 16bit data so the color can show correctly... thanks

"Undefined reference" Errors when compiling draw.c and demo.c

Hello,

I have successfully run the draw and demo binaries, with ILI9341. At least that's what it says my driver is.
When I try to compile/build the draw, and demo binaries using:

cc -o demo demo.c fontx.c tft_lib.c driver/.c -lwiringPi -lm -lpthread -DILI9341 -DP16BIT
cc -o draw draw.c fontx.c tft_lib.c driver/
.c -lwiringPi -lm -lpthread -DILI9341 -DP16BIT

I get following errors:

/usr/bin/ld: /tmp/ccJhYeNu.o: in function JPEGTest': demo.c:(.text+0x1990): undefined reference to decode_image'
/usr/bin/ld: demo.c:(.text+0x1b74): undefined reference to release_image' /usr/bin/ld: /tmp/ccJhYeNu.o: in function PNGTest':
demo.c:(.text+0x1cac): undefined reference to pngle_new' /usr/bin/ld: demo.c:(.text+0x1cbc): undefined reference to pngle_set_init_callback'
/usr/bin/ld: demo.c:(.text+0x1cc8): undefined reference to pngle_set_draw_callback' /usr/bin/ld: demo.c:(.text+0x1cd4): undefined reference to pngle_set_done_callback'
/usr/bin/ld: demo.c:(.text+0x1cec): undefined reference to pngle_set_display_gamma' /usr/bin/ld: demo.c:(.text+0x1d6c): undefined reference to pngle_feed'
/usr/bin/ld: demo.c:(.text+0x1d84): undefined reference to pngle_error' /usr/bin/ld: demo.c:(.text+0x2050): undefined reference to pngle_destroy'
/usr/bin/ld: demo.c:(.text+0x20a4): undefined reference to png_init' /usr/bin/ld: demo.c:(.text+0x20a8): undefined reference to png_draw'
/usr/bin/ld: demo.c:(.text+0x20ac): undefined reference to `png_finish'
collect2: error: ld returned 1 exit status

Am I missing something, is it still needed if the binaries provided in the repo are working already?

thank you

ili9486 8 Bit Parallel - Raspberry Pi

Hello nopnop2002,

I have been trying to find a way to get my 3.5" ili9486 8 Bit Parallel display to work with my Raspberry Pi. The closest I have been to succeeding is with the drivers I have found in your Raspberry-ili9325.

I initially tried running my screen as an ili9341, this worked to a degree, when I ran ./demo the screen flickered and showed a few rectangles, the word "ili9431" and the centre of some circles. certainly not perfect but better than I had achieved before. the ili9481 drivers didn't seem to be as good.

So I looked at the code in "ili93xx.c", "demo.c", "draw.c" and "pin.conf" and thought it wouldn't be too difficult to include ili9486 as a new display. I think I have succeeded with this but the screen is still not working properly, I get rectangles of the correct size and more colours now, but still not getting the demo I am expecting. I seem to be able to make it worse and better by changing the init sequence.

The init sequence I am using is one I found in your file "STM32_TFT_8bit.cpp", I wonder if you had any ideas on what parameters would be worth tweaking to try and get this screen working?

Many thanks

// ILI9486
  } else if (_model == 0x9486) {
   static const uint8_t regValues[] = {
            0xC0, 2, 0x0d, 0x0d,        //Power Control 1 [0E 0E]
            0xC1, 2, 0x43, 0x00,        //Power Control 2 [43 00]
            0xC2, 1, 0x00,      //Power Control 3 [33]
            0xC5, 4, 0x00, 0x48, 0x00, 0x48,    //VCOM  Control 1 [00 40 00 40]
            0xB4, 1, 0x00,      //Inversion Control [00]
            0xB6, 3, 0x02, 0x02, 0x3B,  // Display Function Control [02 02 3B]
            0xE0, 15, 0x0F, 0x1F, 0x1C, 0x0C, 0x0F, 0x08, 0x48, 0x98, 0x37, 0x0A, 0x13, 0x04, 0x11, 0x0D, 0x00, 
            0xE1, 15, 0x0F, 0x32, 0x2E, 0x0B, 0x0D, 0x05, 0x47, 0x75, 0x37, 0x06, 0x10, 0x03, 0x24, 0x20, 0x00, 
    };
    init_table(reset_off, sizeof(reset_off));
    init_table(regValues, sizeof(regValues));
    init_table(wake_on, sizeof(wake_on));

Compile error's with options -Wall -Werror

src/ili9340.c:659:25: error: & has lower precedence than ==; == will be evaluated first [-Werror,-Wparentheses]
        if (h == (ph-2) & _FONT_UNDER_LINE_)
            ~~~~~~~~~~~~^
src/ili9340.c:659:25: note: place parentheses around the '==' expression to silence this warning
        if (h == (ph-2) & _FONT_UNDER_LINE_)
                        ^
            (          )
src/ili9340.c:659:25: note: place parentheses around the & expression to evaluate it first
        if (h == (ph-2) & _FONT_UNDER_LINE_)
                        ^
                 (                         )
src/ili9340.c:661:25: error: & has lower precedence than ==; == will be evaluated first [-Werror,-Wparentheses]
        if (h == (ph-1) & _FONT_UNDER_LINE_)
            ~~~~~~~~~~~~^
src/ili9340.c:661:25: note: place parentheses around the '==' expression to silence this warning
        if (h == (ph-1) & _FONT_UNDER_LINE_)
                        ^
            (          )
src/ili9340.c:661:25: note: place parentheses around the & expression to evaluate it first
        if (h == (ph-1) & _FONT_UNDER_LINE_)
                        ^
                 (                         )
src/ili9340.c:626:14: error: variable 'yss' is used uninitialized whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized]
  } else if (_FONT_DIRECTION_ == 3) {
             ^~~~~~~~~~~~~~~~~~~~~
src/ili9340.c:641:8: note: uninitialized use occurs here
  yy = yss;
       ^~~
src/ili9340.c:626:10: note: remove the 'if' if its condition is always true
  } else if (_FONT_DIRECTION_ == 3) {
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ili9340.c:593:20: note: initialize the variable 'yss' to silence this warning
  uint16_t xss, yss;
                   ^
                    = 0
src/ili9340.c:626:14: error: variable 'xss' is used uninitialized whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized]
  } else if (_FONT_DIRECTION_ == 3) {
             ^~~~~~~~~~~~~~~~~~~~~
src/ili9340.c:642:8: note: uninitialized use occurs here
  xx = xss;
       ^~~
src/ili9340.c:626:10: note: remove the 'if' if its condition is always true
  } else if (_FONT_DIRECTION_ == 3) {
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
src/ili9340.c:593:15: note: initialize the variable 'xss' to silence this warning
  uint16_t xss, yss;
              ^
               = 0
src/ili9340.c:702:35: error: passing 'uint8_t *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
  spos = String2SJIS(utfs, strlen(utfs), sjis, 64);
                                  ^~~~
/usr/include/string.h:82:28: note: passing argument to parameter '__s' here
size_t   strlen(const char *__s);
                            ^
src/ili9340.c:719:1: error: control may reach end of non-void function [-Werror,-Wreturn-type]
}
^
6 errors generated.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.