Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - dfansler

Pages: 1 [2]
16
And the display is a NHD-2.4-240320SF

17
BTW I have tried 3 different displays with no luck.
David

18
Like others I have read about on the forum, I get nothing but a white screen.  I have tried several different init codes I have found with no luck.  I know the signals are getting to the display - I hooked an led to each line with a 1k resistor, so I can see the led change, but not drop the volatge on the line.  I am set up for 16bit writes.
Kind regards,
David
The wiring of the unit is
1-gnd       11-D/C select     21-D7          31-gnd
2-nc         12- nWR            22-D8          32-nc
3-nc         13-3.3v             23-D9          33-gnd
4-nc         14-D0               24-D10         34-gnd
5-nc         15-D1               25-D11         35-gnd
6-nc         16-D2               26-D12         36-gnd
7-3.3v      17-D3               27-D13         37-gnd
8-3.3v      18-D4               28-D14         38-3.3v
9-nc         19-D5               29-D15         39-gnd
10-gnd     20-D6               30-nRESET

Code is:
void TFT_24S_Write_Command(int command)
{
            gpio_set_pin_low(LCD_RS);           //set DC low
            AVR32_GPIO.port[0].ovr = command;   //send the command to the LCD
           delay_ms(1);                                  //1ms safety delay
           gpio_set_pin_low(LCD_nWR);          //lower write pin
           delay_ms(1);                                 //1ms safety delay
           gpio_set_pin_high(LCD_nWR);        //raise write pin
          delay_ms(1);                                 //1ms safety delay
}
void TFT_24S_Write_Data(int data)
{
            gpio_set_pin_high(LCD_RS);           //set DC high
            AVR32_GPIO.port[0].ovr = data;   //send the data to the LCD
           delay_ms(1);                                  //1ms safety delay
           gpio_set_pin_low(LCD_nWR);          //lower write pin
           delay_ms(1);                                 //1ms safety delay
           gpio_set_pin_high(LCD_nWR);        //raise write pin
          delay_ms(1);                                 //1ms safety delay
}
/**************************************************************/
void init_lcd(void)
{
        gpio_set_pin_low(LCD_nWR);         //lower the write line
        gpio_set_pin_low(LCD_nRESET);                //cycle the reset line
   delay_ms(250);                                        //delay 250ms
        gpio_set_pin_high(LCD_nRESET);              //cycle the reset line
   delay_ms(250);                                        //delay 250ms
        gpio_set_pin_high(LCD_nWR);                   //raise the write line
   TFT_24S_Write_Command(0x0028);         //display OFF
   TFT_24S_Write_Command(0x0011);         //exit SLEEP mode
   TFT_24S_Write_Data(0x0000);
   TFT_24S_Write_Command(0x00CB);        //Power Control A
   TFT_24S_Write_Data(0x0039);           //always 0x39
   TFT_24S_Write_Data(0x002C);           //always 0x2C
   TFT_24S_Write_Data(0x0000);          //always 0x00
   TFT_24S_Write_Data(0x0034);          //Vcore = 1.6V
   TFT_24S_Write_Data(0x0002);          //DDVDH = 5.6V
   TFT_24S_Write_Command(0x00CF);       //Power Control B
   TFT_24S_Write_Data(0x0000);         //always 0x00
   TFT_24S_Write_Data(0x0081);          //PCEQ off
   TFT_24S_Write_Data(0x0030);         //ESD protection
   TFT_24S_Write_Command(0x00C0);     //power control 1
   TFT_24S_Write_Data(0x0026);
   TFT_24S_Write_Data(0x0004);        //second parameter for ILI9340 (ignored by ILI9341)
   TFT_24S_Write_Command(0x00C1);     //power control 2
   TFT_24S_Write_Data(0x0011);
   TFT_24S_Write_Command(0x00C5);     //VCOM control 1
   TFT_24S_Write_Data(0x0035);
   TFT_24S_Write_Data(0x003E);
   TFT_24S_Write_Command(0x0036);     //memory access control = BGR
   TFT_24S_Write_Data(0x0088);
   TFT_24S_Write_Command(0x00B1);     //frame rate control
   TFT_24S_Write_Data(0x0000);
   TFT_24S_Write_Data(0x0010);             //***********************
   TFT_24S_Write_Command(0x00B6);     //display function control
   TFT_24S_Write_Data(0x000A);
   TFT_24S_Write_Data(0x00A2);
   TFT_24S_Write_Command(0x00C7);          //VCOM control 2
   TFT_24S_Write_Data(0x00BE);
   TFT_24S_Write_Command(0x003A);        //pixel format = 16 bit per pixel
   TFT_24S_Write_Data(0x0055);

   TFT_24S_Write_Command(0x00F2);        //3G Gamma control
   TFT_24S_Write_Data(0x0002);          //off
   TFT_24S_Write_Command(0x0026);       //Gamma curve 3
   TFT_24S_Write_Data(0x0001);
   TFT_24S_Write_Command(0x002A);      //column address set
   TFT_24S_Write_Data(0x0000);
   TFT_24S_Write_Data(0x0000);          //start 0x0000
   TFT_24S_Write_Data(0x0000);
   TFT_24S_Write_Data(0x00EF);         //end 0x00EF
   TFT_24S_Write_Command(0x002B);      //page address set
   TFT_24S_Write_Data(0x0000);
   TFT_24S_Write_Data(0x0000);         //start 0x0000
   TFT_24S_Write_Data(0x0001);
   TFT_24S_Write_Data(0x003F);          //end 0x013F
   TFT_24S_Write_Command(0x0029);      //display ON
        return;
}   

