找回密碼
         注冊會員
        搜索附件  

        eighteen.rar

         

        關于LGM12864顯示字的問題:
        本人學習單片機書是應用gccavr軟件,現在是將gcc改為icc程序,在gcc中能夠很好的實現,但改為icc顯示就不對了。希望大俠們指點一下。在下先謝謝了。下面是我的代碼。附件中有我的程序和仿真圖。
        //LCD12864顯示程序
        #include<iom16v.h>
        #include<Delay.h>
        #include<string.h>
        #include<macros.h>
        #define INT8U unsigned char
        #define INT16U unsigned int
        #define LCD_START_ROW 0xC0
        #define LCD_PAGE 0xB8
        #define LCD_COL 0x40
        #define RW PD0
        #define DI PD1
        #define E PD2
        #define CS1 PD3
        #define CS2 PD4
        #define RST PD5
        #define LCD_PORT PORTC
        #define LCD_DDR DDRC
        #define LCD_PIN PINC
        #define LCD_CTRL PORTD
        #define RW_1() LCD_CTRL|=(1<<RW)
        #define RW_0() LCD_CTRL&=~(1<<RW)
        #define DI_1() LCD_CTRL|=(1<<DI)
        #define DI_0() LCD_CTRL&=~(1<<DI)
        #define E_1() LCD_CTRL|=(1<<E)
        #define E_0() LCD_CTRL&=~(1<<E)
        #define CS1_1() LCD_CTRL|=(1<<CS1)
        #define CS1_0() LCD_CTRL&=~(1<<CS1)
        #define CS2_1() LCD_CTRL|=(1<<CS2)
        #define CS2_0() LCD_CTRL&=~(1<<CS2)
        #define RST_1() LCD_CTRL|=(1<<RST)
        #define RST_0() LCD_CTRL&=~(1<<RST)
        INT8U Reverse_Display=0;
        void Wait_LCD_Ready()
        {
        Check_Busy:
        LCD_DDR=0x00;
        LCD_PORT=0xFF;
        RW_1();asm("nop");DI_0();
        E_1(); asm("nop");E_0();
        if(LCD_PIN&0x80)
        goto Check_Busy;
        }
        void LCD_Write_Command(INT8U cmd)
        {
        Wait_LCD_Ready();
        LCD_DDR=0xFF;
        LCD_PORT=0xFF;
        RW_0();asm("nop");DI_0();
        LCD_PORT=cmd;
        E_1();asm("nop");E_0();
        }
        void LCD_Write_Data(INT8U dat)
        {
        Wait_LCD_Ready();
        LCD_DDR=0xFF;
        LCD_PORT=0xFF;
        RW_0();asm("nop");DI_1();
        if(!Reverse_Display)
        LCD_PORT=dat;
        else
        LCD_PORT=~dat;
        E_1();asm("nop");E_0();
        }
        void LCD_Initialize(void)
        {
        LCD_Write_Command(0x3F);
        DelayMs(15);
        }
        //從第P頁第L列開始顯示W個字節數據,數據在r所指向的緩沖
        void Common_Show(INT8U P,INT8U L,INT8U W,INT8U *r)
        {
        INT8U i;
        if(L<64)
        {
        CS1_1();CS2_0();
        LCD_Write_Command(LCD_PAGE+P);
        LCD_Write_Command(LCD_COL+L);
        if(L+W<64)
        {
        for(i=0;i<W;i++)
        LCD_Write_Data(r);
        }
        else
        {
        for(i=0;i<64-L;i++)
        LCD_Write_Data(r);
        CS1_0();CS2_1();
        LCD_Write_Command(LCD_PAGE+P);
        LCD_Write_Command(LCD_COL);
        for(i=64-L;i<W;i++)
        LCD_Write_Data(r);
        }
        }
        else
        {
        CS1_0();CS2_1();
        LCD_Write_Command(LCD_PAGE+P);
        LCD_Write_Command(LCD_COL+L-64);
        for(i=0;i<W;i++)
        LCD_Write_Data(r);
        }
        }
        //8*116點陣
        void Display_A_Char_8X16(INT8U P,INT8U L,INT8U *M)
        {
        Common_Show(P,L,8,M);
        Common_Show(P+1,L,8,M+8);
        }
        //16*16點陣
        void Display_A_WORD(INT8U P,INT8U L,INT8U *M)
        {
        Common_Show(P,L,16,M);
        Common_Show(P+1,L,16,M+16);
        }
        //一串16*16點陣
        void DisPlay_A_WORD_String(INT8U P,INT8U L,INT8U C,INT8U *M)
        {
        INT8U i;
        for(i=0;i<C;i++)
        {
        Display_A_WORD(P,L+i*16,M+i*32);
        }
        }

        //主程序
        #include<iom16v.h>
        //#include<Delay.h>
        #define INT8U unsigned char
        #define INT16U unsigned int
        extern void LCD_Initialize(void);
        extern void DisPlay_A_WORD_String(INT8U P,INT8U L,INT8U C,INT8U *M);
        extern INT8U Reverse_Display;
        const INT8U WORD_Dot_Matrix[]=
        {
        /*-- 文字: 液 --*/
        /*-- 宋體12; 此字體下對應的點陣為:寬x高=16x16 --*/
        0x10,0x61,0x06,0xE0,0x18,0x84,0xE4,0x1C,0x84,0x65,0xBE,0x24,0xA4,0x64,0x04,0x00,
        0x04,0x04,0xFF,0x00,0x01,0x00,0xFF,0x41,0x21,0x12,0x0C,0x1B,0x61,0xC0,0x40,0x00,
        /*-- 文字: 晶 --*/
        /*-- 宋體12; 此字體下對應的點陣為:寬x高=16x16 --*/
        0x00,0x00,0x00,0x00,0x7E,0x2A,0x2A,0x2A,0x2A,0x2A,0x2A,0x7E,0x00,0x00,0x00,0x00,
        0x00,0x7F,0x25,0x25,0x25,0x25,0x7F,0x00,0x00,0x7F,0x25,0x25,0x25,0x25,0x7F,0x00,
        /*-- 文字: 屏 --*/
        /*-- 宋體12; 此字體下對應的點陣為:寬x高=16x16 --*/
        0x00,0x00,0xFF,0x09,0x49,0x59,0xE9,0x49,0x49,0x49,0xE9,0x59,0x49,0x4F,0x00,0x00,
        0x40,0x30,0x0F,0x82,0x42,0x32,0x0F,0x02,0x02,0x02,0xFF,0x02,0x02,0x02,0x02,0x00,
        /*-- 文字: 測 --*/
        /*-- 宋體12; 此字體下對應的點陣為:寬x高=16x16 --*/
        0x08,0x31,0x86,0x60,0x00,0xFE,0x02,0xF2,0x02,0xFE,0x00,0xF8,0x00,0x00,0xFF,0x00,
        0x04,0xFC,0x03,0x00,0x80,0x47,0x30,0x0F,0x10,0x67,0x00,0x07,0x40,0x80,0x7F,0x00,
        /*-- 文字: 試 --*/
        /*-- 宋體12; 此字體下對應的點陣為:寬x高=16x16 --*/
        0x40,0x42,0xDC,0x08,0x00,0x90,0x90,0x90,0x90,0x90,0xFF,0x10,0x12,0x1C,0x10,0x00,
        0x00,0x00,0x7F,0x20,0x10,0x20,0x20,0x1F,0x10,0x10,0x01,0x06,0x18,0x20,0x78,0x00,
        /*-- 文字: 程 --*/
        /*-- 宋體12; 此字體下對應的點陣為:寬x高=16x16 --*/
        0x10,0x12,0xD2,0xFE,0x91,0x11,0x80,0xBF,0xA1,0xA1,0xA1,0xA1,0xBF,0x80,0x00,0x00,
        0x04,0x03,0x00,0xFF,0x00,0x41,0x44,0x44,0x44,0x7F,0x44,0x44,0x44,0x44,0x40,0x00,
        /*-- 文字: 序 --*/
        /*-- 宋體12; 此字體下對應的點陣為:寬x高=16x16 --*/
        0x00,0x00,0xFC,0x04,0x04,0x14,0x14,0x35,0x56,0x94,0x54,0x34,0x14,0x04,0x04,0x00,
        0x80,0x60,0x1F,0x00,0x01,0x01,0x01,0x41,0x81,0x7F,0x01,0x01,0x01,0x03,0x01,0x00,
        };
        void main()
        {
        DDRD=0xFF;PORTD=0xFF;
        LCD_Initialize();
        DisPlay_A_WORD_String(2,8,7,(INT8U*)WORD_Dot_Matrix);
        Reverse_Display=1;
        DisPlay_A_WORD_String(5,8,7,(INT8U*)WORD_Dot_Matrix);
        while(1);
        }


        QQ|手機版|MCU資訊論壇 ( 京ICP備18035221號-2 )|網站地圖

        GMT+8, 2025-5-3 22:09 , Processed in 0.039772 second(s), 8 queries , Redis On.

        Powered by Discuz! X3.5

        © 2001-2025 Discuz! Team.

        返回頂部
        精品人妻少妇一区二区三区在线| 国产高清不卡码一区二区三区| 天美传媒麻豆精品下载| 国产资源在线观看| 亚洲精品国产成人片| 国产成人亚洲合集青青草原精品| 91精品国产自产在线观看| 亚洲第一区精品观看| 久久99精品久久只有精品| 九九在线精品视频专区| 久久久久九九精品影院| 亚洲精品无码国产| 国产精品一区二区久久| 精品久久人人爽天天玩人人妻| 日韩毛片免费观看一区| 欧美日韩综合精品| 亚洲动漫精品无码av天堂 | 日本Aⅴ大伊香蕉精品视频| 欧美丝袜激情办公室在线观看| 97久久超碰国产精品2021| 国产欧美日本亚洲精品一5| 国产精品不卡高清在线观看| 高h视频在线观看| 四虎国产精品永久地址99| 无码国内精品久久人妻麻豆按摩| 久久久久成人精品无码中文字幕| 在线精品视频播放| 亚洲美女自拍视频| 麻豆精品不卡国产免费看| 影音先锋最新资源网| 国产精品欧美亚洲韩国日本| 亚洲精品二三区| 久久r热这里有精品视频| 亚洲人午夜射精精品日韩| 好属妞这里只有精品久久| 亚洲无码日韩精品第一页| 国产日韩欧美精品| 亚洲之色在线v中文字幕app| 97久久超碰成人精品网站| 日本熟妇亚洲欧美精品区| 国产精品v欧美精品v日韩精品|