?? megalcd.s
字號:
.byte 8,3
.byte 3,128
.byte 16,6
.byte 3,192
.byte 32,12
.byte 1,240
.byte 0,24
.byte 0,252
.byte 0,32
.byte 0,'p
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.dbsym e hz2 _hz2 A[132:132]kc
_hz3::
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 96,0
.byte 0,0
.byte 96,0
.byte 6,0
.byte 192,0
.byte 7,1
.byte 128,0
.byte 3,130
.byte 1,224
.byte 1,28
.byte 62,224
.byte 0,8
.byte 16,96
.byte 0,12
.byte 16,96
.byte 0,12
.byte 16,192
.byte 7,12
.byte 16,192
.byte 63,140
.byte 'P,192
.byte 35,13
.byte 147,192
.byte 3,15
.byte 17,192
.byte 2,14
.byte 17,128
.byte 2,12
.byte 16,0
.byte 2,8
.byte 16,0
.byte 3,0
.byte 16,0
.byte 1,0
.byte 16,0
.byte 1,0
.byte 16,0
.byte 31,192
.byte 16,0
.byte 60,62
.byte 16,0
.byte 0,7
.byte 224,0
.byte 0,1
.byte 255,254
.byte 0,0
.byte 63,248
.byte 0,0
.byte 7,192
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.dbsym e hz3 _hz3 A[132:132]kc
_hz4::
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 64,0
.byte 0,48
.byte 96,0
.byte 0,48
.byte 96,0
.byte 0,'p
.byte 224,0
.byte 0,96
.byte 193,128
.byte 0,193
.byte 191,224
.byte 0,195
.byte 224,224
.byte 1,130
.byte 49,0
.byte 3,196
.byte 48,0
.byte 6,200
.byte 16,0
.byte 12,192
.byte 16,0
.byte 8,194
.byte 19,0
.byte 16,130
.byte 17,192
.byte 0,134
.byte 16,192
.byte 0,134
.byte 48,64
.byte 0,132
.byte 176,0
.byte 0,128
.byte 'p,0
.byte 0,128
.byte 48,0
.byte 0,0
.byte 32,224
.byte 0,7
.byte 0,'x
.byte 2,3
.byte 192,24
.byte 2,32
.byte 192,0
.byte 6,48
.byte 4,0
.byte 6,24
.byte 2,0
.byte 12,12
.byte 3,128
.byte 12,7
.byte 3,192
.byte 0,3
.byte 255,192
.byte 0,0
.byte 127,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.dbsym e hz4 _hz4 A[132:132]kc
.area text(rom, con, rel)
.dbfile D:\PROTEU~1.7\PROTEU~1.7\JOHU\a___EWTS82\megalcd.c
.dbfunc e ocmj_init _ocmj_init fV
.even
_ocmj_init::
.dbline -1
.dbline 170
; /*****************************************************
; http://www.sl.com.cn
; 雙龍電子公司----中文LCD演示程序(ICCAVR)
; 作者:詹衛前
; 1、應包含頭文件slavr.h
; 2、在工程選項中的Additional Lib中填入slavr
; 使編譯器使用附加庫文件libslavr.a
; 3、數據線D0~D7接PORTA
; ASK=PORTE.6
; ANSWER=PORTE.7
; RESET=PORTC.3
; *****************************************************/
; #include <iom128v.h>
; //#include <slavr.h>
; /* 定義OCMJ4X8端口 */
; //DATA_PORT=PORTA
; #define data_port PORTA
; //ASK=PORTE.6
; #define ask (PINE&0x40)
; //ANSWER=PORTE.7
; #define set_answer asm("sbi 0x03,7")
; #define clr_answer asm("cbi 0x03,7")
; //RESTE=PORTC.3
; #define set_reset asm("sbi 0x15,3")
; #define clr_reset asm("cbi 0x15,3")
; #define wait asm("nop\n nop")
;
; #define xtal 8
; /*void delay_1ms(void)
; { unsigned int i;
; for(i=1;i<(unsigned int)(xtal*143-2);i++)
; ;
; }
; void delay_ms(unsigned int n)
; {
; unsigned int j=0;
; while(j<n)
; {delay_1ms();
; j++;
; }
; }*/
;
; //extern void delay_ms(unsigned int n);//引用外部函數
; //extern void delay_1ms(void);
; /*-- 雙龍公司圖標數據 --*/
; /*-- 寬度x高度=32x32 --*/
; const unsigned char sl_ico[128]={
; 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFE,0x7F,0xFF,0xFF,0xF8,0x3F,0xFF,0xFF,0xE0,0x1F,
; 0xFF,0xFF,0x80,0x1F,0xFF,0xFF,0x00,0x3F,0xFF,0xFE,0x01,0xFF,0xFF,0xFC,0x07,0xFF,
; 0xFF,0xF0,0x1F,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xF0,0x7F,0xFF,
; 0xFF,0xE0,0x7F,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xF0,0x1F,0xFF,0xFF,0xF8,0x0F,0xFF,
; 0xFF,0xFC,0x0F,0xFF,0xFF,0xFC,0x07,0xFF,0xFF,0xFE,0x03,0xFF,0xFF,0xFF,0x03,0xFF,
; 0xFF,0xFF,0x03,0xFF,0xFF,0xFF,0x01,0xFF,0xFF,0xFF,0x81,0xFF,0xFF,0xFF,0x01,0xFF,
; 0xFF,0xFF,0x03,0xFF,0xFF,0xFE,0x03,0xFF,0xFF,0xF8,0x03,0xFF,0xFF,0xE0,0x07,0xFF,
; 0xFE,0x00,0x2F,0xFF,0xFF,0xC0,0x3F,0xFF,0xFF,0xFD,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF};
; /*-- ATMEL位圖文件數據 --*/
; /*-- 寬度x高度=104x49 --*/
; const unsigned char atmel_bmp[637]={
; 0x00,0x00,0x0F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF8,0x00,0x00,0x0F,
; 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF8,0x00,0x00,0x1F,0xFF,0xFF,0xFF,
; 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF8,0x00,0x00,0x1F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
; 0xFF,0xFF,0xFF,0xF8,0x00,0x00,0x3F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
; 0xF8,0x00,0x00,0x7F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF8,0x00,0x00,
; 0x7F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF8,0x00,0x00,0xFF,0xFF,0xFF,
; 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF8,0x00,0x00,0x00,0x7F,0x80,0x00,0x00,0x00,
; 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
; 0x00,0x00,0x00,0x00,0x00,0x7F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
; 0x03,0xFC,0x7F,0x9F,0xFF,0xFF,0xF8,0x3F,0xFF,0xE7,0xF8,0x00,0x00,0x03,0xFC,0x7F,
; 0x9F,0xFF,0xFF,0xFC,0x3F,0xFF,0xE7,0xF8,0x00,0x00,0x07,0xFC,0x7F,0x9F,0xFF,0xFF,
; 0xFE,0x3F,0xFF,0xE7,0xF8,0x00,0x00,0x07,0xFC,0x7F,0x9F,0xC7,0xF9,0xFE,0x3F,0xFF,
; 0xE7,0xF8,0x00,0x00,0x0F,0xFC,0x7F,0x9F,0xC7,0xF8,0xFE,0x3F,0xFF,0xE7,0xF8,0x00,
; 0x00,0x0F,0xFC,0x7F,0x9F,0xC7,0xF8,0xFE,0x3F,0xFF,0xE7,0xF8,0x00,0x00,0x1F,0xFC,
; 0x7F,0x9F,0xC7,0xF8,0xFE,0x3F,0xFF,0xE7,0xF8,0x00,0x00,0x1F,0xFC,0x7F,0x9F,0xC7,
; 0xF8,0xFE,0x3F,0xFF,0xE7,0xF8,0x00,0x00,0x3F,0xFC,0x7F,0x9F,0xC7,0xF8,0xFE,0x3F,
; 0x00,0x07,0xF8,0x00,0x00,0x3F,0xFC,0x7F,0x9F,0xC7,0xF8,0xFE,0x3F,0x00,0x07,0xF8,
; 0x00,0x00,0x7F,0xFC,0x7F,0x9F,0xC7,0xF8,0xFE,0x3F,0xFF,0xE7,0xF8,0x00,0x00,0x7F,
; 0xFC,0x7F,0x9F,0xC7,0xF8,0xFE,0x3F,0xFF,0xE7,0xF8,0x00,0x00,0xFF,0xFC,0x7F,0x9F,
; 0xC7,0xF8,0xFE,0x3F,0xFF,0xE7,0xF8,0x00,0x00,0xFF,0xFC,0x7F,0x9F,0xC7,0xF8,0xFE,
; 0x3F,0xFF,0xE7,0xF8,0x00,0x01,0xFF,0xFC,0x7F,0x9F,0xC7,0xF8,0xFE,0x3F,0xFF,0xE7,
; 0xF8,0x00,0x01,0xFF,0xFC,0x7F,0x9F,0xC7,0xF8,0xFE,0x3F,0xFF,0xE7,0xF8,0x00,0x03,
; 0xFF,0xFC,0x7F,0x9F,0xC7,0xF8,0xFE,0x3F,0xFF,0xE7,0xF8,0x00,0x03,0xFF,0xFC,0x7F,
; 0x9F,0xC7,0xF8,0xFE,0x3F,0xFF,0xE7,0xF8,0x00,0x07,0xFB,0xFC,0x7F,0x9F,0xC7,0xF8,
; 0xFE,0x3F,0x00,0x07,0xF8,0x00,0x07,0xF3,0xFC,0x7F,0x9F,0xC7,0xF8,0xFE,0x3F,0x00,
; 0x07,0xF8,0x00,0x0F,0xF3,0xFC,0x7F,0x9F,0xC7,0xF8,0xFE,0x3F,0xFF,0xE7,0xF8,0x00,
; 0x1F,0xE3,0xFC,0x7F,0x9F,0xC7,0xF8,0xFE,0x3F,0xFF,0xE7,0xFF,0xF8,0x1F,0xE3,0xFC,
; 0x7F,0x9F,0xC7,0xF8,0xFE,0x3F,0xFF,0xE7,0xFF,0xF0,0x3F,0xC3,0xFC,0x7F,0x9F,0xC7,
; 0xF8,0xFE,0x3F,0xFF,0xE7,0xFF,0xF0,0x3F,0xC3,0xFC,0x7F,0x9F,0xC7,0xF8,0xFE,0x3F,
; 0xFF,0xE7,0xFF,0xE0,0x7F,0xF3,0xFC,0x7F,0x9F,0xC7,0xF8,0xFE,0x3F,0xFF,0xE7,0xFF,
; 0xE0,0x7F,0xF3,0xFC,0x7F,0x9F,0xC7,0xF8,0xFE,0x3F,0xFF,0xE7,0xFF,0xC0,0xFF,0xF3,
; 0xFC,0x7F,0x9F,0xC7,0xF8,0xFE,0x3F,0xFF,0xE7,0xFF,0xC0,0x00,0x00,0x00,0x00,0x00,
; 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
; 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
; 0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFE,0x00,0xFF,
; 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFE,0x00,0xFF,0xFF,0xFF,0xFF,
; 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFC,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
; 0xFF,0xFF,0xFF,0xFF,0xFC,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
; 0xFF,0xF8,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF8,0x00,
; 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};
; /*-- 文字: 和 --*/
; /*-- 楷體_GB231248; 此字體下對應的點陣為:寬x高=64x64 --*/
; const unsigned char hz1[480]={
; 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
; 0x00,0x00,0x00,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x80,0x00,0x00,0x00,
; 0x00,0x00,0x00,0x1F,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xC0,0x00,0x00,0x00,
; 0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0xFC,0x00,0x00,0x00,0x00,
; 0x00,0x00,0x0F,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,
; 0x00,0x03,0xFF,0x80,0x00,0x00,0x00,0x00,0x00,0x1F,0x87,0xC0,0x00,0x00,0x00,0x00,
; 0x00,0x18,0x07,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0xC0,0x00,0x00,0x00,0x00,
; 0x00,0x00,0x03,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x80,0x00,0x00,0x00,0x00,
; 0x00,0x00,0x03,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x80,0x00,0x00,0x00,0x00,
; 0x00,0x00,0x03,0x87,0xC0,0x00,0x00,0x00,0x00,0x00,0x03,0xFF,0xE0,0x00,0x06,0x00,
; 0x00,0x00,0x0F,0xFF,0xC0,0x00,0x1F,0x80,0x00,0x00,0xFF,0xF8,0x00,0x01,0xFF,0xE0,
; 0x00,0x0F,0xFF,0x80,0x7F,0xFF,0xFF,0xF0,0x07,0xFF,0xE7,0x80,0x7F,0xFF,0xFF,0xF0,
; 0x1F,0xFE,0x0F,0x80,0x7F,0x80,0x07,0xE0,0x0F,0xF0,0x1F,0x80,0x3E,0x00,0x07,0xC0,
; 0x07,0x80,0x3F,0x80,0x1E,0x00,0x07,0xC0,0x00,0x00,0x3F,0x80,0x1E,0x00,0x07,0x80,
; 0x00,0x00,0x7F,0x80,0x1E,0x00,0x07,0x80,0x00,0x00,0xFB,0x80,0x0E,0x00,0x07,0x80,
; 0x00,0x00,0xF3,0xF8,0x0E,0x00,0x0F,0x00,0x00,0x01,0xE3,0xFE,0x0E,0x00,0x0F,0x00,
; 0x00,0x03,0xE3,0xBF,0x0E,0x00,0x0F,0x00,0x00,0x07,0xC3,0x9F,0x07,0x00,0x0E,0x00,
; 0x00,0x07,0x83,0x8F,0x07,0x00,0x0E,0x00,0x00,0x0F,0x03,0x83,0x07,0x00,0x1F,0x00,
; 0x00,0x1E,0x03,0x80,0x07,0x1F,0xFF,0x80,0x00,0x3C,0x03,0x80,0x07,0xFF,0xFF,0x80,
; 0x00,0x78,0x03,0x80,0x07,0xFF,0x00,0x00,0x00,0x70,0x03,0x80,0x03,0x00,0x00,0x00,
; 0x00,0xE0,0x03,0x80,0x03,0x00,0x00,0x00,0x01,0xC0,0x03,0x80,0x03,0x00,0x00,0x00,
; 0x03,0x80,0x07,0x80,0x03,0x00,0x00,0x00,0x06,0x00,0x07,0x80,0x01,0x00,0x00,0x00,
; 0x0C,0x00,0x07,0x80,0x00,0x00,0x00,0x00,0x10,0x00,0x07,0x80,0x00,0x00,0x00,0x00,
; 0x00,0x00,0x07,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x00,0x00,0x00,0x00,0x00,
; 0x00,0x00,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x00,0x00,0x00,0x00,0x00,
; 0x00,0x00,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x00,0x00,0x00,0x00,0x00,
; 0x00,0x00,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x00,0x00,0x00,0x00,0x00,
; 0x00,0x00,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x00,0x00,0x00,0x00,
; 0x00,0x00,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
; 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};
; const unsigned char hz2[132]={
; /*-- 文字: 歡 --*/
; /*-- 楷體_GB231224; 此字體下對應的點陣為:寬x高=32x33 --*/
; 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x00,0x00,0x00,0x70,0x00,
; 0x00,0x00,0x70,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0xC0,0x00,
; 0x00,0x00,0xC0,0x00,0x00,0x60,0x81,0x00,0x03,0xF1,0x8F,0xC0,0x3E,0x71,0xF9,0xE0,
; 0x10,0x63,0x01,0x80,0x00,0x62,0x03,0x00,0x08,0x64,0xC2,0x00,0x04,0x60,0x60,0x00,
; 0x06,0xC0,0x60,0x00,0x03,0xC0,0x60,0x00,0x01,0xC0,0x60,0x00,0x01,0xC0,0xD0,0x00,
; 0x01,0x60,0xD8,0x00,0x03,0x70,0xCC,0x00,0x06,0x31,0x8C,0x00,0x04,0x11,0x86,0x00,
; 0x08,0x03,0x03,0x80,0x10,0x06,0x03,0xC0,0x20,0x0C,0x01,0xF0,0x00,0x18,0x00,0xFC,
; 0x00,0x20,0x00,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
; 0x00,0x00,0x00,0x00};
; const unsigned char hz3[132]={
; /*-- 文字: 迎 --*/
; /*-- 楷體_GB231224; 此字體下對應的點陣為:寬x高=32x33 --*/
; 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
; 0x00,0x00,0x60,0x00,0x00,0x00,0x60,0x00,0x06,0x00,0xC0,0x00,0x07,0x01,0x80,0x00,
; 0x03,0x82,0x01,0xE0,0x01,0x1C,0x3E,0xE0,0x00,0x08,0x10,0x60,0x00,0x0C,0x10,0x60,
; 0x00,0x0C,0x10,0xC0,0x07,0x0C,0x10,0xC0,0x3F,0x8C,0x50,0xC0,0x23,0x0D,0x93,0xC0,
; 0x03,0x0F,0x11,0xC0,0x02,0x0E,0x11,0x80,0x02,0x0C,0x10,0x00,0x02,0x08,0x10,0x00,
; 0x03,0x00,0x10,0x00,0x01,0x00,0x10,0x00,0x01,0x00,0x10,0x00,0x1F,0xC0,0x10,0x00,
; 0x3C,0x3E,0x10,0x00,0x00,0x07,0xE0,0x00,0x00,0x01,0xFF,0xFE,0x00,0x00,0x3F,0xF8,
; 0x00,0x00,0x07,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
; 0x00,0x00,0x00,0x00};
; const unsigned char hz4[132]={
; /*-- 文字: 您 --*/
; /*-- 楷體_GB231224; 此字體下對應的點陣為:寬x高=32x33 --*/
; 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x00,0x00,0x30,0x60,0x00,
; 0x00,0x30,0x60,0x00,0x00,0x70,0xE0,0x00,0x00,0x60,0xC1,0x80,0x00,0xC1,0xBF,0xE0,
; 0x00,0xC3,0xE0,0xE0,0x01,0x82,0x31,0x00,0x03,0xC4,0x30,0x00,0x06,0xC8,0x10,0x00,
; 0x0C,0xC0,0x10,0x00,0x08,0xC2,0x13,0x00,0x10,0x82,0x11,0xC0,0x00,0x86,0x10,0xC0,
; 0x00,0x86,0x30,0x40,0x00,0x84,0xB0,0x00,0x00,0x80,0x70,0x00,0x00,0x80,0x30,0x00,
; 0x00,0x00,0x20,0xE0,0x00,0x07,0x00,0x78,0x02,0x03,0xC0,0x18,0x02,0x20,0xC0,0x00,
; 0x06,0x30,0x04,0x00,0x06,0x18,0x02,0x00,0x0C,0x0C,0x03,0x80,0x0C,0x07,0x03,0xC0,
; 0x00,0x03,0xFF,0xC0,0x00,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
; 0x00,0x00,0x00,0x00};
; /* OCMJ4X8LCD初始化 */
; void ocmj_init(void)
; {
.dbline 172
; // MCUCR=0;
; DDRA=0xff;
ldi R24,255
out 0x1a,R24
.dbline 173
; PORTA=0xff;
out 0x1b,R24
.dbline 174
; DDRE=0b10000000;
ldi R24,128
out 0x2,R24
.dbline 175
; PORTE=0xff;
ldi R24,255
out 0x3,R24
.dbline 176
; clr_reset;//LCD復位
cbi 0x15,3
.dbline 177
; delay_ms(10);
ldi R16,10
ldi R17,0
xcall _delay_ms
.dbline 178
; set_reset;
sbi 0x15,3
.dbline 179
; clr_answer;
cbi 0x03,7
.dbline 180
; delay_ms(10);
ldi R16,10
ldi R17,0
xcall _delay_ms
.dbline -2
L1:
.dbline 0 ; func end
ret
.dbend
.dbfunc e ocmj_write _ocmj_write fV
; data -> R16
.even
_ocmj_write::
.dbline -1
.dbline 184
; }
; /* 寫數據到LCD */
; void ocmj_write(unsigned char data)
; {
L3:
.dbline 186
L4:
.dbline 185
; while(ask!=0)
sbic 0x1,6
rjmp L3
.dbline 187
; ;
; data_port=data;
out 0x1b,R16
.dbline 188
; wait;
nop
nop
.dbline 189
; set_answer;
sbi 0x03,7
.dbline 190
; wait;
nop
nop
L6:
.dbline 192
L7:
.dbline 191
; while(ask==0)
sbis 0x1,6
rjmp L6
.dbline 193
; ;
; clr_answer;
cbi 0x03,7
.dbline -2
L2:
.dbline 0 ; func end
ret
.dbsym r data 16 c
.dbend
.dbfunc e ico_tran _ico_tran fV
; j -> R20
; i -> R14
; ico_p -> R10,R11
; y -> R12
; x -> R22
.even
_ico_tran::
xcall push_gset5
mov R12,R18
mov R22,R16
ldd R10,y+10
ldd R11,y+11
.dbline -1
.dbline 199
; }
; /* 傳送32*32ICO點陣數據到LCD */
; /* x:0~15(字節為單位) y:0~64 */
; /* ico_p:指向圖形數據的指針 */
; void ico_tran(unsigned char x,unsigned char y,const unsigned char *ico_p)
; {
.dbline 201
; unsigned char i,j;
; x+=4;
subi R22,252 ; addi 4
.dbline 202
; for(j=0;j<32;j++)
clr R20
xjmp L13
L10:
.dbline 203
; {
.dbline 204
; for(i=0;i<4;i++)
clr R14
xjmp L17
L14:
.dbline 205
.dbline 206
ldi R16,243
xcall _ocmj_write
.dbline 207
mov R16,R22
xcall _ocmj_write
.dbline 208
mov R16,R12
xcall _ocmj_write
.dbline 209
movw R30,R10
lpm R16,Z
xcall _ocmj_write
.dbline 210
movw R24,R10
adiw R24,1
movw R10,R24
.dbline 211
inc R22
.dbline 212
L15:
.dbline 204
inc R14
L17:
.dbline 204
mov R24,R14
cpi R24,4
brlo L14
.dbline 213
subi R22,4
.dbline 214
inc R12
.dbline 215
L11:
.dbline 202
inc R20
L13:
.dbline 202
cpi R20,32
brlo L10
.dbline -2
L9:
xcall pop_gset5
.dbline 0 ; func end
ret
.dbsym r j 20 c
.dbsym r i 14 c
.dbsym r ico_p 10 pkc
.dbsym r y 12 c
.dbsym r x 22 c
.dbend
.dbfunc e bmp_tran _bmp_tran fV
; j -> R20
; i -> R14
; bmp_p -> R22,R23
; width -> R10
; high -> R12
; y -> y+12
; x -> y+10
.even
_bmp_tran::
xcall push_arg4
xcall push_gset5
ldd R12,y+14
ldd R10,y+16
ldd R22,y+18
ldd R23,y+19
.dbline -1
.dbline 223
; {
; ocmj_write(0xf3);
; ocmj_write(x);
; ocmj_write(y);
; ocmj_write(*ico_p);
; ico_p++;
; x++;
; }
; x-=4;
; y++;
; }
; }
; /* 傳送bmp點陣數據到LCD */
; /* x:0~15(字節為單位) y:0~64 */
; /* bmp_p:指向圖形數據的指針 */
; /* high:位圖高度(點陣行為單位) */
; /* width:位圖寬度(以字節為單位)? */
; void bmp_tran(unsigned char x,unsigned char y,unsigned char high,unsigned char width,const unsigned char *bmp_p)
; {
.dbline 225
; unsigned char i,j;
; x+=4;
ldd R24,y+10
subi R24,252 ; addi 4
std y+10,R24
.dbline 226
; for(j=0;j<high;j++)
clr R20
xjmp L22
L19:
.dbline 227
; {
.dbline 228
; for(i=0;i<width;i++)
clr R14
xjmp L26
L23:
.dbline 229
.dbline 230
ldi R16,243
xcall _ocmj_write
.dbline 231
ldd R16,y+10
xcall _ocmj_write
.dbline 232
ldd R16,y+12
xcall _ocmj_write
.dbline 233
movw R30,R22
lpm R16,Z
xcall _ocmj_write
.dbline 234
subi R22,255 ; offset = 1
sbci R23,255
.dbline 235
ldd R0,y+10
inc R0
std y+10,R0
.dbline 236
L24:
.dbline 228
inc R14
L26:
.dbline 228
cp R14,R10
brlo L23
.dbline 237
ldd R0,y+10
sub R0,R10
std y+10,R0
.dbline 238
ldd R0,y+12
inc R0
std y+12,R0
.dbline 239
L20:
.dbline 226
inc R20
L22:
.dbline 226
cp R20,R12
brlo L19
.dbline -2
L18:
xcall pop_gset5
adiw R28,4
.dbline 0 ; func end
ret
.dbsym r j 20 c
.dbsym r i 14 c
.dbsym r bmp_p 22 pkc
.dbsym r width 10 c
.dbsym r high 12 c
.dbsym l y 12 c
.dbsym l x 10 c
.dbend
.dbfunc e hz_tran _hz_tran fV
; hz_p -> R20,R21
; y -> R22
; x -> R10
.even
_hz_tran::
xcall push_gset3
mov R22,R18
mov R10,R16
ldd R20,y+6
ldd R21,y+7
.dbline -1
.dbline 244
; {
; ocmj_write(0xf3);
; ocmj_write(x);
; ocmj_write(y);
; ocmj_write(*bmp_p);
; bmp_p++;
; x++;
; }
; x-=width;
; y++;
; }
; }
; /* 傳送LCD內部漢字數據到LCD */
; /* x:0x00~0x07 y:0x00~0x03 */
; void hz_tran(unsigned char x,unsigned char y,unsigned char *hz_p)
; {
.dbline 245
; x+=2;
mov R24,R10
subi R24,254 ; addi 2
mov R10,R24
xjmp L29
L28:
.dbline 247
; while((*hz_p)!=0)
; {
.dbline 248
; ocmj_write(0xf0);
ldi R16,240
xcall _ocmj_write
.dbline 249
; ocmj_write(x);
mov R16,R10
xcall _ocmj_write
.dbline 250
; ocmj_write(y);
mov R16,R22
xcall _ocmj_write
.dbline 251
; ocmj_write(*hz_p-0xa0);
movw R30,R20
ldd R16,z+0
subi R16,160
xcall _ocmj_write
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -