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.


Topics - mohammed

Pages: [1]
1
Character LCDs / NHD-C0216CiZ-FN-FBW-3V No ACK
« on: August 10, 2017, 02:04:36 PM »
Hello,

Currently I am trying to get a character to display on the screen and I cant seem to get it to work. I noticed that in the init of the lcd whenever a odd bit this passed into the while loop it never breaks. So I never get passed that step. Furthermore, I hooked up the sda and scl lines to a scope and saw that the ack never happened when there was a odd bit passed in. I am using the same specs that were recommended and I am also using the bit banger code provided in the documentation.

This is the init code                                                                                         
void init_LCD()  {
I2C_Start();
I2C_out(0x7C);
I2C_out(0x00);
I2C_out(0x38);
delay(10);
I2C_out(0x39);
delay(10);
I2C_out(0x14);
I2C_out(0x78);
I2C_out(0x5E);
I2C_out(0x6D);
I2C_out(0x0C);
I2C_out(0x01);
I2C_out(0x06);
delay(10);
I2C_stop();
}
                                                                                                                     And here is the code where I get suck in the while loop
                                                                                                                       void I2C_out(unsigned char j)    //I2C Output { 
                                                                                                                       int n; 
                                                                                                                       unsigned char d; 
                                                                                                                       d=j; 
                                                                                                                       for(n=0;n<8;n++){   
                                                                                                                       if((d&0x80)==0x80)   
                                                                                                                             SDA=1;   
                                                                                                                          else   
                                                                                                                             SDA=0;   
                                                                                                                           d=(d<<1);   
                                                                                                                           SCL = 0;   
                                                                                                                           SCL = 1;   
                                                                                                                           SCL = 0;   
                                                                                                                       } 
                                                                                                                           SCL = 1; 
                                                                                                                           while(SDA==1){   
                                                                                                                               SCL=0;   
                                                                                                                               SCL=1;   
                                                                                                                       } 
                                                                                                                           SCL=0;
                                                                                                                       }

Pages: [1]