gpg96244qs1屏驱动起来了
生活随笔
收集整理的這篇文章主要介紹了
gpg96244qs1屏驱动起来了
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
驅動屏需要注意的地方:
1、首先一定要保證通信、當然電路圖什么的肯定是確保是好的 1.1 這個屏用的是SPI通信、驗證通信的方法是讀寄存器里面的一個默認值,如果讀出來的是原來的默認值的話,就說明是正確的、用示波器看SPI線的數據線、有一個高阻的地方、這里一定要注意、讀數據的時候,要先寫入一個讀的地址、寫完的時候,下一次來一個下降沿 就會有數據在SPI 數據線上、(為了防止高阻不可讀,時序什么的一定要正確)。 void Master_R(unsigned char Data) {unsigned short temp=0b10000000;Master_DATC=0;//數據線輸出Master_SCK=0;do{ Master_SCK=0;Master_DAT=Data & temp; //Set SDO StateMaster_SCK=1; _delay(3); //Generate SCK Clocktemp>>=1; //Next Bit} while (temp!=0);Master_DAT=0; Master_DATC=1; //數據線輸入 _delay(1);Master_SCK=0; } unsigned char Gpg_Read(unsigned char address) {unsigned char Data=0,temp=0;ENABLE_244QS1();//初始化前使能片選_delay(10);DISABLE_244QS1();_delay(10); Master_R(address);_delay(1);Master_SCK=0; //Generate SCK Clock for(temp=0; temp < 8 ;temp++){Master_SCK=1; _delay(3); //Generate SCK ClockData |= Master_DAT;Master_SCK=0; _delay(3);Data<<=1; } Master_SCK=1; //Generate SCK Clock_delay(10);ENABLE_244QS1();//初始化前使能片選 _delay(10);Master_DATC=0;//數據線輸出 return Data; }2、還有就是寫入數據的問題了、寫入數據的時候,照著示波器來看、如果寫入數據和讀出數據一樣的話,那控制就沒問題了
void Master(unsigned short Data) { unsigned short temp=0b10000000;Master_DATC=0;//數據線輸出Master_SCK=0;do{ Master_DAT=Data & temp; //Set SDO StateMaster_SCK=1; _delay(3); Master_SCK=0; //Generate SCK Clocktemp>>=1; //Next Bit} while (temp!=0);Master_DAT=0;Master_SCK=0; } void SPIWRITE_ADDRSSDATA(unsigned char address,unsigned char data) {ENABLE_244QS1();//初始化前使能片選_delay(10);DISABLE_244QS1();Master(address);Master(data);ENABLE_244QS1();//初始化前使能片選 _delay(10); }
總結
以上是生活随笔為你收集整理的gpg96244qs1屏驱动起来了的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 嵌入式OS入门笔记-以RTX为案例:二.
- 下一篇: js实现json转excel的npm包