Page 1 of 2

GLCD SSD1327 SPI needed

Posted: Tue Sep 21, 2021 5:32 pm
by Jorg_Guldner
Hello!
GLCD SSD1327 I2C is avalaible. Could you create a component SSD1327 with SPI?

Thanks in advanced

Jorg

Re: GLCD SSD1327 SPI needed

Posted: Wed Sep 22, 2021 12:52 pm
by BenR
Hi Jorg,

Do you have an example display in mind?

Currently we only support on/off of the pixels using a 2K RAM buffer on the MCU.

On the display each pixel can output up to 16 different levels of intensity to create grey scales. Would this be something you need? Supporting this would potentially consume up to 8K of RAM on a 128 x 128 display and so would rule out a lot of MCUs.

We could also potentially scrap the RAM buffer and allow for 16 levels by not allowing overwrite and transparency effects. This is certainly an option but you would then have to be careful about the order and placement of items on screen as each write controls two pixels.

Re: GLCD SSD1327 SPI needed

Posted: Wed Sep 22, 2021 4:42 pm
by Jorg_Guldner
Hello!
The ssd1327-Component already exists inside flowcode v9, but with I2C. For beter performance it was nice to have a component with SPI. For more text and graphics, the resolution of 128x128 is much beter than 128x64. The gray scale could be a factor for all pixels at the same time, setup before writing to the oled. What do you think, how much sram is needed for this one?

Regards

J. Guldner

Re: GLCD SSD1327 SPI needed

Posted: Wed Sep 22, 2021 9:38 pm
by BenR
Hello,
The gray scale could be a factor for all pixels at the same time, setup before writing to the oled.
Yes that should be possible using the current 2K buffer. I'll investigate making an SPI verison for you.

Hopefully it's not too different.

Re: GLCD SSD1327 SPI needed

Posted: Fri Oct 01, 2021 2:27 pm
by BenR
Hello,

I've now created an SPI version of the compoennt for you. I don't have hardware to test it but I'm somewhat hopeful it should work.

If you have a go then please let us know how you get on.

Re: GLCD SSD1327 SPI needed

Posted: Sat Oct 02, 2021 9:00 am
by Jorg_Guldner
Hello!
Thanks for doing the asked component. I use the cpu "PIC24EP128MC202"

I test it and see nothing on the display. My oscilloscope shows no data signal coming out from the mosi pin. cs, dc and clk are present.
Switching over to the channel 2 gaves a compiling error listed below:

In file included from C:\ProgramData\MatrixTSL\FlowcodeV9\CAL\includes.c:1251:0,
from PIC24EP128MC202_SSD1327_SPI.c:376:
C:\ProgramData\MatrixTSL\FlowcodeV9\CAL\/PIC16BIT\PIC16BIT_CAL_SPI.c: In function 'FC_CAL_SPI_Master_Init_1':
C:\ProgramData\MatrixTSL\FlowcodeV9\CAL\/PIC16BIT\PIC16BIT_CAL_SPI.c:232:2: error: 'tris' undeclared (first use in this function)
C:\ProgramData\MatrixTSL\FlowcodeV9\CAL\/PIC16BIT\PIC16BIT_CAL_SPI.c:232:2: note: each undeclared identifier is reported only once for each function it appears in
C:\ProgramData\MatrixTSL\FlowcodeV9\CAL\/PIC16BIT\PIC16BIT_CAL_SPI.c: In function 'FC_CAL_SPI_Master_Uninit_1':
C:\ProgramData\MatrixTSL\FlowcodeV9\CAL\/PIC16BIT\PIC16BIT_CAL_SPI.c:357:2: error: 'tris' undeclared (first use in this function)
PIC24EP128MC202_SSD1327_SPI.c: In function 'FCD_01531_cal_spi1__Prv_SimShowWaveform':
PIC24EP128MC202_SSD1327_SPI.c:495:31: error: macro "SET_PORT_MASK" requires 3 arguments, but only 2 given
PIC24EP128MC202_SSD1327_SPI.c:495:6: error: 'SET_PORT_MASK' undeclared (first use in this function)
PIC24EP128MC202_SSD1327_SPI.c:500:31: error: macro "SET_PORT_MASK" requires 3 arguments, but only 2 given

Have you any idea?

Regards
Jorg

Re: GLCD SSD1327 SPI needed

Posted: Wed Oct 06, 2021 2:17 pm
by BenR
Thanks Jorg, Investigating for you now.

Channel2 needs the remap pin properties to be entered which could be causing the compile errors if you've forgotten to do this step.

Odd that you're getting nothing out the SDO pin. I'll have a look into this one for you.

Re: GLCD SSD1327 SPI needed

Posted: Tue Oct 12, 2021 5:38 pm
by Jorg_Guldner
Hello!
Here are now some more hints while RB8 is not working:
a.) changing the cpu --> same error
b.) switch off all other moduls --> same error
c.) writing in a while loop 1 and 0 with delay shows, that on RB8-RB11 is no signal coming out. Other RB-Pins are working.
Is here a bug in the cpu-component?

Regards

Jorg

Re: GLCD SSD1327 SPI needed

Posted: Fri Oct 15, 2021 3:26 pm
by Jorg_Guldner
Hello Ben,
I downloaded the component files and tries again. B8 is no signal coming out? B5 is working!
The other pins described a post before are not working, too.
Please have a look to the attached picture. It`s only a simple program.
Any ideas?

Regards
RB5_RB8_toggle.jpg
RB5_RB8_toggle.jpg (98.54 KiB) Viewed 3921 times

Re: GLCD SSD1327 SPI needed

Posted: Mon Oct 18, 2021 10:01 am
by BenR
Hello,

I've been looking into this one for you and I can't seem to replicate the issue on 16-bit EP hardware. I've also looked through the datasheet and there shouldn't be anything specific on the upper PortB pins that is causing a problem.

To rule out some form of CAL issue can you try this with a C icon and see what happens, all the PortB pins should toggle on and off together.

Code: Select all

TRISB = 0x0000;
while(1)
{
  PORTB = 0xFFFF;
  delay_ms(100);
  PORTB = 0x0000;
  delay_ms(100);
}
If that works ok then please can you also try this.

Code: Select all

TRISB = 0x0000;
while(1)
{
  LATB = 0xFFFF;
  delay_ms(100);
  LATB = 0x0000;
  delay_ms(100);
}