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

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

?? lcd.s

?? avr mega16 驅動lcd1602顯示屏
?? S
字號:
	.module lcd.c
	.area text(rom, con, rel)
	.dbfile C:\bak\YM200\lcd1602\lcd.c
	.dbfunc e delay _delay fV
;             dk -> R16,R17
	.even
_delay::
	.dbline -1
	.dbline 19
; #include <iom16v.h>
; #include <macros.h> 
; #define LCD_RS   (1 << 4)
; #define LCD_RW   (1 << 5)
; #define LCD_E    (1 << 7)
; #define set_e()  (PORTD |= LCD_E)
; #define set_rs() (PORTD |= LCD_RS)
; #define set_rw() (PORTD |= LCD_RW)
; #define clr_e()  (PORTD &= ~LCD_E)
; #define clr_rs() (PORTD &= ~LCD_RS)
; #define clr_rw() (PORTD &= ~LCD_RW)
;   
; /*-----------------------------------------------------------
; delay       :短延時函數
; 輸入參數 x  :粗略延時,x越大,延時越長
; 輸出參數    :無
; ------------------------------------------------------------*/
; void delay(unsigned int dk)
; {
L2:
	.dbline 20
L3:
	.dbline 20
;   while(dk--);
	movw R2,R16
	subi R16,1
	sbci R17,0
	tst R2
	brne L2
	tst R3
	brne L2
X0:
	.dbline -2
L1:
	.dbline 0 ; func end
	ret
	.dbsym r dk 16 i
	.dbend
	.dbfunc e lcdwait _lcdwait fV
	.even
_lcdwait::
	.dbline -1
	.dbline 29
;  }
; 
; /*------------------------------------------------------------
; lcdwait   :液晶延時函數
; 輸入參數  :無
; 輸出參數  :無
; --------------------------------------------------------------*/
; void lcdwait(void)
; {
	.dbline 30
;   delay(600);
	ldi R16,600
	ldi R17,2
	xcall _delay
	.dbline -2
L5:
	.dbline 0 ; func end
	ret
	.dbend
	.dbfunc e lcdpulse _lcdpulse fV
	.even
_lcdpulse::
	.dbline -1
	.dbline 38
;  }
; /*-----------------------------------------------------------
; lcdpulse   :脈沖函數,把數據寫入1602液晶
; 輸入參數   :無
; 輸出參數   :無
; ---------------------------------------------------------------*/
; void lcdpulse(void)
; {
	.dbline 39
;   set_e();
	sbi 0x12,7
	.dbline 40
;   clr_e();
	cbi 0x12,7
	.dbline -2
L6:
	.dbline 0 ; func end
	ret
	.dbend
	.dbfunc e lcdsend _lcdsend fV
;           data -> R20
	.even
_lcdsend::
	xcall push_gset1
	mov R20,R16
	.dbline -1
	.dbline 49
;  }
; 
; /*----------------------------------------------------------------
; lcdsend       :發送一字節數據函數
; 輸入參數 data :要發送字節數據
; 輸出參數      :無
; ------------------------------------------------------------------*/
; void lcdsend(unsigned char data)
; {
	.dbline 50
;   lcdwait();
	xcall _lcdwait
	.dbline 51
;   PORTB=data;
	out 0x18,R20
	.dbline 52
;   lcdpulse();
	xcall _lcdpulse
	.dbline -2
L7:
	xcall pop_gset1
	.dbline 0 ; func end
	ret
	.dbsym r data 20 c
	.dbend
	.dbfunc e wcom _wcom fV
;            com -> R20
	.even
_wcom::
	xcall push_gset1
	mov R20,R16
	.dbline -1
	.dbline 60
;  }
; /*------------------------------------------------------------------
; wcom          :寫一字節控制字函數
; 輸入參數 com  :要寫入控制字
; 輸出參數      :無
; -----------------------------------------------------------------*/
; void wcom(unsigned char com)
; {
	.dbline 61
;   clr_rs();
	cbi 0x12,4
	.dbline 62
;   clr_rw();
	cbi 0x12,5
	.dbline 63
;   lcdsend(com);
	mov R16,R20
	xcall _lcdsend
	.dbline 64
;   lcdwait();
	xcall _lcdwait
	.dbline -2
L8:
	xcall pop_gset1
	.dbline 0 ; func end
	ret
	.dbsym r com 20 c
	.dbend
	.dbfunc e wdat _wdat fV
;            dat -> R20
	.even
_wdat::
	xcall push_gset1
	mov R20,R16
	.dbline -1
	.dbline 73
;  }
; 
; /*--------------------------------------------------------------
; wdat          :顯示一字節函數
; 輸入參數 com  :要顯示字符ASCⅡ碼
; 輸出參數      :無
; ----------------------------------------------------------------*/
; void wdat(unsigned char dat)
; {
	.dbline 74
;   set_rs();
	sbi 0x12,4
	.dbline 75
;   clr_rw();
	cbi 0x12,5
	.dbline 76
;   lcdsend(dat);
	mov R16,R20
	xcall _lcdsend
	.dbline 77
;   lcdwait();
	xcall _lcdwait
	.dbline -2
L9:
	xcall pop_gset1
	.dbline 0 ; func end
	ret
	.dbsym r dat 20 c
	.dbend
	.dbfunc e LCM1602Reset _LCM1602Reset fV
	.even
_LCM1602Reset::
	.dbline -1
	.dbline 85
;  }
; /*------------------------------------------------------------------
; LCM1602Reset  :LCM1602復位
; 輸入參數      :無
; 輸出參數      :無
; ------------------------------------------------------------------*/
; void LCM1602Reset(void)
; {
	.dbline 86
;   delay(65000);
	ldi R16,65000
	ldi R17,253
	xcall _delay
	.dbline 87
;   wcom(0x38);
	ldi R16,56
	xcall _wcom
	.dbline 88
;   delay(5000);
	ldi R16,5000
	ldi R17,19
	xcall _delay
	.dbline 89
;   wcom(0x38);
	ldi R16,56
	xcall _wcom
	.dbline 90
;   delay(5000);
	ldi R16,5000
	ldi R17,19
	xcall _delay
	.dbline 91
;   wcom(0x38);
	ldi R16,56
	xcall _wcom
	.dbline 92
;   delay(5000);
	ldi R16,5000
	ldi R17,19
	xcall _delay
	.dbline 93
;   wcom(0x38);
	ldi R16,56
	xcall _wcom
	.dbline -2
L10:
	.dbline 0 ; func end
	ret
	.dbend
	.dbfunc e lcdinit _lcdinit fV
	.even
_lcdinit::
	.dbline -1
	.dbline 102
;  }
; 
; /*------------------------------------------------------------------
; lcdinit       :LCM1602初始化
; 輸入參數      :無
; 輸出參數      :無
; -------------------------------------------------------------------*/
; void lcdinit(void)
; {
	.dbline 103
;   wcom(0x01);           //清屏
	ldi R16,1
	xcall _wcom
	.dbline 104
;   wcom(0x3c);           //顯示開關控制:8bit,2行顯示,5x7
	ldi R16,60
	xcall _wcom
	.dbline 105
;   wcom(0x0c);           //光標開,閃爍關
	ldi R16,12
	xcall _wcom
	.dbline 106
;   wcom(0x06);           //輸入方式,增量方式,不移動
	ldi R16,6
	xcall _wcom
	.dbline -2
L11:
	.dbline 0 ; func end
	ret
	.dbend
	.dbfunc e disp_string _disp_string fV
;           data -> R20,R21
	.even
_disp_string::
	xcall push_gset1
	movw R20,R16
	.dbline -1
	.dbline 115
;  }
; 
; /*-----------------------------------------------------------------
; disp_string   :顯示一字符串函數
; 輸入參數 data :字符串指針
; 輸出參數      :無
; ------------------------------------------------------------------*/
; void disp_string( unsigned char *data )
; {
	xjmp L14
L13:
	.dbline 116
	.dbline 116
	movw R30,R20
	ldd R16,z+0
	xcall _wdat
	.dbline 116
	subi R20,255  ; offset = 1
	sbci R21,255
	.dbline 116
L14:
	.dbline 116
;   while(*data!=0) {wdat(*data);data++;}
	movw R30,R20
	ldd R2,z+0
	tst R2
	brne L13
	.dbline -2
L12:
	xcall pop_gset1
	.dbline 0 ; func end
	ret
	.dbsym r data 20 pc
	.dbend
	.dbfunc e main _main fV
	.even
_main::
	.dbline -1
	.dbline 128
;  }
; 
;                                            //設置顯示坐標:X 0~39,Y:0~1
; #define setxy(x,y) wcom(((x)|((y)<<6))|0x80) 
; 
; /*--------------------------------------------------------------
; main       :主函數
; 輸入參數   :無
; 輸出參數   :無
; --------------------------------------------------------------*/
; void main()
; {
	.dbline 129
;   DDRD=0xff;
	ldi R24,255
	out 0x11,R24
	.dbline 130
;   DDRB=0xff;
	out 0x17,R24
	.dbline 131
;   LCM1602Reset();
	xcall _LCM1602Reset
	.dbline 132
;   lcdinit();
	xcall _lcdinit
	.dbline 133
;   setxy(0,0);
	ldi R16,128
	xcall _wcom
	.dbline 134
;   disp_string("Easy Learning..");
	ldi R16,<L17
	ldi R17,>L17
	xcall _disp_string
	.dbline 135
;   setxy(2,1);
	ldi R16,194
	xcall _wcom
	.dbline 136
;   disp_string("Avr Studio! ");
	ldi R16,<L18
	ldi R17,>L18
	xcall _disp_string
	xjmp L20
L19:
	.dbline 139
	.dbline 140
	ldi R16,8
	xcall _wcom
	.dbline 141
	ldi R16,65000
	ldi R17,253
	xcall _delay
	.dbline 142
	ldi R16,65000
	ldi R17,253
	xcall _delay
	.dbline 143
	ldi R16,65000
	ldi R17,253
	xcall _delay
	.dbline 144
	ldi R16,65000
	ldi R17,253
	xcall _delay
	.dbline 145
	ldi R16,65000
	ldi R17,253
	xcall _delay
	.dbline 146
	ldi R16,65000
	ldi R17,253
	xcall _delay
	.dbline 147
	ldi R16,65000
	ldi R17,253
	xcall _delay
	.dbline 148
	ldi R16,65000
	ldi R17,253
	xcall _delay
	.dbline 150
	ldi R16,12
	xcall _wcom
	.dbline 151
	ldi R16,65000
	ldi R17,253
	xcall _delay
	.dbline 152
	ldi R16,65000
	ldi R17,253
	xcall _delay
	.dbline 153
	ldi R16,65000
	ldi R17,253
	xcall _delay
	.dbline 154
	ldi R16,65000
	ldi R17,253
	xcall _delay
	.dbline 155
	ldi R16,65000
	ldi R17,253
	xcall _delay
	.dbline 156
	ldi R16,65000
	ldi R17,253
	xcall _delay
	.dbline 157
	ldi R16,65000
	ldi R17,253
	xcall _delay
	.dbline 158
L20:
	.dbline 138
	xjmp L19
X1:
	.dbline -2
L16:
	.dbline 0 ; func end
	ret
	.dbend
	.area data(ram, con, rel)
	.dbfile C:\bak\YM200\lcd1602\lcd.c
L18:
	.blkb 13
	.area idata
	.byte 'A,'v,'r,32,'S,'t,'u,'d,'i,'o,33,32,0
	.area data(ram, con, rel)
	.dbfile C:\bak\YM200\lcd1602\lcd.c
L17:
	.blkb 16
	.area idata
	.byte 'E,'a,'s,'y,32,'L,'e,'a,'r,'n,'i,'n,'g,46,46,0
	.area data(ram, con, rel)
	.dbfile C:\bak\YM200\lcd1602\lcd.c

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品国产欧美一区二区| 亚洲男同性视频| 亚洲午夜在线电影| 9久草视频在线视频精品| 久久亚洲春色中文字幕久久久| 亚洲综合一区二区三区| 99久久婷婷国产| 国产精品亲子乱子伦xxxx裸| 国产一区二区在线视频| 欧美电影免费提供在线观看| 日韩国产一区二| 6080午夜不卡| 日韩av二区在线播放| 91精品啪在线观看国产60岁| 亚洲成av人**亚洲成av**| 欧美日韩中文一区| 亚洲123区在线观看| 欧美丰满少妇xxxxx高潮对白| 亚洲一区二区美女| 欧美福利电影网| 久久99久久99| 国产日韩精品一区二区三区在线| 高清久久久久久| 国产精品美女一区二区| 91香蕉视频黄| 亚洲一本大道在线| 欧美一区在线视频| 久久99精品久久久久久国产越南| 26uuu另类欧美| www.日韩在线| 一区二区三区欧美日韩| 欧美日韩在线直播| 免费精品视频最新在线| 欧美精品一区二区三区久久久| 国产一区二区三区在线观看免费| 国产喷白浆一区二区三区| 成人av在线网站| 亚洲宅男天堂在线观看无病毒| 欧美群妇大交群的观看方式| 美女网站一区二区| 欧美激情综合五月色丁香 | 国产成人综合在线播放| 国产精品进线69影院| 欧美伊人精品成人久久综合97| 国产精品乱子久久久久| 久久久久国产精品麻豆ai换脸| 日韩影院免费视频| 91精品国产一区二区三区香蕉| 日韩视频123| 亚洲午夜三级在线| 欧美精品一区二区三| 欧美精品777| 欧美日韩精品电影| 欧美在线观看视频一区二区三区 | 粗大黑人巨茎大战欧美成人| 琪琪久久久久日韩精品| 午夜亚洲国产au精品一区二区| 综合久久久久久久| 国产精品久久久久久久久免费樱桃 | www国产成人| 精品国产一区二区三区av性色| 欧美日本免费一区二区三区| 在线观看国产一区二区| 91在线观看视频| 99国产精品一区| av在线不卡网| 色综合天天天天做夜夜夜夜做| 成人av中文字幕| 97精品视频在线观看自产线路二| www.亚洲精品| 99久久久久免费精品国产| 国产成人在线视频网站| 国产成人久久精品77777最新版本| 极品少妇xxxx偷拍精品少妇| 精东粉嫩av免费一区二区三区| 久久精品国产一区二区| 激情国产一区二区| 国产成人免费视| 国产91露脸合集magnet| 成人性生交大合| 91影视在线播放| 欧美亚洲动漫另类| 欧美日韩高清一区二区| 欧美日韩综合在线| 日韩一区二区不卡| 精品国产乱码久久久久久老虎| 欧美变态tickle挠乳网站| 久久久99精品免费观看| 久久久无码精品亚洲日韩按摩| 久久精品一区蜜桃臀影院| 国产欧美一区二区三区沐欲| 亚洲国产精品精华液ab| 日韩理论片网站| 亚洲国产视频a| 日日欢夜夜爽一区| 日韩精品免费视频人成| 久久精品国产**网站演员| 国产精品综合网| 国产成人午夜高潮毛片| 色综合久久中文字幕综合网| 欧美狂野另类xxxxoooo| 欧美一级欧美三级| 国产午夜亚洲精品理论片色戒| 国产精品私房写真福利视频| 一区二区三区国产| 午夜国产不卡在线观看视频| 久久精工是国产品牌吗| 成人av在线网站| 欧美精品日韩精品| www亚洲一区| 亚洲精品国产精华液| 视频一区中文字幕国产| 精品无人区卡一卡二卡三乱码免费卡| 国产精品1区2区3区在线观看| 91首页免费视频| 日韩欧美资源站| 国产精品伦理一区二区| 婷婷成人综合网| 久久99国产精品成人| 国产精品综合一区二区| 欧美亚洲免费在线一区| 国产色91在线| 日日摸夜夜添夜夜添亚洲女人| 激情偷乱视频一区二区三区| 91视频精品在这里| 日韩精品一区二区三区中文不卡| 国产精品超碰97尤物18| 日本成人中文字幕在线视频| 不卡一区二区三区四区| 欧美一区二区三区啪啪| 亚洲色图在线看| 免费成人美女在线观看| 91久久精品午夜一区二区| 精品福利在线导航| 一区二区三区在线免费视频| 国产麻豆一精品一av一免费 | 精品日韩一区二区| 一区二区理论电影在线观看| 狠狠久久亚洲欧美| 欧美群妇大交群的观看方式| 亚洲视频电影在线| 国产成人午夜电影网| 欧美一区三区二区| 亚洲激情成人在线| 成人av网址在线| 久久色在线观看| 亚洲成a人v欧美综合天堂 | 亚洲精品在线免费观看视频| 亚洲国产成人高清精品| 91免费看`日韩一区二区| 国产人成一区二区三区影院| 奇米777欧美一区二区| 欧美日韩免费视频| 亚洲精品伦理在线| www.亚洲色图| 国产精品久久网站| 成人h动漫精品| 国产精品九色蝌蚪自拍| 国产91丝袜在线18| 国产欧美日韩综合精品一区二区| 九一九一国产精品| 日韩欧美色综合网站| 日韩在线一区二区三区| 欧美日本国产视频| 午夜精品福利视频网站| 欧美人与性动xxxx| 日韩成人一区二区| 日韩欧美电影一二三| 久久成人精品无人区| 欧美成人一区二区三区片免费| 日韩电影在线观看电影| 欧美一区二区三区四区久久 | 成人的网站免费观看| 久久一区二区三区国产精品| 久久精工是国产品牌吗| 日韩一区二区影院| 免费成人在线视频观看| 精品毛片乱码1区2区3区| 亚洲精品亚洲人成人网| 91首页免费视频| 中文字幕在线观看不卡视频| 欧美精品一区二区久久久| 久久91精品久久久久久秒播 | 蜜臀久久99精品久久久久宅男| 91精品国产综合久久香蕉的特点 | 自拍偷拍欧美精品| 91激情在线视频| 亚洲1区2区3区4区| 欧美va天堂va视频va在线| 国产麻豆精品久久一二三| 中日韩av电影| 91免费小视频| 秋霞电影一区二区| 久久综合九色综合久久久精品综合 | 国产香蕉久久精品综合网| 成人午夜碰碰视频| 亚洲免费观看高清完整版在线观看| 91女神在线视频| 亚洲午夜视频在线观看| 日韩欧美亚洲国产另类 |