19
I have the above system attached to an Atmel AT32UC processor.  I can not get it to initialize or to display data.  The software is based on the example given for the SSD1963 by New Haven Displays.

I used to use the same display with the SSD1963 built in and had it running before NHD came out with the controller separate.

I hope someone can tell me what I am doing wrong
David

Here is the code

void TFT_7_Write_Data (unsigned char data1)  //no joy with delays
{
   gpio_set_pin_high(LCD_RS);
   AVR32_GPIO.port[3].ovr = data1;         //send data to LCD
   gpio_set_pin_low(LCD_WR);
   gpio_set_pin_high(LCD_WR);

}
void TFT_7_Write_Command (unsigned char command)
{
   int x;

   AVR32_GPIO.port[3].ovr = command;
   gpio_set_pin_low(LCD_RS);
   gpio_set_pin_low(LCD_WR);
   gpio_set_pin_high(LCD_WR);
   delay_us(10);                  //was 1200
}
void TFT_7_Command_Write(unsigned char REG, unsigned char VALUE)
{
   int temp_1;

   AVR32_GPIO.port[3].ovr = REG;         //send data to LCD
   gpio_set_pin_low(LCD_RS);
   gpio_set_pin_low(LCD_WR);
   gpio_set_pin_high(LCD_WR);
   gpio_set_pin_high(LCD_RS);
   AVR32_GPIO.port[3].ovr = VALUE;         //send data to LCD

   return;
}
void TFT_7_Init(void)
{
   //new setup as of 09-25-2015
   gpio_set_pin_low(LCD0_CS);         //enable both LCD Displays
   gpio_set_pin_low(LCD1_CS);
   gpio_set_pin_low(LCD_WR);
   gpio_set_pin_low(LCD_RESET);
   delay_ms(120);
   gpio_set_pin_high(LCD_RESET);
   delay_ms(120);
   gpio_set_pin_high(LCD_BL);
   TFT_7_Write_Command(0x01);      //software reset
   delay_ms(120);
   TFT_7_Write_Command(0xe2);      //set multiplier and divider for PLL
   gpio_set_pin_high(LCD_RS);      //raise RS
   TFT_7_Write_Data(0x1d);      //18bit,Disable FRC,TFT FRC Disable, TFT Mode
   TFT_7_Write_Data(0x02);      //18bit,Disable FRC,TFT FRC Disable, TFT Mode
   TFT_7_Write_Data(0x04);      //18bit,Disable FRC,TFT FRC Disable, TFT Mode
   TFT_7_Command_Write(0xe0,0x01);   //start pll
   delay_ms(1);
   TFT_7_Command_Write(0xe0,0x03);   //lock pll
   TFT_7_Write_Command(0x01);      //software reset
   delay_ms(120);
   TFT_7_Write_Command(0xb0);      //set lcd mode set tft 18 bits mode
   gpio_set_pin_high(LCD_RS);
   TFT_7_Write_Data(0x0c);      //18bit,Disable FRC,TFT FRC Disable, TFT Mode
   TFT_7_Write_Data(0x80);      //was 80  now TFT Mode
   TFT_7_Write_Data(0x03);      //high byte of horz panel size
   TFT_7_Write_Data(0x1f);      //low byte of horz panal size
   TFT_7_Write_Data(0x01);      //high byte of vert panel size
   TFT_7_Write_Data(0xdf);      //low byte of vert panel size
   TFT_7_Write_Data(0x00);      //rgb sequence
   TFT_7_Command_Write(0xf0,0x00);   //set pixel data interface to 8 bit
   TFT_7_Command_Write(0x36,0x09);   //set address mode -  top to bot from sp to ep  was 09
   TFT_7_Write_Command(0xe6);      //set lshift freq
   gpio_set_pin_high(LCD_RS);      //raise RS
   TFT_7_Write_Data(0x02);
   TFT_7_Write_Data(0xff);
   TFT_7_Write_Data(0xff);
   TFT_7_Write_Command(0xb4);      //set horiz period
   gpio_set_pin_high(LCD_RS);
   TFT_7_Write_Data(0x02);//?0x03
   TFT_7_Write_Data(0xf8);//?0xef
   TFT_7_Write_Data(0x00);//0x00
   TFT_7_Write_Data(0x44);//0xa3
   TFT_7_Write_Data(0x0f);//0x07
   TFT_7_Write_Data(0x00);//0x00
   TFT_7_Write_Data(0x00);//0x00
   TFT_7_Write_Data(0x00);//0x00
   TFT_7_Write_Command(0xb6);   //set vert period
   gpio_set_pin_high(LCD_RS);
   TFT_7_Write_Data(0x01);//0x01
   TFT_7_Write_Data(0xf8);//0xef
   TFT_7_Write_Data(0x00);//0x00
   TFT_7_Write_Data(0x13);//0x04
   TFT_7_Write_Data(0x07);//0x01
   TFT_7_Write_Data(0x00);//0x00
   TFT_7_Write_Data(0x00);//0x00
   TFT_7_Write_Command(0x13);   //enter normal mode
   TFT_7_Write_Command(0x38);   //exit idle mode
   TFT_7_Write_Command(0x29);   //set display on
   delay_ms(10);
}

