亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? lcd.c

?? w77E58開發的具備藍牙功能的GPS導航儀
?? C
字號:
/******** LCD driver controller: LC75853N(SANYO)*********/

#include "global.h"
#include "util.h"
#include "lcd.h"


#define SET_LCD_DOUT         LCD_DOUT = 1;
#define CLEAR_LCD_DOUT       LCD_DOUT = 0;
#define SET_LCD_CLK          LCD_CLK = 1;
#define CLEAR_LCD_CLK        LCD_CLK = 0;
#define SET_LCD_DATA         LCD_DATA = 1;
#define CLEAR_LCD_DATA       LCD_DATA = 0;
#define SET_LCD_STROBE       LCD_STROBE = 1;
#define CLEAR_LCD_STROBE     LCD_STROBE = 0;


unsigned char idata KeyData = 0;                     

unsigned char idata LCD_min_H;
unsigned char idata LCD_min_L;
unsigned char idata LCD_sec_H;
unsigned char idata LCD_sec_L;
unsigned char idata LCD_seg_8;


unsigned char   Old_key = 0;
extern  bit bdata  memory_flash;

extern  bit bdata  STEREO_FLAG;
extern  unsigned char  idata  volume_level;
extern  unsigned char  idata  _timer0;
extern  unsigned char  timer2;
extern  unsigned char  Chanel;
extern  unsigned long  Display_Char;


          /* 7 */               /*  c1     c2     c3     c4  */
unsigned int code turn_char[]  ={0x1A00,0x3800,0x3200,0x2A00};   
unsigned int code Band_cha_H[]  ={0x1F40,0x1A40};          /* NO.1 */
unsigned int code Band_cha_L[]  ={0x0018,0x0018};          /* NO.2 */
unsigned int code Col2_char[]  ={0,0x0020};           /* NO.5 */

 /* NO.2 */                                                                                            /*10     M       N      E     V*/
unsigned int code seg4_char[]  ={0x0FC0,0x0C00,0x2B40,0x2F00,0x2C80,0x2780,0x27C0,0x0D00,0x2FC0,0x2F80,0x0000,0x8DC0,0x5CC0,0x23C0,0x5C00};     

 /* NO.5 */                                                                                            /*10     D      Y      P      T */
unsigned int code seg8_char[]  ={0x0FC0,0x0C00,0x2B40,0x2F00,0x2C80,0x2780,0x27C0,0x0D00,0x2FC0,0x2F80,0x0000,0x5F00,0x2E80,0x29C0,0x5100};   

/* NO.3 */                                                                                             /*10     L      P      E      J      U */
unsigned int code seg5_char[]  ={0x03F0,0x0300,0x0AD0,0x0BC0,0x0B20,0x09E0,0x09F0,0x0340,0x0BF0,0x0BE0,0x0000,0x00B0,0x0A70,0x08F0,0x03D0,0x03B0};  

/* NO.3 */                                                                                               /*10     L      M      D      E      T */
unsigned int code seg6_char_H[]  ={0xE000,0x0000,0xA000,0x8000,0x4000,0xC000,0xE000,0x8000,0xE000,0xC000,0x0000,0x6000,0xE000,0x8000,0xE000,0x8000};  

/* NO.4 */                                                                                               /*10     L      M      D      E      T */
unsigned int code seg6_char_L[]  ={0x001C,0x0018,0x0054,0x005C,0x0058,0x004C,0x004C,0x0018,0x005C,0x005C,0x0000,0x0004,0x00B8,0x00BC,0x0044,0x00A0};  

/* NO.4*/                                                                                              /*10     A      C      E*/
unsigned int code seg7_char[]  ={0x3F00,0x3000,0xAD00,0xBC00,0xB200,0x9E00,0x9F00,0x3400,0xBF00,0xBE00,0x0000,0xB700,0x0F00,0x8F00};       


