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 - alexandra

Pages: [1]
1
Graphic LCDs / Re: NHD-C12864LZ-FSW-FBW-3V3
« on: January 14, 2015, 11:39:32 AM »
If you want, I attach my project or send it by mail.

2
Graphic LCDs / Re: NHD-C12864LZ-FSW-FBW-3V3
« on: January 14, 2015, 11:24:28 AM »
When I used the function:
"void lcd_init(void)
{
    LCD_A0_L();
    LCD_N_CS1_L();
     LCD_N_RES_L();
    delay_ms(500);
    // Do a hard reset of the LCD display controller
      LCD_N_RES_H();

      //comm
      lcd_cmd_out(CMD_INTERNAL_RESET); // Soft reset
      lcd_cmd_out(CMD_SET_BIAS_9);       // SET BIAS 1/9
      lcd_cmd_out(CMD_SET_ADC_NORMAL); // ADC segment driver direction (Normal )
      lcd_cmd_out(CMD_SET_COM_REVERSE); // COM DIRECTION - REVERSE
      lcd_cmd_out(CMD_SET_RESISTOR_RATIO); // Resistor ratio
      lcd_cmd_out(CMD_SET_POWER_CONTROL); // Power control set
      lcd_cmd_out(CMD_SET_VOLUME_FIRST); // Electronic volume mode set
      lcd_cmd_out(CMD_SET_VOLUME_SECOND); // Electronic volume register set
      lcd_cmd_out(CMD_SET_DISP_START_LINE); // Operating mode

      // After display on appear few pixels ON
      lcd_cmd_out(CMD_DISPLAY_ON); // Display ON/OFF - set to ON
      delay_ms(1000); // 1 second
      lcd_cmd_out(CMD_SET_ALLPTS_ON); // All pixels ON
}"

Appear few pixels ON. (Attach photo)
But after 1 second the command "CMD_SET_ALLPTS_ON" = 0xA5 it works. (Attach photo)

Because of this, I used this function (after lcd_init(void);):
"void glcd_blank(void)
 {
     uint8_t p, c;
         for(p = 0; p < 8; p++)
         {
             lcd_cmd_out(CMD_SET_PAGE | p);
             for(c = 0; c < 129; c++)
             {
                 lcd_cmd_out(CMD_SET_COLUMN_LOWER | (c & 0xf));
                 lcd_cmd_out(CMD_SET_COLUMN_UPPER | ((c >> 4) & 0xf));
                 lcd_data_out(0x0);
             }
         }
 }"

But when I used "glcd_blank();" the screen is clear, but another function not working.
For example I want use command "CMD_SET_ALLPTS_ON = 0xA5" after "glcd_blank();". No it works.

I not have another LCD for test.

3
Graphic LCDs / Re: NHD-C12864LZ-FSW-FBW-3V3
« on: January 13, 2015, 09:26:02 AM »
I tried to send, but does not change the pixels, these is my commands for initialization:

"void lcd_init(void)
{
   LCD_A0_L();
   LCD_N_CS1_L();
    LCD_N_RES_L();
   delay_ms(500);

   // Do a hard reset of the LCD display controller
     LCD_N_RES_H();

     //comm
     lcd_cmd_out(CMD_INTERNAL_RESET); // Soft reset
     lcd_cmd_out(CMD_SET_BIAS_9);      // SET BIAS 1/9
     lcd_cmd_out(CMD_SET_ADC_NORMAL); // ADC segment driver direction (Normal )
     lcd_cmd_out(CMD_SET_COM_REVERSE); // COM DIRECTION - REVERSE
     lcd_cmd_out(CMD_SET_RESISTOR_RATIO); // Resistor ratio
     lcd_cmd_out(CMD_SET_POWER_CONTROL); // Power control set
     lcd_cmd_out(CMD_SET_VOLUME_FIRST); // Electronic volume mode set
     lcd_cmd_out(CMD_SET_VOLUME_SECOND); // Electronic volume register set
     lcd_cmd_out(CMD_SET_DISP_START_LINE); // Operating mode

     // After display on appear few pixels ON .....
     lcd_cmd_out(CMD_DISPLAY_ON); // Display ON/OFF - set to ON

     delay_ms(1000);
     lcd_cmd_out(CMD_SET_DISP_NORMAL); // A6
     delay_ms(1000);
     lcd_cmd_out(CMD_SET_DISP_NORMAL); // // A7
     delay_ms(1000);

     lcd_cmd_out(CMD_SET_ALLPTS_NORMAL);// A4
     delay_ms(1000);
     lcd_cmd_out(CMD_SET_ALLPTS_ON); //A5 HERE ALL THE PIXELS ARE ON
     delay_ms(1000);
}
//glcd_blank();


That's why I used glc_blank function after initialization. But after this function does not work anymore else.

4
Graphic LCDs / NHD-C12864LZ-FSW-FBW-3V3
« on: January 12, 2015, 09:33:53 AM »
Hello, I use a LCD NHD-C12864LZ-FSW-FBW-3V3 ( ST7565R-G controller).
I use the SPI transmission, with the STM32VLDISCOVERY board (STM32F100RB).
When I do initialization appear few pixels ON after "DISPLAY ON = 0xAF" command.
I use this function for clear the screen.
""void glcd_blank(void)
 {
     uint8_t p, c;
         for(p = 0; p < 8; p++)
         {
             lcd_cmd_out(CMD_SET_PAGE | p);
             for(c = 0; c < 129; c++)
             {
                 lcd_cmd_out(CMD_SET_COLUMN_LOWER | (c & 0xf));
                 lcd_cmd_out(CMD_SET_COLUMN_UPPER | ((c >> 4) & 0xf));
                 lcd_data_out(0x0);
             }
         }
}"
and it works but ... not it works other function "lcd_cmd_out(CMD_SET_ALLPTS_ON); // 0xA5" the screen is clear, it nothing happens.
Can you help me ? 

Pages: [1]