20
I am trying use the NHD-7.0-800480EF-20 Controller Board with one of your 800x480 resistive  displays.  I have not been able to find any info on what voltage you feed Pin3 B/L Enable Power Supply Backlight Enable.  I am currently doing 3.3v and not having much success - but did not want to try anything higher before asking/
Kind regards,
David

21
TFTs / Re: NHD-7.0-800480EF-20 Controller Board
« on: February 26, 2015, 11:04:50 AM »
I realize I can use the 20 pin flex cable and that the connector on the NHD controller is 22 pin - my question is what NHD connector do I need on my custom board to interface to the 20 pin cable?
Thanks,
David

22
TFTs / Re: NHD-7.0-800480EF-20 Controller Board
« on: February 26, 2015, 09:05:04 AM »
OK - I have run into another problem with the board.  I am running the controller board from a custom interface board.  The connector on my custom board is a 20 pin bottom contact 1mm pitch yet the controller board has a 22 pin top contact 1mm pitch connector.  The cable is a 20 pin 1mm pitch.  So what connector do you sell do I need to purchase to interface my custom board to the controller board?
Kind regards,
David

23
TFTs / Re: NHD-7.0-800480EF-20 Controller Board
« on: February 24, 2015, 03:08:20 PM »
Thanks for the quick reply!
David

24
TFTs / NHD-7.0-800480EF-20 Controller Board
« on: February 24, 2015, 08:59:11 AM »
I recently purchased  NHD-7.0-800480EF-20 Controller Board to go with a 480x800 touch panel from NHD.  A couple of questions about the board that I did not see in the docs:
1.  What voltage does the back light require?
2 . Is there a separate ground for the back light?  Using a low-side driver to control the brightness is much easier than using a high-side driver.
3.  How does one use the Display On Signal?  Is it as simple as 3.3v turns on the display and 0v turns it off?
Kind regards,
david

25
TFTs / Controller for 800x480 TFT Display
« on: January 18, 2015, 07:29:27 PM »
I have a couple of the 800x489 TFT displays.  The older one came with the SSD1963 controller and the newer one (NHD-7.0-800480EF-ATXL#-T) without a controller.
question 1 - do I need a controller for the newer unit, or can i drive it from the 40 pin cable?
question 2 - can I replace the SSD1963 controller board with a NHD-7.0-800480EF-34 Controller Board?
question 3 - why did NHD quit using the SSD1963 on the 7" TFT Displays?
Thanks and Kind regards,
David

26
TFTs / How do you set the SED1963 to 8080 mode?
« on: January 11, 2015, 05:54:01 PM »
The SED1963 data sheet you set the "conf" line to define if the SED1963 is in the 8080 or 6800 mode.  In that the NHD‐7.0‐800480WF‐CTXI#‐T does not have the "conf" line, how do you tell the SED1963 which mode to use?
Kind regards,
David

Pages: 1 [2]