/* NO.6 */
unsigned int code seg9_char[]  ={0x03F0,0x0300,0x0AD0,0x0BC0,0x0BA0,0x09E0,0x09F0,0x0340,0x0BF0,0x0BE0,0x0000};

/* NO.6 */
unsigned int code seg10_char_H[]  ={0xE000,0x0000,0xA000,0x8000,0x4000,0xC000,0xE000,0x8000,0xE000,0xC000,0x0000};

/* NO.7 */
unsigned int code seg10_char_L[]  ={0x001C,0x0018,0x0054,0x005C,0x0058,0x004C,0x004C,0x0018,0x005C,0x005C,0x0000};


/* NO.8 */
unsigned int code vol_disp_char_H[]  ={0x0004,0x0024,0x0124,0x0924,0x4924};

/* NO.9 */
unsigned int code vol_disp_char_L[]  ={0x0008,0x0048,0x0248};


/* NO.7 */
unsigned int code vol_L_indicator_H[]  ={0x4000};

/* NO.8 */
unsigned int code vol_L_indicator_M[]  ={0x0008,0x0048,0x0248,0x1248,0x9248};

/* NO.9 */
unsigned int code vol_L_indicator_L[]  ={0x0010,0x0090};

/* NO.7 */
unsigned int code vol_R_indicator_H[]  ={0x8000};

/* NO.8 */
unsigned int code vol_R_indicator_M[]  ={0x0010,0x0090,0x0490,0x2490};

/* NO.9 */
unsigned int code vol_R_indicator_L[]  ={0x0020,0x0120};



#define  ICON_in               0x0400           /* seven */
#define  ICON_clsc             0x0004           /* one */
#define  ICON_pop              0x0008           /* one */
#define  ICON_rock             0x0010           /* one */
#define  ICON_double_loop      0x0004           /* three */
#define  ICON_st               0x0004           /* two */
#define  ICON_loc              0x0020           /* two */
#define  ICON_disc_UP          0x0008           /* six */
#define  ICON_lou              0x0008           /* three */
#define  ICON_scn              0x1000           /* six */
#define  ICON_disc_DN          0x0004           /* six */
#define  ICON_rpt              0x0100           /* seven */
#define  ICON_rdm              0x0400           /* six */
#define  ICON_swf              0x0008           /* five */
#define  ICON_track            0x0020           /* seven */
#define  ICON_CH               0x0080           /* seven */



void updateLCDtime(void)
{
         unsigned int  temp;
         unsigned char LCD_temp;
         LCD_temp = 0;

         if(Band==FM_IN){
            LCD_min_H = 0;
            LCD_min_L = 0;
            LCD_sec_H = 0;
            LCD_sec_L = 0;
            if(Divisor > 99999){
               LCD_min_H = Divisor/100000;
               temp = Divisor%100000;                  
               LCD_min_L = temp/10000;             
               temp = temp%10000;                  
               LCD_sec_H = temp/1000;                
               temp = temp%1000;                  
               LCD_sec_L = temp/100;                 
               if(temp%100 == 50){
                  LCD_seg_8 = 5;
               } else {
                  LCD_seg_8 = 10;          /*0x0000*/
               }
            } else {
               LCD_min_H = 10;
               LCD_min_L = Divisor/10000;
               temp = Divisor%10000;                  
               LCD_sec_H = temp/1000;                
               temp = temp%1000;                  
               LCD_sec_L = temp/100;                 
               if(temp%100 == 50){
                  LCD_seg_8 = 5;
               } else {
                  LCD_seg_8 = 10;          /*0x0000*/
               }
            }
         }else{
            LCD_min_H = 0;
            LCD_min_L = 0;
            LCD_sec_H = 0;
            LCD_sec_L = 0;
            LCD_seg_8 = 10;
            if(Divisor > 999){
               LCD_min_H = Divisor/1000;       
               temp = Divisor%1000;                  
               LCD_min_L = temp/100;
               temp = temp%100;                  
               LCD_sec_H = temp/10;
               temp = temp%10;                  
               LCD_sec_L = temp;
            } else {
               LCD_min_H = 10;
               LCD_min_L = Divisor/100;
               temp = Divisor%100;                  
               LCD_sec_H = temp/10;
               temp = temp%10;                  
               LCD_sec_L = temp;
            }
         }

            CLEAR_LCD_STROBE;                 /* CE  */
            LCD_objectSendByte1(0x42);        /* Address */
            SET_LCD_STROBE;                   /* CE  */

            LCD_objectSendByte4(Band_cha_H[Band]);
            LCD_objectSendByte4(Band_cha_L[Band] | seg4_char[LCD_min_H]);                      /*7seg4_char[Min_H]*/
            LCD_objectSendByte4(seg5_char[LCD_min_L] | seg6_char_H[LCD_sec_H]);   /*LCD_sec_H*/       
            LCD_objectSendByte4(0);
            CLEAR_LCD_STROBE;

            LCD_objectSendByte1(0x42);        /* Address */
            SET_LCD_STROBE;                   /* CE  */
                                
            LCD_objectSendByte4(seg6_char_L[LCD_sec_H] | seg7_char[LCD_sec_L]);                 /*Sec_H_L | Sec_L*/
            LCD_objectSendByte4(Col2_char[Band] | seg8_char[LCD_seg_8]);      
            LCD_objectSendByte4(0);
            LCD_objectSendByte4(0x8000);
            CLEAR_LCD_STROBE;

            LCD_objectSendByte1(0x42);        /* Address */
            SET_LCD_STROBE;                   /* CE  */

            LCD_objectSendByte4(0);
            LCD_objectSendByte4(0);
            LCD_objectSendByte4(0);
            LCD_objectSendByte4(0x4000);
            CLEAR_LCD_STROBE;
            CLEAR_LCD_DATA;

}


void LCD_state_init(void)
{

            SET_LCD_DOUT;                     /* DO */
            CLEAR_LCD_STROBE;                 /* CE  */
            CLEAR_LCD_DATA;                   /* DI  */
            SET_LCD_CLK;                      /* CLK */


            CLEAR_LCD_STROBE;                 /* CE  */
            LCD_objectSendByte1(0x42);        /* Address */
            SET_LCD_STROBE;                   /* CE  */

            LCD_objectSendByte4(0);
            LCD_objectSendByte4(0x2CC0);
            LCD_objectSendByte4(0x68F0);
            LCD_objectSendByte4(0);
            CLEAR_LCD_STROBE;

            LCD_objectSendByte1(0x42);        /* Address */
            SET_LCD_STROBE;                   /* CE  */
                                
            LCD_objectSendByte4(0x0B04); 
            LCD_objectSendByte4(0x0FC0);
            LCD_objectSendByte4(0);
            LCD_objectSendByte4(0x8000);
            CLEAR_LCD_STROBE;

            LCD_objectSendByte1(0x42);        /* Address */
            SET_LCD_STROBE;                   /* CE  */

            LCD_objectSendByte4(0xFA00);
            LCD_objectSendByte4(0x04DC);
            LCD_objectSendByte4(0);
            LCD_objectSendByte4(0x4000);
            CLEAR_LCD_STROBE;
            CLEAR_LCD_DATA;

}


void updateDisplay_Char(void)
{
        unsigned char Char_4 = 0;
        unsigned char Char_5 = 0;
        unsigned char Char_6 = 0;
        unsigned char Char_7 = 0;
        unsigned char Char_8 = 0;
        unsigned char Char_9 = 0;
        unsigned char Char_10 = 0;

        if(Display_Char == 0xBDCAA){         /*MEMORY*/
           Char_9 = Chanel/10;
           Char_10 = Chanel%10;
        } else {
           Char_9 = 10;
           Char_10 = 10;
        }

        if(Display_Char == 0xE0BAA){         /*VOLUME*/
           Char_9 = volume_level/10;
           Char_10 = volume_level%10;
        } else {
           Char_9 = 10;
           Char_10 = 10;
        }

        Char_8 = Display_Char & 0x0F;
        Display_Char >>=4;
        Char_7 = Display_Char & 0x0F;
        Display_Char >>=4;
        Char_6 = Display_Char & 0x0F;
        Display_Char >>=4;
        Char_5 = Display_Char & 0x0F;
        Display_Char >>=4;
        Char_4 = Display_Char & 0x0F;
        Display_Char >>=4;


            SET_LCD_DOUT;
            CLEAR_LCD_STROBE;                 
            CLEAR_LCD_DATA;                   
            SET_LCD_CLK;                      


            CLEAR_LCD_STROBE;                 
            LCD_objectSendByte1(0x42);        
            SET_LCD_STROBE;                   

            LCD_objectSendByte4(0);
            LCD_objectSendByte4(seg4_char[Char_4]);        
            LCD_objectSendByte4(seg5_char[Char_5] | seg6_char_H[Char_6]);     
            LCD_objectSendByte4(0);
            CLEAR_LCD_STROBE;

            LCD_objectSendByte1(0x42);        
            SET_LCD_STROBE;                   
                                
            LCD_objectSendByte4(seg6_char_L[Char_6] | seg7_char[Char_7]); 
            LCD_objectSendByte4(seg8_char[Char_8]);
            LCD_objectSendByte4(seg9_char[Char_9] | seg10_char_H[Char_10]);
            LCD_objectSendByte4(0x8000);
            CLEAR_LCD_STROBE;

            LCD_objectSendByte1(0x42);        
            SET_LCD_STROBE;                   

            LCD_objectSendByte4(seg10_char_L[Char_10]);
            LCD_objectSendByte4(0);
            LCD_objectSendByte4(0);
            LCD_objectSendByte4(0x4000);
            CLEAR_LCD_STROBE;
            CLEAR_LCD_DATA;

}



void LCD_objectSendByte1(unsigned char SendByte)
{
    unsigned char i;

    for (i = 0; i < 8; i++) {
         if (SendByte & 0x01) {
             SET_LCD_DATA;
         } else {
            CLEAR_LCD_DATA;
         }

        CLEAR_LCD_CLK;
        CLEAR_LCD_CLK;
        SendByte >>= 1;
        SET_LCD_CLK;

    }
}



void  LCD_objectSendByte4(unsigned int dispdata)
{
         unsigned int i;

         dispdata >>= 2;
         for (i = 0; i < 14; i++){
              if (dispdata & 0x01) {
                  SET_LCD_DATA;
              } else {
                  CLEAR_LCD_DATA;
              }

              CLEAR_LCD_CLK;
              dispdata >>= 1;
              SET_LCD_CLK;
         }

}




unsigned char Read_key(void)
{
       unsigned char i;
       unsigned long key_value = 0;

       if(LCD_DOUT) return 0;

       CLEAR_LCD_STROBE;
       LCD_objectSendByte1(0x43);        /* Address */

       SET_LCD_STROBE;
       CLEAR_LCD_CLK;

       for (i = 0; i < 32; i++)
       {
            key_value >>=1;

            SET_LCD_CLK;
            if(LCD_DOUT){
               key_value |= 0x80000000;
            } 

            CLEAR_LCD_CLK;
       }

       CLEAR_LCD_STROBE;
       SET_LCD_DOUT;


       key_value |= 0x302013;

       if((key_value & 0x0000FF) != 0x000013){       
           KeyData = key_value & 0xFF;

       } else if((key_value & 0x00FF00) != 0x002000){
                  key_value >>= 8;
                  KeyData = key_value & 0xFF;

       } else if((key_value & 0xFF0000) != 0x300000){
                  key_value >>= 16;
                  KeyData = key_value & 0xFF;      /* jy add & chang */
       }


       if(timer2 == 0) Old_key = 0;

       if(KeyData == Old_key){
          return 0;
       } else {
          Old_key = KeyData; 
          return KeyData;
       }

}


