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

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

?? lcd_drv.obj

?? 89c51 可以使用的LCD 驅動源碼 ...LCD2_driver
?? OBJ
?? 第 1 頁 / 共 3 頁
字號:
dco @b:b u:1  ret
dtx ; end of function lcd_clear
dtx ; used: R01234567 BR01234567 DPTR ACC PSW B
dtx 
dtx  .export _lcd_cursor ; void lcd_cursor(unsigned char)
dtx  .hide
dtx  .show
dtx 
dtx  .segment __lcd_cursor
dtx _lcd_cursor: ; void lcd_cursor(unsigned char)
dtx  ; parameter 'cur' in 'R7'
dhl }
dhl 
dhl /******************** lcd_cursor() ****************/
dhl void lcd_cursor(uchar cur){
dco @e:0 u:2  mov A,#12
dco @e:2 u:1  add A,R7
dco @e:3 u:1  mov R7,A
dco @e:4 u:3  lcall _lcd_combyte
dco @e:7 u:1  ret
dtx ; end of function lcd_cursor
dtx ; used: R01234567 BR01234567 DPTR ACC PSW B
dtx 
dtx  .export _lcd_init ; unsigned char lcd_init(void)
dtx  .hide
dtx  .show
dtx 
dtx  .segment __lcd_init
dtx _lcd_init: ; unsigned char lcd_init(void)
dhl         lcd_combyte(cur+12);
dhl }
dhl 
dhl /******************** lcd_init() *****************/
dhl uchar lcd_init(void){           /* Return 1: ERROR, 0: OK */
dco @12:0 u:3  lcall _lcd_initport
dco @12:3 u:1  mov A,R7
dco @12:4 u:2  jz ?43
dhl 
dhl         if(lcd_initport()) return 1; // Failed: NO DISPLAY?
dco @12:6 u:2  mov R7,#1
dco @12:8 u:2  sjmp ?42
dtx ?43:
dhl 
dhl         /* Now visible initialisation */
dhl         lcd_combyte(15);        /* Display ON, Cursor on & blink */
dco @12:a u:2  mov R7,#15
dco @12:c u:3  lcall _lcd_combyte
dhl         lcd_clear();
dco @12:f u:3  lcall _lcd_clear
dhl         lcd_cursor(LCD_CURSOR_BLINK);
dco @12:12 u:2  mov R7,#3
dco @12:14 u:3  lcall _lcd_cursor
dhl         lcd_combyte(6);         /* Entry-Mode: Cursor Shift Right */
dco @12:17 u:2  mov R7,#6
dco @12:19 u:3  lcall _lcd_combyte
dhl         lcd_cgchars(segment2); /* Required for LARGE 7-SEGMENT DIGITS */
dco @12:1c u:2  mov R6,#((_segment2)>>8)&255
dco @12:1e u:2  mov R7,#(_segment2)&255
dco @12:20 u:2  mov R4,#COS
dco @12:22 u:3  lcall _lcd_cgchars
dhl         return 0;               /* OK */
dco @12:25 u:1  clr A
dco @12:26 u:1  mov R7,A
dtx ?42:
dco @12:27 u:1  ret
dtx ; end of function lcd_init
dtx ; used: R01234567 BR01234567 DPTR ACC PSW B
dtx 
dtx  .hide
dtx  .show
dtx 
dtx  .segment __lcd_digit2
dtx _lcd_digit2: ; void lcd_digit2(unsigned char) reentrant
dco @13:0 u:2  push _local_near+0
dco @13:2 u:2  push _local_near+1
dco @13:4 u:2  push _local_near+2
dtx  ; parameter 'dig' in 'R7'
dhl }
dhl 
dhl /**************** print a large DIGIT 2 Lines. Must be in LINE >0! ************/
dhl static void lcd_digit2(uchar dig) reentrant{
dco @13:6 u:1  mov A,R7
dco @13:7 u:1  add A,R7
dco @13:8 u:2  add A,ACC
dco @13:a u:1  mov R7,A
dtx  ; variable 'dig' assigned to register 'R7'
dhl         uchar x,y;
dhl         dig*=4;
dhl         lcd_putc(dig2_tab[dig++]);
dco @13:b u:2  mov R5,AR7
dco @13:d u:2  mov R7,AR5
dco @13:f u:1  inc R7
dtx  ; variable 'dig' allocated as 'auto'
dco @13:10 u:2  mov ?i47,R7
dco @13:12 u:2  mov R4,#0
dco @13:14 u:2  mov R6,#((_dig2_tab)>>8)&255
dco @13:16 u:2  mov R7,#(_dig2_tab)&255
dco @13:18 u:1  mov A,R7
dco @13:19 u:1  add A,R5
dco @13:1a u:1  mov R7,A
dco @13:1b u:1  mov A,R6
dco @13:1c u:1  addc A,R4
dco @13:1d u:1  mov R6,A
dco @13:1e u:3  mov DPH,AR6
dco @13:21 u:3  mov DPL,AR7
dco @13:24 u:1  clr A
dco @13:25 u:1  movc A,@A+DPTR
dco @13:26 u:1  mov R7,A
dco @13:27 u:3  lcall _lcd_putc
dtx  ; variable 'x' allocated as 'auto'
dhl         x=lcd_pos_x;    // Take after 1.st char, might be after NL..
dco @13:2a u:3  mov ?lcd_digit2_x,_lcd_pos_x
dtx  ; variable 'y' allocated as 'auto'
dhl         y=lcd_pos_y;
dco @13:2d u:3  mov ?lcd_digit2_y,_lcd_pos_y
dhl         lcd_putc(dig2_tab[dig++]);
dco @13:30 u:2  mov R5,?i47
dco @13:32 u:2  mov R7,AR5
dco @13:34 u:1  inc R7
dtx  ; variable 'dig' allocated as 'auto'
dco @13:35 u:2  mov ?i48,R7
dco @13:37 u:2  mov R4,#0
dco @13:39 u:2  mov R6,#((_dig2_tab)>>8)&255
dco @13:3b u:2  mov R7,#(_dig2_tab)&255
dco @13:3d u:1  mov A,R7
dco @13:3e u:1  add A,R5
dco @13:3f u:1  mov R7,A
dco @13:40 u:1  mov A,R6
dco @13:41 u:1  addc A,R4
dco @13:42 u:1  mov R6,A
dco @13:43 u:3  mov DPH,AR6
dco @13:46 u:3  mov DPL,AR7
dco @13:49 u:1  clr A
dco @13:4a u:1  movc A,@A+DPTR
dco @13:4b u:1  mov R7,A
dco @13:4c u:3  lcall _lcd_putc
dhl         lcd_gotoxy(x-1,y-1);
dco @13:4f u:2  mov R7,?lcd_digit2_y
dco @13:51 u:2  mov R5,AR7
dco @13:53 u:1  dec R5
dco @13:54 u:2  mov R7,?lcd_digit2_x
dco @13:56 u:1  dec R7
dco @13:57 u:3  lcall _lcd_gotoxy
dhl         lcd_putc(dig2_tab[dig++]);
dco @13:5a u:2  mov R5,?i48
dco @13:5c u:2  mov R7,AR5
dco @13:5e u:1  inc R7
dtx  ; variable 'dig' allocated as 'auto'
dco @13:5f u:2  mov ?i49,R7
dco @13:61 u:2  mov R4,#0
dco @13:63 u:2  mov R6,#((_dig2_tab)>>8)&255
dco @13:65 u:2  mov R7,#(_dig2_tab)&255
dco @13:67 u:1  mov A,R7
dco @13:68 u:1  add A,R5
dco @13:69 u:1  mov R7,A
dco @13:6a u:1  mov A,R6
dco @13:6b u:1  addc A,R4
dco @13:6c u:1  mov R6,A
dco @13:6d u:3  mov DPH,AR6
dco @13:70 u:3  mov DPL,AR7
dco @13:73 u:1  clr A
dco @13:74 u:1  movc A,@A+DPTR
dco @13:75 u:1  mov R7,A
dco @13:76 u:3  lcall _lcd_putc
dhl         lcd_putc(dig2_tab[dig]);
dco @13:79 u:2  mov R7,?i49
dco @13:7b u:2  mov R5,AR7
dco @13:7d u:2  mov R4,#0
dco @13:7f u:2  mov R6,#((_dig2_tab)>>8)&255
dco @13:81 u:2  mov R7,#(_dig2_tab)&255
dco @13:83 u:1  mov A,R7
dco @13:84 u:1  add A,R5
dco @13:85 u:1  mov R7,A
dco @13:86 u:1  mov A,R6
dco @13:87 u:1  addc A,R4
dco @13:88 u:1  mov R6,A
dco @13:89 u:3  mov DPH,AR6
dco @13:8c u:3  mov DPL,AR7
dco @13:8f u:1  clr A
dco @13:90 u:1  movc A,@A+DPTR
dco @13:91 u:1  mov R7,A
dco @13:92 u:3  lcall _lcd_putc
dhl         lcd_gotoxy(x+1,y);
dco @13:95 u:2  mov R5,?lcd_digit2_y
dco @13:97 u:2  mov R7,?lcd_digit2_x
dco @13:99 u:1  inc R7
dco @13:9a u:3  lcall _lcd_gotoxy
dco @13:9d u:2  pop _local_near+2
dco @13:9f u:2  pop _local_near+1
dco @13:a1 u:2  pop _local_near+0
dco @13:a3 u:1  ret
dtx ; end of function lcd_digit2
dtx ; used: R01234567 BR01234567 DPTR ACC PSW B locals:3 bytes
dtx 
dtx  .export _lcd_printf ; int lcd_printf(far char *, ...)
dtx  .hide
dtx  .show
dtx 
dtx  .segment __lcd_printf
dtx _lcd_printf: ; int lcd_printf(far char *, ...)
dtx  ; parameter 'pfmt' in 'RL4567'
dhl 
dhl }
dhl 
dhl /************** lcd_printf() ********************/
dhl int lcd_printf(far char* pfmt, ...){
dco @17:0 u:3  mov __doprnt_formal_near,#?_lcd_printf_va_start
dco @17:3 u:3  lcall __movel_4_0
dco @17:6 u:2  mov R6,#((_lcd_putc)>>8)&255
dco @17:8 u:2  mov R7,#(_lcd_putc)&255
dco @17:a u:3  lcall __doprnt
dco @17:d u:1  ret
dtx ; end of function lcd_printf
dtx ; used: R01234567 BR01234567 DPTR ACC PSW B
dtx 
dtx  .export _lcd_d2_putc ; void lcd_d2_putc(unsigned char) reentrant
dtx  .hide
dtx  .show
dtx 
dtx  .segment __lcd_d2_putc
dtx _lcd_d2_putc: ; void lcd_d2_putc(unsigned char) reentrant
dco @18:0 u:2  push _local_near+0
dtx  ; parameter 'date' in 'R7' moved and assigned to local '?lcd_d2_putc_date'
dco @18:2 u:2  mov ?lcd_d2_putc_date,R7
dhl         va_list(ap);
dhl         va_start(ap,pfmt);
dhl         return _doprnt(lcd_putc, pfmt, ap);
dhl }
dhl 
dhl /***************************************************** 
dhl * lcd_d2_putc(): send datebyte. If digit: print large!
dhl *****************************************************/
dhl void lcd_d2_putc(uchar date) reentrant{
dco @18:4 u:2  mov R5,#48
dco @18:6 u:2  mov R7,?lcd_d2_putc_date
dco @18:8 u:1  clr C
dco @18:9 u:1  mov A,R7
dco @18:a u:1  subb A,R5
dco @18:b u:2  jc ?52
dco @18:d u:2  mov R5,#57
dco @18:f u:2  mov R7,?lcd_d2_putc_date
dco @18:11 u:1  setb C
dco @18:12 u:1  mov A,R7
dco @18:13 u:1  subb A,R5
dco @18:14 u:2  jnc ?52
dhl         if(date>='0' && date<='9'){
dco @18:16 u:2  mov R7,?lcd_d2_putc_date
dco @18:18 u:2  mov A,#208
dco @18:1a u:1  add A,R7
dco @18:1b u:1  mov R7,A
dco @18:1c u:3  lcall _lcd_digit2
dhl                 lcd_digit2(date-'0');           
dhl         }else if(date==' '){
dco @18:1f u:2  sjmp ?53
dtx ?52:
dtx 
dco @18:21 u:2  mov A,#32
dco @18:23 u:2  xrl A,?lcd_d2_putc_date
dco @18:25 u:2  jnz ?54
dtx 
dco @18:27 u:2  mov R7,#10
dco @18:29 u:3  lcall _lcd_digit2
dhl                 lcd_digit2(10);
dhl         }else if(date=='-'){
dco @18:2c u:2  sjmp ?55
dtx ?54:
dtx 
dco @18:2e u:2  mov A,#45
dco @18:30 u:2  xrl A,?lcd_d2_putc_date
dco @18:32 u:2  jnz ?56
dtx 
dco @18:34 u:2  mov R7,#11
dco @18:36 u:3  lcall _lcd_digit2
dhl                 lcd_digit2(11);
dhl         }else{
dco @18:39 u:2  sjmp ?57
dtx ?56:
dtx 
dco @18:3b u:2  mov R7,?lcd_d2_putc_date
dco @18:3d u:3  lcall _lcd_putc
dhl                 lcd_putc(date);
dhl                 lcd_gotoxy(lcd_pos_x-1,lcd_pos_y-1);
dco @18:40 u:2  mov R7,_lcd_pos_y
dco @18:42 u:2  mov R5,AR7
dco @18:44 u:1  dec R5
dco @18:45 u:2  mov R7,_lcd_pos_x
dco @18:47 u:1  dec R7
dco @18:48 u:3  lcall _lcd_gotoxy
dhl                 lcd_putc(' ');
dco @18:4b u:2  mov R7,#32
dco @18:4d u:3  lcall _lcd_putc
dhl                 lcd_gotoxy(lcd_pos_x,lcd_pos_y+1);
dco @18:50 u:2  mov R7,_lcd_pos_y
dco @18:52 u:2  mov R5,AR7
dco @18:54 u:1  inc R5
dco @18:55 u:2  mov R7,_lcd_pos_x
dco @18:57 u:3  lcall _lcd_gotoxy
dhl         }
dtx ?57:
dtx ?55:
dtx ?53:
dco @18:5a u:2  pop _local_near+0
dco @18:5c u:1  ret
dtx ; end of function lcd_d2_putc
dtx ; used: R01234567 BR01234567 DPTR ACC PSW B locals:1 bytes
dtx 
dtx  .export _lcd_d2_printf ; int lcd_d2_printf(far char *, ...)
dtx  .hide
dtx  .show
dtx 
dtx  .segment __lcd_d2_printf
dtx _lcd_d2_printf: ; int lcd_d2_printf(far char *, ...)
dtx  ; parameter 'pfmt' in 'RL4567'
dhl }
dhl 
dhl 
dhl /************** lcd_d2_printf() ********************/
dhl int lcd_d2_printf(far char* pfmt, ...){
dco @1b:0 u:3  mov __doprnt_formal_near,#?_lcd_d2_printf_va_start
dco @1b:3 u:3  lcall __movel_4_0
dco @1b:6 u:2  mov R6,#((_lcd_d2_putc)>>8)&255
dco @1b:8 u:2  mov R7,#(_lcd_d2_putc)&255
dco @1b:a u:3  lcall __doprnt
dco @1b:d u:1  ret
dtx ; end of function lcd_d2_printf
dtx ; used: R01234567 BR01234567 DPTR ACC PSW B
dtx 
dtx  .segment nearbss, sclass dram, notext
dtx _lcd_pos_y: ; near signed char lcd_pos_y
dco @1c:0 u:1  .ds.b 1
dtx _lcd_pos_x: ; near signed char lcd_pos_x
dco @1c:1 u:1  .ds.b 1
dtx  .import __doprnt ; int _doprnt(void (*)(unsigned char) reentrant, far char *, near char *)
dtx  .import _lcd_initport ; unsigned char lcd_initport(void)
dtx  .import _lcd_combyte ; void lcd_combyte(unsigned char) reentrant
dtx  .import _lcd_databyte ; void lcd_databyte(unsigned char) reentrant
dtx  .import __va_start ; near char _va_start
dtx  .end
dhl         va_list(ap);
dhl         va_start(ap,pfmt);
dhl         return _doprnt(lcd_d2_putc, pfmt, ap);
dhl }
dhl 
dhl 
dhl  // EOF
def:_lcd_cursor @e:0
def:_lcd_cgchars @8:0
def:_lcd_d2_putc @18:0
def:_segment2 @5:0
def:_lcd_clear @b:0
def:_lcd_printf @17:0
def:_lcd_putc @4:0
def:_lcd_d2_printf @1b:0
def:_lcd_gotoxy @3:0
def:_lcd_init @12:0
def:_lcd_pos_x @1c:1
def:_lcd_pos_y @1c:0
def:_lcd_setxy @2:0
def:_lcd_digit2 @13:0
def:_dig2_tab @5:40
objectend

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美亚洲综合色| 在线中文字幕一区二区| 久久成人免费网站| 偷窥少妇高潮呻吟av久久免费| 一区二区在线免费观看| 亚洲欧美激情小说另类| 亚洲欧洲日韩女同| 《视频一区视频二区| 亚洲三级免费观看| 洋洋成人永久网站入口| 亚洲伊人伊色伊影伊综合网| 亚洲一区二区在线观看视频| 亚洲一区二区三区四区不卡| 一区二区三区欧美日韩| 亚洲国产精品一区二区久久 | 国产三级一区二区| 久久精品亚洲精品国产欧美kt∨| 久久久午夜精品| 欧美—级在线免费片| 日韩毛片一二三区| 亚洲午夜成aⅴ人片| 秋霞成人午夜伦在线观看| 经典一区二区三区| 成人午夜精品在线| 色美美综合视频| 56国语精品自产拍在线观看| 欧美www视频| 国产精品久久久久影院| 夜色激情一区二区| 麻豆精品在线观看| 不卡av电影在线播放| 在线免费不卡电影| 在线播放一区二区三区| 久久久久久免费| 亚洲青青青在线视频| 日日骚欧美日韩| 国产麻豆精品久久一二三| 99久久99久久免费精品蜜臀| 欧美三级欧美一级| 2023国产精品视频| 亚洲欧美日韩国产一区二区三区 | 亚洲成人久久影院| 国产一区二区在线观看免费 | 久久日韩粉嫩一区二区三区| 亚洲图片欧美激情| 日韩在线一区二区| 国产成人午夜高潮毛片| 欧美影视一区在线| 久久久噜噜噜久噜久久综合| 亚洲人成网站在线| 久久国内精品自在自线400部| 91婷婷韩国欧美一区二区| 欧美一级日韩免费不卡| 中文在线免费一区三区高中清不卡| 亚洲一区二区在线视频| 国产黑丝在线一区二区三区| 欧美做爰猛烈大尺度电影无法无天| 日韩精品一区二区三区中文不卡| 国产精品不卡在线观看| 热久久免费视频| 91首页免费视频| 欧美zozo另类异族| 亚洲国产精品嫩草影院| 丁香婷婷综合色啪| 日韩一区和二区| 一区二区三区四区高清精品免费观看 | 国产视频一区不卡| 青草av.久久免费一区| 色狠狠综合天天综合综合| 久久午夜羞羞影院免费观看| 午夜欧美一区二区三区在线播放| gogo大胆日本视频一区| 欧美美女一区二区三区| 国产精品动漫网站| 国产在线播放一区三区四| 欧美日韩一卡二卡| 国产精品区一区二区三| 久久99精品国产麻豆婷婷| 欧美午夜一区二区三区| 亚洲欧洲性图库| 成人午夜电影久久影院| 亚洲精品一线二线三线无人区| 亚洲一区二区三区在线| 99久久婷婷国产综合精品| 久久久久成人黄色影片| 秋霞午夜鲁丝一区二区老狼| 欧美日韩国产在线播放网站| 一区二区三区在线观看视频| 成人午夜在线视频| 久久久99久久精品欧美| 蜜桃久久av一区| 777xxx欧美| 偷拍一区二区三区| 6080yy午夜一二三区久久| 亚洲国产一区二区在线播放| 91久久免费观看| 又紧又大又爽精品一区二区| av在线一区二区三区| 国产精品超碰97尤物18| 99久久精品免费| 国产精品你懂的在线欣赏| 国产黄色成人av| 日本一区二区三区视频视频| 国产成人无遮挡在线视频| 国产亚洲综合在线| 国产成人免费视频网站高清观看视频| 欧美成人女星排名| 久久精品99国产精品| 精品美女一区二区| 韩国一区二区三区| 久久免费视频色| 国产成人在线免费观看| 欧美韩国一区二区| www.色精品| 亚洲精品国产一区二区三区四区在线| 一本久道久久综合中文字幕| 一区二区欧美精品| 欧美人与z0zoxxxx视频| 热久久国产精品| 久久久久久电影| av电影在线观看不卡| 亚洲欧美视频一区| 欧美日韩在线电影| 麻豆精品新av中文字幕| 国产拍揄自揄精品视频麻豆| proumb性欧美在线观看| 亚洲成年人网站在线观看| 欧美肥妇bbw| 国内外成人在线| 国产精品视频一区二区三区不卡| 91色.com| 免费观看一级特黄欧美大片| 精品国产凹凸成av人导航| 成人蜜臀av电影| 亚洲男人都懂的| 欧美久久久久中文字幕| 狠狠色狠狠色合久久伊人| 亚洲欧洲三级电影| 欧美精品在线视频| 国产精品综合av一区二区国产馆| 国产精品水嫩水嫩| 欧美日韩一区视频| 国产一区二三区好的| 亚洲精品乱码久久久久久 | 亚洲视频在线一区二区| 欧美日韩高清一区二区三区| 国产一区二区按摩在线观看| 亚洲欧美偷拍三级| 日韩精品一区二区三区四区 | 欧美精品一区视频| 99精品国产一区二区三区不卡| 一区二区三区高清| 亚洲精品一线二线三线| 在线观看亚洲精品| 极品尤物av久久免费看| 一区二区三区在线视频免费观看| 欧美高清视频一二三区| 国产精品香蕉一区二区三区| 亚洲国产欧美在线| 国产欧美一区二区精品婷婷| 欧美三级日本三级少妇99| 高清不卡一区二区| 日韩av在线发布| 亚洲免费观看高清完整版在线| 欧美成人a在线| 91国偷自产一区二区三区观看 | av福利精品导航| 精品一区二区三区蜜桃| 亚洲国产精品一区二区久久恐怖片| 国产亚洲人成网站| 91 com成人网| 色哟哟一区二区| 国产成人免费视频网站高清观看视频| 五月婷婷综合在线| 亚洲情趣在线观看| 国产精品污污网站在线观看| 精品欧美黑人一区二区三区| 欧美日韩一区二区欧美激情| 99久久精品情趣| 国产精品1024久久| 麻豆精品国产传媒mv男同| 亚洲国产毛片aaaaa无费看| 一区视频在线播放| 中文字幕va一区二区三区| 精品国一区二区三区| 欧美精品在线视频| 欧美午夜精品一区二区蜜桃| 99精品偷自拍| 丁香婷婷综合网| 国产盗摄一区二区三区| 久久精品国产亚洲高清剧情介绍| 亚洲一区成人在线| 亚洲欧美经典视频| 亚洲视频一区二区在线| 国产精品乱人伦一区二区| 久久久精品免费网站| 精品国精品自拍自在线| 精品国产99国产精品| 精品免费视频.| 欧美成人一区二区|