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

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? lcd.s

?? 增量式模糊PID控制方法AVR單片機(jī)mega16
?? S
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
	.module LCD.c
	.area text(rom, con, rel)
	.dbfile D:\仿真\增量式模糊控制\LCD.c
	.dbfunc e LCD_INIT _LCD_INIT fV
	.even
_LCD_INIT::
	.dbline -1
	.dbline 52
; // ************************************************
; // *** 采用4位數(shù)據(jù)線的1602液晶驅(qū)動(dòng)程序 ***
; // *** LCD.C ***
; // ************************************************
; #define ENABLE_BIT_DEFINITIONS
; #define LCD_C
; #include "includes.h"
; // ***** Define I/O pins ***** //
; #define BIT7 0x80
; #define BIT6 0x40
; #define BIT5 0x20
; #define BIT4 0x10
; #define BIT3 0x08
; #define BIT2 0x04
; #define BIT1 0x02
; #define BIT0 0x01
; // *** Set port for LCD Data Bus 8 bit mode *** //
; #define LCD_OP_PORT PORTB
; #define LCD_IP_PORT PINB
; #define LCD_DIR_PORT DDRB
; // *** Set LCD Enable Port and Bit values *** //
; //#define LCD_EN LCD_OP_PORT.2
; // *** Set LCD Register Select Port and Bit values *** //
; //#define LCD_RS LCD_OP_PORT.0
; // *** Set LCD Read/Write Port and Bit values *** //
; //#define LCD_RW LCD_OP_PORT.1
; /****************************************************************/
;  
;  #define LCD_EN  (1 << 2)     //引腳定義
;  #define LCD_RS (1 << 0)
;  #define LCD_RW (1 << 1)
;  
;  #define lcd_set_e()  (LCD_OP_PORT |= LCD_EN)   //置位與清零
;  #define lcd_set_rs() (LCD_OP_PORT |= LCD_RS)
;  #define lcd_set_rw() (LCD_OP_PORT |= LCD_RW)
;  #define lcd_clear_e()  (LCD_OP_PORT &= ~LCD_EN)
;  #define lcd_clear_rs() (LCD_OP_PORT &= ~LCD_RS)
;  #define lcd_clear_rw() (LCD_OP_PORT &= ~LCD_RW)
; /****************************************************************/
; 
; #define LCD_ON 0x0C
; #define LCD_CURS_ON 0x0D
; #define LCD_OFF 0x08
; #define LCD_HOME 0x02
; #define LCD_CLEAR 0x01
; #define LCD_NEW_LINE 0xC0
; #define LCD_FUNCTION_SET 0x28
; #define LCD_MODE_SET 0x06
; 
; 
; void LCD_INIT(void)
; {
	.dbline 53
; LCD_DIR_PORT = 0xff; // LCD port output
	ldi R24,255
	out 0x17,R24
	.dbline 54
; LCD_OP_PORT = 0x30; // Load high-data to port
	ldi R24,48
	out 0x18,R24
	.dbline 55
; lcd_clear_rw(); // Set LCD to write
	cbi 0x18,1
	.dbline 56
; lcd_clear_rs(); // Set LCD to command
	cbi 0x18,0
	.dbline 57
; lcd_set_e(); // Write data to LCD
	sbi 0x18,2
	.dbline 58
; asm("nop");
	nop
	.dbline 59
; asm("nop");
	nop
	.dbline 60
; lcd_clear_e(); // Disable LCD
	cbi 0x18,2
	.dbline 61
; delay_nus(40);
	ldi R16,40
	ldi R17,0
	xcall _delay_nus
	.dbline 62
; lcd_clear_rw() ; // Set LCD to write
	cbi 0x18,1
	.dbline 63
; lcd_clear_rs(); // Set LCD to command
	cbi 0x18,0
	.dbline 64
; lcd_set_e(); // Write data to LCD
	sbi 0x18,2
	.dbline 65
; asm("nop");
	nop
	.dbline 66
; asm("nop");
	nop
	.dbline 67
; lcd_clear_e(); // Disable LCD
	cbi 0x18,2
	.dbline 68
; delay_nus(40);
	ldi R16,40
	ldi R17,0
	xcall _delay_nus
	.dbline 69
; lcd_set_e(); // Write data to LCD
	sbi 0x18,2
	.dbline 70
; asm("nop");
	nop
	.dbline 71
; asm("nop");
	nop
	.dbline 72
; lcd_clear_e(); // Disable LCD
	cbi 0x18,2
	.dbline 73
; delay_nus(40);
	ldi R16,40
	ldi R17,0
	xcall _delay_nus
	.dbline 74
; LCD_OP_PORT = 0x20;
	ldi R24,32
	out 0x18,R24
	.dbline 75
; lcd_set_e(); // Write data to LCD
	sbi 0x18,2
	.dbline 76
; asm("nop");
	nop
	.dbline 77
; asm("nop");
	nop
	.dbline 78
; lcd_clear_e(); // Disable LCD
	cbi 0x18,2
	.dbline 79
; delay_nus(40);
	ldi R16,40
	ldi R17,0
	xcall _delay_nus
	.dbline -2
L1:
	.dbline 0 ; func end
	ret
	.dbend
	.dbfunc e LCD_Busy _LCD_Busy fV
;            low -> R20
;           high -> R22
;           temp -> R10
	.even
_LCD_Busy::
	xcall push_gset3
	.dbline -1
	.dbline 85
; }
; //*****************************************************//
; // This routine will return the busy flag from the LCD //
; //*****************************************************//
; void LCD_Busy ( void )
; {
	.dbline 88
; unsigned char temp,high;
; unsigned char low;
; LCD_DIR_PORT = 0x0f; // Make I/O Port input
	ldi R24,15
	out 0x17,R24
L3:
	.dbline 90
; do
; {
	.dbline 91
; temp=LCD_OP_PORT;
	in R10,0x18
	.dbline 92
; temp=temp&BIT3;
	mov R24,R10
	andi R24,8
	mov R10,R24
	.dbline 93
; LCD_OP_PORT=temp;
	out 0x18,R24
	.dbline 94
; lcd_set_rw(); // Set LCD to READ
	sbi 0x18,1
	.dbline 95
; lcd_clear_rs();
	cbi 0x18,0
	.dbline 96
; lcd_set_e();
	sbi 0x18,2
	.dbline 97
; delay_nus(3);
	ldi R16,3
	ldi R17,0
	xcall _delay_nus
	.dbline 98
; high = LCD_IP_PORT; // read the high nibble.
	in R22,0x16
	.dbline 99
; lcd_clear_e(); // Disable LCD
	cbi 0x18,2
	.dbline 100
; lcd_set_e();
	sbi 0x18,2
	.dbline 101
; asm("nop");
	nop
	.dbline 102
; asm("nop");
	nop
	.dbline 103
; low = LCD_IP_PORT; // read the low nibble.
	in R20,0x16
	.dbline 104
; lcd_clear_e(); // Disable LCD
	cbi 0x18,2
	.dbline 105
L4:
	.dbline 105
; } while(high & 0x80);
	sbrc R22,7
	rjmp L3
	.dbline 106
; delay_nus(20);
	ldi R16,20
	ldi R17,0
	xcall _delay_nus
	.dbline -2
L2:
	xcall pop_gset3
	.dbline 0 ; func end
	ret
	.dbsym r low 20 c
	.dbsym r high 22 c
	.dbsym r temp 10 c
	.dbend
	.dbfunc e LCD_WriteControl _LCD_WriteControl fV
;           temp -> R20
;            CMD -> R22
	.even
_LCD_WriteControl::
	xcall push_gset2
	mov R22,R16
	.dbline -1
	.dbline 112
; }
; // ********************************************** //
; // *** Write a control instruction to the LCD *** //
; // ********************************************** //
; void LCD_WriteControl (unsigned char CMD)
; {
	.dbline 114
; char temp;
; LCD_Busy(); // Test if LCD busy
	xcall _LCD_Busy
	.dbline 115
; LCD_DIR_PORT = 0xff; // LCD port output
	ldi R24,255
	out 0x17,R24
	.dbline 116
; temp=LCD_OP_PORT;
	in R20,0x18
	.dbline 117
; temp=temp&BIT3;
	andi R20,8
	.dbline 118
; LCD_OP_PORT =(CMD & 0xf0)|temp; // Load high-data to port
	mov R24,R22
	andi R24,240
	or R24,R20
	out 0x18,R24
	.dbline 119
; lcd_clear_rw(); // Set LCD to write
	cbi 0x18,1
	.dbline 120
; lcd_clear_rs(); // Set LCD to command
	cbi 0x18,0
	.dbline 121
; lcd_set_e(); // Write data to LCD
	sbi 0x18,2
	.dbline 122
; asm("nop");
	nop
	.dbline 123
; asm("nop");
	nop
	.dbline 124
; lcd_clear_e(); // Disable LCD
	cbi 0x18,2
	.dbline 125
; LCD_OP_PORT =(CMD<<4)|temp; // Load low-data to port
	mov R24,R22
	andi R24,#0x0F
	swap R24
	or R24,R20
	out 0x18,R24
	.dbline 126
; lcd_clear_rw(); // Set LCD to write
	cbi 0x18,1
	.dbline 127
; lcd_clear_rs(); // Set LCD to command
	cbi 0x18,0
	.dbline 128
; lcd_set_e(); // Write data to LCD
	sbi 0x18,2
	.dbline 129
; asm("nop");
	nop
	.dbline 130
; asm("nop");
	nop
	.dbline 131
; lcd_clear_e(); // Disable LCD
	cbi 0x18,2
	.dbline -2
L6:
	xcall pop_gset2
	.dbline 0 ; func end
	ret
	.dbsym r temp 20 c
	.dbsym r CMD 22 c
	.dbend
	.dbfunc e LCD_WriteData _LCD_WriteData fV
;           temp -> R20
;           Data -> R22
	.even
_LCD_WriteData::
	xcall push_gset2
	mov R22,R16
	.dbline -1
	.dbline 137
; }
; // ***************************************** //
; // *** Write one byte of data to the LCD *** //
; // ***************************************** //
; void LCD_WriteData (unsigned char Data)
; {
	.dbline 139
; char temp;
; LCD_Busy(); // Test if LCD Busy
	xcall _LCD_Busy
	.dbline 140
; LCD_DIR_PORT = 0xFF; // LCD port output
	ldi R24,255
	out 0x17,R24
	.dbline 141
; temp=LCD_OP_PORT;
	in R20,0x18
	.dbline 142
; temp=temp&BIT3;
	andi R20,8
	.dbline 143
; LCD_OP_PORT =(Data & 0xf0)|temp; // Load high-data to port
	mov R24,R22
	andi R24,240
	or R24,R20
	out 0x18,R24
	.dbline 144
; lcd_clear_rw() ; // Set LCD to write
	cbi 0x18,1
	.dbline 145
; lcd_set_rs(); // Set LCD to data
	sbi 0x18,0
	.dbline 146
; lcd_set_e(); // Write data to LCD
	sbi 0x18,2
	.dbline 147
; asm("nop");
	nop
	.dbline 148
; asm("nop");
	nop
	.dbline 149
; lcd_clear_e(); // Disable LCD
	cbi 0x18,2
	.dbline 150
; LCD_OP_PORT = (Data << 4)|temp; // Load low-data to port
	mov R24,R22
	andi R24,#0x0F
	swap R24
	or R24,R20
	out 0x18,R24
	.dbline 151
; lcd_clear_rw() ; // Set LCD to write
	cbi 0x18,1

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区三区综合| 午夜免费久久看| 国产一级精品在线| www欧美成人18+| 国产一区二区三区久久悠悠色av| 欧美精品一区二区三区蜜桃 | 91在线视频官网| 国产精品传媒入口麻豆| 91在线观看视频| 亚洲一区二区av电影| 在线91免费看| 精品一区二区三区av| 国产精品久久久久久久久免费丝袜 | 久久久久久久久蜜桃| 国产精品 欧美精品| 国产精品另类一区| 欧美在线免费观看亚洲| 天涯成人国产亚洲精品一区av| 欧美一区二区视频免费观看| 国产麻豆一精品一av一免费| 亚洲天天做日日做天天谢日日欢 | 国产最新精品免费| 国产精品私人自拍| 欧美日韩综合在线免费观看| 久久精品噜噜噜成人88aⅴ| 国产欧美一区二区三区网站| 色综合久久中文综合久久牛| 免费精品视频在线| 国产精品午夜久久| 欧美日韩成人综合在线一区二区| 加勒比av一区二区| 亚洲免费观看高清在线观看| 欧美军同video69gay| 成人黄色一级视频| 亚洲综合色在线| 国产婷婷一区二区| 欧美日韩国产bt| 不卡欧美aaaaa| 久久精品国产精品亚洲精品| 亚洲另类中文字| 久久婷婷国产综合精品青草| 欧美特级限制片免费在线观看| 国产成人午夜精品5599| 五月激情综合婷婷| 欧美韩日一区二区三区| 欧美一级高清片| 91福利社在线观看| 丰满少妇在线播放bd日韩电影| 日韩制服丝袜先锋影音| 亚洲精品水蜜桃| 久久久国产精品麻豆| 制服丝袜亚洲色图| 91国模大尺度私拍在线视频| 国产白丝网站精品污在线入口| 蜜臀久久99精品久久久久宅男| 亚洲精品日韩专区silk| 亚洲国产精品成人久久综合一区| 日韩女优制服丝袜电影| 欧美日韩一本到| 91理论电影在线观看| 国产高清无密码一区二区三区| 免费观看在线综合色| 一区二区久久久久| 亚洲女人****多毛耸耸8| 国产欧美日韩视频一区二区| 欧美tickling挠脚心丨vk| 欧美日韩一区二区三区视频| proumb性欧美在线观看| 国产成人午夜电影网| 极品瑜伽女神91| 久久成人av少妇免费| 日韩成人av影视| 午夜一区二区三区在线观看| 亚洲精品国产一区二区三区四区在线| 国产偷v国产偷v亚洲高清| 久久人人超碰精品| 久久亚洲精华国产精华液| 欧美电视剧在线看免费| 欧美成人精品高清在线播放| 51午夜精品国产| 欧美一区二区视频观看视频| 91精品国产一区二区三区 | 欧美中文字幕一区二区三区亚洲| 色综合久久久久| 91久久精品国产91性色tv | 91麻豆精品国产91久久久 | 国产精品一卡二卡在线观看| 国内成人精品2018免费看| 久久99精品久久久久久动态图| 青青草国产成人av片免费| 理论电影国产精品| 久久99国产乱子伦精品免费| 国模一区二区三区白浆| 风流少妇一区二区| av成人老司机| 欧美在线短视频| 在线综合亚洲欧美在线视频| 日韩视频不卡中文| 国产午夜久久久久| 日韩久久一区二区| 午夜久久久影院| 国产在线精品免费| 岛国精品在线观看| 在线看国产一区二区| 91精品国产综合久久久久| 精品国产乱码久久久久久久久| 国产清纯白嫩初高生在线观看91 | 久久久不卡网国产精品二区| 中文字幕一区二区三| 亚洲一区二区在线观看视频 | 国产午夜精品美女毛片视频| 中文字幕一区二区三区四区| 天堂影院一区二区| 国产精品夜夜爽| 91传媒视频在线播放| 日韩欧美成人一区二区| 亚洲欧洲在线观看av| 午夜电影久久久| 国产 欧美在线| 欧美性欧美巨大黑白大战| 精品少妇一区二区三区视频免付费| 日本一区二区三级电影在线观看 | 亚洲美女视频一区| 乱一区二区av| 色8久久人人97超碰香蕉987| 欧美一级日韩一级| 亚洲欧美激情一区二区| 麻豆国产精品一区二区三区| 91丨九色丨蝌蚪富婆spa| 日韩欧美中文字幕精品| 亚洲欧美二区三区| 国产一区二区三区视频在线播放| 91成人免费电影| 国产偷国产偷精品高清尤物| 亚洲线精品一区二区三区八戒| 国产一区二区毛片| 欧美日韩国产另类一区| 亚洲婷婷综合色高清在线| 久久成人久久鬼色| 欧美精品高清视频| 一区2区3区在线看| 国产精品18久久久久久久久 | 国产白丝精品91爽爽久久| 欧美巨大另类极品videosbest| 国产精品嫩草影院com| 奇米一区二区三区| 欧美影院午夜播放| 亚洲特级片在线| 粉嫩久久99精品久久久久久夜| 欧美mv日韩mv| 狂野欧美性猛交blacked| 精品污污网站免费看| 亚洲精品日产精品乱码不卡| 成人黄色电影在线| 国产免费成人在线视频| 国产精品中文有码| 欧美sm极限捆绑bd| 美女高潮久久久| 日韩三级免费观看| 日本vs亚洲vs韩国一区三区二区| 欧美亚洲动漫另类| 亚洲国产成人精品视频| 91国偷自产一区二区开放时间 | www.亚洲激情.com| 欧美国产在线观看| 国产99久久久精品| 久久久一区二区三区| 国产露脸91国语对白| 精品国产伦理网| 国产一区免费电影| 久久久久久免费毛片精品| 国产中文一区二区三区| 亚洲精品一区二区三区99| 国产毛片精品一区| 日本一区二区电影| 99精品国产视频| 亚洲精品乱码久久久久久久久| 91久久精品网| 亚洲电影你懂得| 91精品国产综合久久婷婷香蕉| 日日夜夜精品视频天天综合网| 欧美一级精品大片| 国产一区二区三区不卡在线观看 | 最好看的中文字幕久久| 99re8在线精品视频免费播放| 综合久久久久久| 欧美视频在线一区二区三区| 日韩avvvv在线播放| 欧美成人艳星乳罩| 风间由美性色一区二区三区| 亚洲色图第一区| 欧美日免费三级在线| 九九九久久久精品| 国产丝袜美腿一区二区三区| 成人激情免费电影网址| 亚洲福利一二三区| 精品处破学生在线二十三| av网站免费线看精品| 亚洲成人在线网站| 精品国产百合女同互慰|