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

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

?? 訓練項目九:ps2鍵盤的使用1.lis

?? 長沙理工自己的實驗程序
?? LIS
字號:
                        .module _訓練項目九:PS2鍵盤的使用1.c
                        .area text(rom, con, rel)
                ;              i -> R20
                ;              t -> R16,R17
                        .even
 0000           _delay::
 0000 4A93              st -y,R20
 0002           ; 
 0002           ; /****************************************************************************
 0002           ; ** File Name:          PS/2鍵盤的使用
 0002           ; ** Createed By:        Wangchangsong
 0002           ; ** Create Date:        07/24/2008
 0002           ; ** Version:            1.0
 0002           ; ** Descriptions:       
 0002           ; **
 0002           ; **---------------------------------------------------------------------------
 0002           ; ** Modified By:
 0002           ; ** Modified Date:
 0002           ; ** Version:
 0002           ; ** Descriptions:
 0002           ; **
 0002           ; ****************************************************************************/
 0002           ; #include <lcd.h>
 0002           ; 
 0002           ; /****************************************************************************
 0002           ; ** Function Name:      delay     
 0002           ; ** Descriptions:       delay time
 0002           ; ** Input Parameters:   t
 0002           ; ** Output parameters:  void
 0002           ; ** Returned Value:     void
 0002           ; **---------------------------------------------------------------------------
 0002           ; ****************************************************************************/
 0002           ; 
 0002           ; void delay (unsigned int t)                      /*延時*/
 0002           ; {
 0002           ;     unsigned char i;
 0002           ;     for (i=1;i<t;i++);
 0002 41E0              ldi R20,1
 0004 01C0              xjmp L5
 0006           L2:
 0006           L3:
 0006 4395              inc R20
 0008           L5:
 0008 242E              mov R2,R20
 000A 3324              clr R3
 000C 2016              cp R2,R16
 000E 3106              cpc R3,R17
 0010 D0F3              brlo L2
 0012           X0:
 0012           L1:
 0012                   .dbline 0 ; func end
 0012 4991              ld R20,y+
 0014 0895              ret
 0016           ;              p -> R20,R21
 0016           ;           data -> R16
                        .even
 0016           _lcd_w::
 0016 4A93              st -y,R20
 0018 5A93              st -y,R21
 001A           ; }
 001A           ; 
 001A           ; /****************************************************************************
 001A           ; ** Function Name:      lcd_w     
 001A           ; ** Descriptions:       write date
 001A           ; ** Input Parameters:   date
 001A           ; ** Output parameters:  void
 001A           ; ** Returned Value:     void
 001A           ; **---------------------------------------------------------------------------
 001A           ; ****************************************************************************/
 001A           ; 
 001A           ; void lcd_w(unsigned char data)
 001A           ; {
 001A           ;     unsigned char *p=(unsigned char *)(LCD);
 001A 40E0              ldi R20,36864
 001C 50E9              ldi R21,144
 001E           L7:
 001E           ; 	
 001E           ;     while((PINE&0x80)!=0x00);
 001E           L8:
 001E 0F99              sbic 0x1,7
 0020 FECF              rjmp L7
 0022           X1:
 0022           ;     dat;
 0022 C09A              sbi 0x18,0
 0024           ;     *p=data;
 0024 FA01              movw R30,R20
 0026 0083              std z+0,R16
 0028           ;     cl_dat;
 0028 C098              cbi 0x18,0
 002A           ;     req;
 002A 1E9A              sbi 0x03,6
 002C           L10:
 002C           ; 	
 002C           ;     while((PINE&0x80)==0x00);
 002C           L11:
 002C 0F9B              sbis 0x1,7
 002E FECF              rjmp L10
 0030           X2:
 0030           ;     cl_req;
 0030 1E98              cbi 0x03,6
 0032           L6:
 0032                   .dbline 0 ; func end
 0032 5991              ld R21,y+
 0034 4991              ld R20,y+
 0036 0895              ret
                        .even
 0038           _lcd_init::
 0038           ; }
 0038           ; 
 0038           ; /****************************************************************************
 0038           ; ** Function Name:      lcd_init     
 0038           ; ** Descriptions:       
 0038           ; ** Input Parameters:   void
 0038           ; ** Output parameters:  void
 0038           ; ** Returned Value:     void
 0038           ; **---------------------------------------------------------------------------
 0038           ; ****************************************************************************/
 0038           ; 
 0038           ; void lcd_init (void)
 0038           ; {
 0038           ;     MCUCR=MCUCR|0x80;
 0038 85B7              in R24,0x35
 003A 8068              ori R24,128
 003C 85BF              out 0x35,R24
 003E           ;     DDRB|=0x01;
 003E B89A              sbi 0x17,0
 0040           ;     PORTB&=0xfe;
 0040 88B3              in R24,0x18
 0042 8E7F              andi R24,254
 0044 88BB              out 0x18,R24
 0046           ;     DDRE=0x40;
 0046 80E4              ldi R24,64
 0048 82B9              out 0x2,R24
 004A           ;     PORTE=0xff;
 004A 8FEF              ldi R24,255
 004C 83B9              out 0x3,R24
 004E           ;       
 004E           ;     cl_reset;
 004E AB98              cbi 0x15,3
 0050           ;     delay(10);
 0050 0AE0              ldi R16,10
 0052 10E0              ldi R17,0
 0054 D5DF              xcall _delay
 0056           ;       set_reset;
 0056 AB9A              sbi 0x15,3
 0058           ;     delay(10);
 0058 0AE0              ldi R16,10
 005A 10E0              ldi R17,0
 005C D1DF              xcall _delay
 005E           ;     cl_req;
 005E 1E98              cbi 0x03,6
 0060           ;     delay(10);
 0060 0AE0              ldi R16,10
 0062 10E0              ldi R17,0
 0064 CDDF              xcall _delay
 0066           L13:
 0066                   .dbline 0 ; func end
 0066 0895              ret
                        .even
 0068           _lcd_clear::
 0068           ; }
 0068           ; 
 0068           ; /****************************************************************************
 0068           ; ** Function Name:      timeDelay       
 0068           ; ** Descriptions:       delay time
 0068           ; ** Input Parameters:   uiTime
 0068           ; ** Output parameters:  void
 0068           ; ** Returned Value:     void
 0068           ; **---------------------------------------------------------------------------
 0068           ; ****************************************************************************/
 0068           ; 
 0068           ; void lcd_clear (void)
 0068           ; {
 0068           ;     lcd_w(0xf4);
 0068 04EF              ldi R16,244
 006A D5DF              xcall _lcd_w
 006C           L14:
 006C                   .dbline 0 ; func end
 006C 0895              ret
 006E           ;             ch -> R20,R21
 006E           ;              y -> R10
 006E           ;              x -> R22
                        .even
 006E           _lcd_putsc::
 006E 0E940000          xcall push_xgsetF00C
 0072 A22E              mov R10,R18
 0074 602F              mov R22,R16
 0076 4E81              ldd R20,y+6
 0078 5F81              ldd R21,y+7
 007A           ; }
 007A           ; 
 007A           ; /****************************************************************************
 007A           ; ** Function Name:      lcd_putsc  
 007A           ; ** Descriptions:       
 007A           ; ** Input Parameters:   x,y,ch
 007A           ; ** Output parameters:  void
 007A           ; ** Returned Value:     void
 007A           ; **---------------------------------------------------------------------------
 007A           ; ****************************************************************************/
 007A           ; void lcd_putsc (unsigned char x,unsigned char y,unsigned char *ch)
 007A           ; {
 007A           ;     x+=2;
 007A 6E5F              subi R22,254    ; addi 2
 007C 18C0              xjmp L17
 007E           L16:
 007E           ;     while (*ch!=0)
 007E           ; 	{
 007E           ;         lcd_w(0xf0);
 007E 00EF              ldi R16,240
 0080 CADF              xcall _lcd_w
 0082           ;         lcd_w(x);
 0082 062F              mov R16,R22
 0084 C8DF              xcall _lcd_w
 0086           ;         lcd_w(y);
 0086 0A2D              mov R16,R10
 0088 C6DF              xcall _lcd_w
 008A           ;         lcd_w(*ch-0xa0);
 008A FA01              movw R30,R20
 008C 0081              ldd R16,z+0
 008E 005A              subi R16,160
 0090 C2DF              xcall _lcd_w
 0092           ;         ch++;
 0092 4F5F              subi R20,255  ; offset = 1
 0094 5F4F              sbci R21,255
 0096           ;         lcd_w(*ch-0xa0);
 0096 FA01              movw R30,R20
 0098 0081              ldd R16,z+0
 009A 005A              subi R16,160
 009C BCDF              xcall _lcd_w
 009E           ;         ch++;
 009E 4F5F              subi R20,255  ; offset = 1
 00A0 5F4F              sbci R21,255
 00A2           ;         if (x>=0x09)
 00A2 6930              cpi R22,9
 00A4 18F0              brlo L19
 00A6           X3:
 00A6           ; 		{
 00A6           ;             x=2;
 00A6 62E0              ldi R22,2
 00A8           ;             y+=1;
 00A8 A394              inc R10
 00AA           ;         }
 00AA 01C0              xjmp L20
 00AC           L19:
 00AC           ; 		else
 00AC           ; 		{ 
 00AC           ;             x++;
 00AC 6395              inc R22
 00AE           ;               }
 00AE           L20:
 00AE           ;     }
 00AE           L17:
 00AE FA01              movw R30,R20
 00B0 2080              ldd R2,z+0
 00B2 2220              tst R2
 00B4 21F7              brne L16
 00B6           X4:
 00B6           L15:
 00B6                   .dbline 0 ; func end
 00B6 0C940000          xjmp pop_xgsetF00C
 00BA           ;             ch -> R22,R23
 00BA           ;              y -> R10
 00BA           ;              x -> R20
                        .even
 00BA           _lcd_putse::
 00BA 0E940000          xcall push_xgsetF00C
 00BE A22E              mov R10,R18
 00C0 402F              mov R20,R16
 00C2 6E81              ldd R22,y+6
 00C4 7F81              ldd R23,y+7
 00C6           ; }
 00C6           ; 
 00C6           ; /****************************************************************************
 00C6           ; ** Function Name:      lcd_putse       
 00C6           ; ** Descriptions:      
 00C6           ; ** Input Parameters:   x,y,ch
 00C6           ; ** Output parameters:  void
 00C6           ; ** Returned Value:     void
 00C6           ; **---------------------------------------------------------------------------
 00C6           ; ****************************************************************************/
 00C6           ; 
 00C6           ; void lcd_putse (unsigned char x,unsigned char y,unsigned char *ch)
 00C6           ; {
 00C6           ;     x+=4;
 00C6 4C5F              subi R20,252    ; addi 4
 00C8 13C0              xjmp L23
 00CA           L22:
 00CA           ;     while (*ch!=0){
 00CA           ;         lcd_w(0xf1);
 00CA 01EF              ldi R16,241
 00CC A4DF              xcall _lcd_w
 00CE           ;         lcd_w(x);
 00CE 042F              mov R16,R20
 00D0 A2DF              xcall _lcd_w
 00D2           ;         lcd_w(y);
 00D2 0A2D              mov R16,R10
 00D4 A0DF              xcall _lcd_w
 00D6           ;         lcd_w(*ch);
 00D6 FB01              movw R30,R22
 00D8 0081              ldd R16,z+0
 00DA 9DDF              xcall _lcd_w
 00DC           ;         ch++;
 00DC 6F5F              subi R22,255  ; offset = 1
 00DE 7F4F              sbci R23,255
 00E0           ;         if (x>=19){
 00E0 4331              cpi R20,19
 00E2 28F0              brlo L25
 00E4           X5:
 00E4           ;             x=4;
 00E4 44E0              ldi R20,4
 00E6           ;             y+=8;
 00E6 8A2D              mov R24,R10
 00E8 885F              subi R24,248    ; addi 8
 00EA A82E              mov R10,R24
 00EC           ;         }else{ 
 00EC 01C0              xjmp L26
 00EE           L25:
 00EE           ;             x++;
 00EE 4395              inc R20
 00F0           ;               }
 00F0           L26:
 00F0           ;     }
 00F0           L23:
 00F0 FB01              movw R30,R22
 00F2 2080              ldd R2,z+0
 00F4 2220              tst R2
 00F6 49F7              brne L22
 00F8           X6:
 00F8           L21:
 00F8                   .dbline 0 ; func end
 00F8 0C940000          xjmp pop_xgsetF00C
 00FC           ;             ch -> y+4
 00FC           ;              y -> R10
 00FC           ;              x -> R20
                        .even
 00FC           _lcd_putss::
 00FC 0E940000          xcall push_xgset300C
 0100 A22E              mov R10,R18
 0102 402F              mov R20,R16
 0104           ; }
 0104           ; 
 0104           ; /****************************************************************************
 0104           ; ** Function Name:      lcd_putss       
 0104           ; ** Descriptions:      
 0104           ; ** Input Parameters:   x,y,ch
 0104           ; ** Output parameters:  void
 0104           ; ** Returned Value:     void
 0104           ; **---------------------------------------------------------------------------
 0104           ; ****************************************************************************/
 0104           ; void lcd_putss (unsigned char x,unsigned char y,unsigned char ch)
 0104           ; {
 0104           ;     x+=4;
 0104 4C5F              subi R20,252    ; addi 4
 0106           ;     lcd_w(0xf1);
 0106 01EF              ldi R16,241
 0108 86DF              xcall _lcd_w
 010A           ;     lcd_w(x);
 010A 042F              mov R16,R20
 010C 84DF              xcall _lcd_w
 010E           ;     lcd_w(y);
 010E 0A2D              mov R16,R10
 0110 82DF              xcall _lcd_w
 0112           ;     lcd_w(ch);
 0112 0C81              ldd R16,y+4
 0114 80DF              xcall _lcd_w
 0116           L27:
 0116                   .dbline 0 ; func end
 0116 0C940000          xjmp pop_xgset300C
 011A           ; }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品久久久久久久岛一牛影视| 国产欧美精品一区二区色综合| 99久久婷婷国产精品综合| 老司机精品视频一区二区三区| 亚洲成av人综合在线观看| 亚洲电影第三页| 天天综合网天天综合色| 三级影片在线观看欧美日韩一区二区 | 欧美美女网站色| 欧美日韩一卡二卡三卡| 欧美老人xxxx18| 欧美电影免费观看高清完整版在| 日韩美女在线视频| 国产天堂亚洲国产碰碰| 亚洲日本韩国一区| 五月天激情小说综合| 蜜桃av一区二区在线观看| 国产在线国偷精品产拍免费yy| 高潮精品一区videoshd| 91浏览器入口在线观看| 91精品一区二区三区在线观看| 日韩精品在线网站| 国产精品久久久久久亚洲毛片| 一区二区三区波多野结衣在线观看| 亚洲小少妇裸体bbw| 韩国精品一区二区| 91猫先生在线| 日韩欧美国产一区二区在线播放 | 欧美色视频在线| 日韩精品一区在线观看| 一色桃子久久精品亚洲| 日韩极品在线观看| 成人v精品蜜桃久久一区| 欧美另类videos死尸| 亚洲国产精品高清| 免费一级片91| 色婷婷久久久久swag精品 | 亚洲影院久久精品| 国内精品伊人久久久久av一坑 | 免费在线观看一区| 99re6这里只有精品视频在线观看| 欧美日韩美少妇| 国产精品日产欧美久久久久| 香蕉成人伊视频在线观看| 国产丶欧美丶日本不卡视频| 5月丁香婷婷综合| 亚洲精品国久久99热| 成人综合婷婷国产精品久久蜜臀| 欧美日韩精品一区二区三区| 国产精品乱码人人做人人爱 | 亚洲美女精品一区| 国产精品自在在线| 91精品国模一区二区三区| 亚洲男人的天堂在线观看| 国产精品99久| 精品处破学生在线二十三| 日韩国产欧美在线播放| 色欧美88888久久久久久影院| 欧美极品少妇xxxxⅹ高跟鞋 | 欧美日韩一区小说| 日韩美女啊v在线免费观看| 国产高清久久久| 久久久美女艺术照精彩视频福利播放| 天堂成人免费av电影一区| 在线一区二区视频| 一二三四区精品视频| 91麻豆国产精品久久| 亚洲免费av在线| 在线影院国内精品| 一区二区三区毛片| 一本到不卡免费一区二区| 国产精品成人免费精品自在线观看| 极品美女销魂一区二区三区免费| 日韩视频在线观看一区二区| 蜜桃视频在线一区| 久久久久久**毛片大全| 国产精品系列在线观看| 国产日本欧美一区二区| 成人精品免费看| 自拍视频在线观看一区二区| 91免费观看在线| 亚洲专区一二三| 9191精品国产综合久久久久久| 日韩精彩视频在线观看| 精品区一区二区| 国产精品亚洲а∨天堂免在线| 国产日韩欧美精品电影三级在线| 粉嫩在线一区二区三区视频| 国产精品福利av | 丝袜诱惑亚洲看片| 91精品国产福利| 狠狠色狠狠色综合系列| 国产目拍亚洲精品99久久精品| www.性欧美| 亚洲chinese男男1069| 精品国产成人系列| 成人黄色av网站在线| 亚洲国产wwwccc36天堂| 精品国产凹凸成av人网站| 风间由美一区二区三区在线观看| 亚洲精品老司机| ww亚洲ww在线观看国产| 91小视频在线观看| 蜜臀久久99精品久久久久宅男| 国产免费成人在线视频| 欧美久久久久久蜜桃| 国产不卡视频在线播放| 亚洲第一二三四区| 久久精品欧美日韩| 欧美日韩综合在线免费观看| 精一区二区三区| 亚洲精品久久久蜜桃| 2023国产精品视频| 欧美日韩在线播放| 成人免费观看视频| 美女精品一区二区| 亚洲综合在线免费观看| 久久久久久久电影| 制服丝袜成人动漫| 91女神在线视频| 国产精品一二三在| 蜜臀av亚洲一区中文字幕| 亚洲激情一二三区| 国产精品电影院| 久久免费精品国产久精品久久久久 | 日韩欧美精品在线| 色综合久久久久综合体| 国产美女精品在线| 美女视频黄久久| 亚洲国产中文字幕| 亚洲免费大片在线观看| 国产日韩欧美精品在线| 精品国产麻豆免费人成网站| 欧美性三三影院| 色偷偷一区二区三区| 成人激情文学综合网| 黄一区二区三区| 麻豆精品视频在线观看| 婷婷久久综合九色国产成人 | 麻豆国产精品777777在线| 亚洲一卡二卡三卡四卡无卡久久| 国产精品免费视频一区| 国产欧美综合在线| 久久久精品蜜桃| 26uuu色噜噜精品一区二区| 精品国产免费人成电影在线观看四季| 欧美巨大另类极品videosbest| 91久久精品一区二区三区| 91蜜桃网址入口| 成人h精品动漫一区二区三区| 国产不卡视频在线播放| 国产精品夜夜嗨| 成人性色生活片免费看爆迷你毛片| 国产麻豆视频精品| 国产乱人伦偷精品视频不卡| 国产麻豆日韩欧美久久| 国产精品小仙女| 99久久久无码国产精品| 在线观看一区不卡| 欧美精品vⅰdeose4hd| 91精品国产色综合久久不卡蜜臀 | 中文字幕综合网| 国产精品高潮呻吟久久| 亚洲精品国产第一综合99久久| 亚洲国产毛片aaaaa无费看| 亚洲成人黄色影院| 精品一区二区三区视频| 国产成人av电影在线观看| 不卡影院免费观看| 精品视频一区二区不卡| 日韩一区二区免费在线观看| 久久这里只有精品视频网| 国产精品久久三区| 香蕉影视欧美成人| 黑人精品欧美一区二区蜜桃| av电影天堂一区二区在线| 欧美性一级生活| 精品国产乱码久久久久久夜甘婷婷 | 欧美日韩国产大片| 精品国产91洋老外米糕| 国产精品婷婷午夜在线观看| 亚洲综合免费观看高清完整版在线 | 久久99久久99小草精品免视看| 国产精品国产三级国产专播品爱网| 国产一区二区视频在线播放| 欧美电影一区二区| 亚洲精品免费看| 国产日产欧产精品推荐色| 亚洲女同女同女同女同女同69| 亚洲一区自拍偷拍| 国产精品系列在线观看| 91福利小视频| 久久久久久久久久电影| 亚洲一区二区三区视频在线 | 91精品久久久久久久99蜜桃 | 久久久久成人黄色影片| 亚洲宅男天堂在线观看无病毒| 久久狠狠亚洲综合| 一本久久精品一区二区| 2021久久国产精品不只是精品|