#if 0
void  LCD_Turn_char(void)
{             
                  CLEAR_LCD_STROBE;                 /* CE  */
                  LCD_objectSendByte1(0x42);        /* Address */
                  SET_LCD_STROBE;                   /* CE  */

                  LCD_objectSendByte4(0);
                  LCD_objectSendByte4(0);
                  LCD_objectSendByte4(0);
                  LCD_objectSendByte4(0);
                  CLEAR_LCD_STROBE;

                  LCD_objectSendByte1(0x42);        /* Address */
                  SET_LCD_STROBE;                   /* CE  */

                  LCD_objectSendByte4(0);
                  LCD_objectSendByte4(0);
                  LCD_objectSendByte4(0);
                  LCD_objectSendByte4(0x8000);
                  CLEAR_LCD_STROBE;

                  LCD_objectSendByte1(0x42);        /* Address */
                  SET_LCD_STROBE;                   /* CE  */

                  LCD_objectSendByte4(turn_char[_timer0]);
                  LCD_objectSendByte4(0);
                  LCD_objectSendByte4(0);
                  LCD_objectSendByte4(0x4000);
                  CLEAR_LCD_STROBE;
                  //CLEAR_LCD_DOUT;
}
#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲一二三级电影| 国产91高潮流白浆在线麻豆| 久久精品一区二区| 欧美mv日韩mv国产网站app| 欧美丰满少妇xxxxx高潮对白| 99久久综合精品| av激情亚洲男人天堂| 成人av网站在线观看免费| 国产成人在线网站| 国产久卡久卡久卡久卡视频精品| 久久精品国产免费| 国产成人在线观看| 成人成人成人在线视频| 色婷婷综合久久久久中文一区二区 | 亚洲最新视频在线播放| 依依成人精品视频| 日本怡春院一区二区| 麻豆91小视频| 高清成人在线观看| 欧美影片第一页| 在线成人午夜影院| 久久久久久久久久久黄色| 国产人伦精品一区二区| 最新成人av在线| 日韩激情一二三区| 国产成人精品午夜视频免费| 99久久精品国产导航| 欧美日韩国产123区| 26uuu欧美| 亚洲精品日日夜夜| 国产一区二区三区av电影| 91看片淫黄大片一级在线观看| 亚洲欧美一区二区三区极速播放 | 精品免费视频一区二区| 亚洲欧洲无码一区二区三区| 国产欧美一区二区精品秋霞影院 | 欧美日韩视频专区在线播放| 久久国产精品免费| 国产成人综合亚洲91猫咪| 色综合久久99| 2欧美一区二区三区在线观看视频| 欧美极品美女视频| 日韩高清欧美激情| 色婷婷av一区二区| 精品国产sm最大网站免费看| 亚洲欧美综合网| 极品尤物av久久免费看| 91传媒视频在线播放| 久久精品亚洲一区二区三区浴池| 亚洲精品成人精品456| 久久99国产精品尤物| 色综合天天综合网天天狠天天| 日韩一区二区不卡| 一区二区三区中文字幕| 国产成人亚洲精品狼色在线| 欧美日韩一本到| 亚洲视频狠狠干| 国产成人精品1024| 日韩一区二区电影| 日韩电影免费在线观看网站| 在线视频国产一区| 亚洲欧洲综合另类在线| 成人夜色视频网站在线观看| 精品日韩一区二区三区免费视频| 亚洲一区二区三区在线播放| 波多野结衣中文一区| 久久久久国产精品麻豆ai换脸| 日韩激情av在线| 欧美日韩国产一区| 亚洲自拍都市欧美小说| 色婷婷久久久久swag精品| 综合激情网...| 成人小视频免费在线观看| 久久久精品免费网站| 美女国产一区二区三区| 欧美一区午夜精品| 日韩精品欧美精品| 6080午夜不卡| 美女视频黄免费的久久| 欧美大片日本大片免费观看| 美国三级日本三级久久99 | 7777精品久久久大香线蕉| 亚洲一区二区三区自拍| 欧美理论电影在线| 免费人成网站在线观看欧美高清| 欧美一级精品大片| 裸体一区二区三区| 激情六月婷婷综合| 欧洲日韩一区二区三区| 91免费精品国自产拍在线不卡| 国产一区二区视频在线| 国产在线不卡一区| 在线一区二区三区四区| 国内久久精品视频| 国产精品91一区二区| 成人在线视频首页| 欧美一区二区三区在线看 | 婷婷开心激情综合| www.在线欧美| 亚洲精品国产精华液| 欧美亚洲国产一区二区三区va| 亚洲国产中文字幕| 日韩视频一区二区三区| 懂色av一区二区在线播放| 亚洲免费观看在线视频| 91精品国产全国免费观看| 精品制服美女久久| 亚洲精品欧美在线| 精品成人佐山爱一区二区| aaa国产一区| 日韩一区精品字幕| 国产午夜精品久久久久久免费视 | 精品久久久久久综合日本欧美| 国产一区91精品张津瑜| 亚洲精品成人悠悠色影视| 精品99久久久久久| 91行情网站电视在线观看高清版| 欧美aaa在线| 亚洲人成7777| 久久久久久黄色| 56国语精品自产拍在线观看| 国产精品综合久久| 人人超碰91尤物精品国产| 国产精品天美传媒| 日韩欧美在线不卡| 欧美影院一区二区| a4yy欧美一区二区三区| 国产中文字幕精品| 天天亚洲美女在线视频| 国产精品少妇自拍| 精品免费国产一区二区三区四区| 91视频.com| 成人免费av网站| 国产精品一二三四| 日本亚洲最大的色成网站www| 亚洲视频在线一区观看| www精品美女久久久tv| 欧美精品在欧美一区二区少妇| eeuss鲁片一区二区三区在线观看| 麻豆专区一区二区三区四区五区| 一区二区三区四区国产精品| 中文字幕欧美日韩一区| 久久精品视频在线看| 26uuu欧美| 精品少妇一区二区三区在线播放| 宅男在线国产精品| 欧美日本国产视频| 欧美一区二区三区啪啪| 91麻豆精品国产91久久久久久| 欧洲另类一二三四区| 欧美中文字幕一二三区视频| 亚洲激情欧美激情| 欧美三级日韩三级| 2020国产精品| 国产欧美日韩精品a在线观看| 色婷婷综合在线| 成人av在线网站| 国产一区在线看| 丝袜亚洲另类丝袜在线| 亚洲女人****多毛耸耸8| 在线观看av不卡| 色噜噜狠狠成人中文综合 | 91.成人天堂一区| 成人欧美一区二区三区黑人麻豆| 日韩欧美高清dvd碟片| 日韩丝袜美女视频| 欧美成人三级在线| 国产三级精品三级在线专区| 国产精品天干天干在线综合| 中文字幕日韩一区二区| 亚洲高清免费一级二级三级| 一区二区三区蜜桃| 日本va欧美va精品发布| 国产麻豆视频一区二区| 成人av在线播放网址| 91久久人澡人人添人人爽欧美| 欧美午夜精品久久久久久孕妇| 欧美日韩大陆在线| 国产视频在线观看一区二区三区 | 久久er精品视频| 国产在线精品国自产拍免费| 波多野结衣91| 5566中文字幕一区二区电影| 久久久精品天堂| 亚洲一区二区三区在线看| 麻豆91在线看| 在线看国产一区| 久久久久久久久久久99999| 亚洲另类春色国产| 久久99精品久久久久久动态图| 99久久国产综合精品色伊| 欧美一区二区在线视频| 国产欧美一区二区精品秋霞影院 | 亚洲国产精品成人综合| 亚洲成在人线在线播放| 国产激情一区二区三区四区 | 欧美成人欧美edvon| 亚洲人快播电影网| 国产做a爰片久久毛片| 在线免费观看成人短视频|