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

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

?? dm12864m串行.lis

?? EEPROM讀寫程序: 先向EEPROM寫入一幅圖片數據
?? LIS
?? 第 1 頁 / 共 3 頁
字號:
                        .module dm12864m串行.c
                        .area text(rom, con, rel)
 0000                   .dbfile E:\學習專區\AVR專區\個人創作區\AVR單片機開發平臺\EEPROM讀寫演示程序\dm12864m串行.c
 0000                   .dbfunc e dm12864_inputbyte _dm12864_inputbyte fV
 0000           ;            mid -> R20
 0000           ;              i -> R22
 0000           ;           comm -> R16
                        .even
 0000           _dm12864_inputbyte::
 0000 0E940000          xcall push_gset2
 0004                   .dbline -1
 0004                   .dbline 33
 0004           ; /****************************************************************************************
 0004           ;            LCM(DM12864M-帶字庫,ST7920控制芯片)顯示程序   
 0004           ;                                                               
 0004           ;              程序功能:該程序是用AVR來控制對DM12864M
 0004           ;                                  讀寫信號等的操作.
 0004           ;              硬件連接:采用串行方式顯示,分配PA.0,PA.1,PA.2
 0004           ;                                  三個I/O口分別作為LCM片選CS,數據SID,時鐘信
 0004           ;                                          號CLK的控制。PA3置為低電平,用來串行選擇信號。
 0004           ;                               PA4置位時開啟背光。                                           
 0004           ;  
 0004           ; ****************************************************************************************/
 0004           ; 
 0004           ; #include <iom16v.h>
 0004           ; #include <macros.h>
 0004           ; #include <stdio.h>  
 0004           ; #define LCDDDR        DDRA
 0004           ; #define LCDDDR_IN     LCDDDR&=~BIT(PA1);
 0004           ; #define LCDDDR_OUT    LCDDDR|=BIT(PA0)|BIT(PA1)|BIT(PA2)|BIT(PA3)|BIT(PA4);
 0004           ; /*===============================================================*/
 0004           ; #define LCDCTL      PORTA   
 0004           ; #define LCD_RS_H    LCDCTL |= BIT(PA0)  //片選               
 0004           ; #define LCD_RS_L    LCDCTL &= ~BIT(PA0)                                           
 0004           ; #define LCD_RW_H    LCDCTL |= BIT(PA1)  //數據                            
 0004           ; #define LCD_RW_L    LCDCTL &= ~BIT(PA1)  
 0004           ; #define LCD_EN_H    LCDCTL |= BIT(PA2)  //時鐘                          
 0004           ; #define LCD_EN_L    LCDCTL &= ~BIT(PA2) 
 0004           ; #define LCD_PSB     LCDCTL &= ~BIT(PA3) //串行選擇
 0004           ; #define LCD_AK      LCDCTL |= BIT(PA4)  //開啟背光
 0004           ; #define  uchar unsigned char
 0004           ; /***********************函數體部分*********************************/
 0004           ; 
 0004           ; void dm12864_inputbyte(uchar comm)  // 寫入一字節數據
 0004           ; {
 0004                   .dbline 36
 0004           ;        uchar i;
 0004           ;        uchar mid;
 0004           ;        for (i=0;i<8;i++)
 0004 6627              clr R22
 0006 0AC0              xjmp L5
 0008           L2:
 0008                   .dbline 37
 0008           ;        {
 0008                   .dbline 38
 0008           ;                mid=comm&0x80;
 0008 402F              mov R20,R16
 000A 4078              andi R20,128
 000C                   .dbline 39
 000C           ;                if (mid==0)
 000C 11F4              brne L6
 000E                   .dbline 40
 000E           ;                LCD_RW_L ;
 000E D998              cbi 0x1b,1
 0010 01C0              xjmp L7
 0012           L6:
 0012                   .dbline 42
 0012           ;                else
 0012           ;                LCD_RW_H ;
 0012 D99A              sbi 0x1b,1
 0014           L7:
 0014                   .dbline 43
 0014 DA9A              sbi 0x1b,2
 0016                   .dbline 45
 0016 DA98              cbi 0x1b,2
 0018                   .dbline 46
 0018 000F              lsl R16
 001A                   .dbline 47
 001A           L3:
 001A                   .dbline 36
 001A 6395              inc R22
 001C           L5:
 001C                   .dbline 36
 001C 6830              cpi R22,8
 001E A0F3              brlo L2
 0020                   .dbline -2
 0020           L1:
 0020 0E940000          xcall pop_gset2
 0024                   .dbline 0 ; func end
 0024 0895              ret
 0026                   .dbsym r mid 20 c
 0026                   .dbsym r i 22 c
 0026                   .dbsym r comm 16 c
 0026                   .dbend
 0026                   .dbfunc e dm12864_outputbyte _dm12864_outputbyte fc
 0026           ;              i -> R16
 0026           ;            mid -> R18
                        .even
 0026           _dm12864_outputbyte::
 0026                   .dbline -1
 0026                   .dbline 50
 0026           ;                LCD_EN_H ;
 0026           ;                //delay(15);
 0026           ;                LCD_EN_L; 
 0026           ;                comm=comm<<1;
 0026           ;         }
 0026           ; }
 0026           ; uchar dm12864_outputbyte(void)  //讀取一字節數據
 0026           ; {
 0026                   .dbline 51
 0026           ;         uchar i,mid=0;
 0026 2227              clr R18
 0028                   .dbline 52
 0028           ;         for (i=0;i<8;i++)
 0028 0027              clr R16
 002A 0EC0              xjmp L12
 002C           L9:
 002C                   .dbline 53
 002C           ;         {
 002C                   .dbline 55
 002C           ;                 //delay(15);
 002C           ;                 LCDDDR_IN;
 002C D198              cbi 0x1a,1
 002E                   .dbline 55
 002E                   .dbline 56
 002E           ;                 LCD_RS_H ;
 002E D89A              sbi 0x1b,0
 0030                   .dbline 57
 0030           ;                 mid=mid<<1;
 0030 220F              lsl R18
 0032                   .dbline 58
 0032           ;                 if ((PINA&0x02)==0)
 0032 C999              sbic 0x19,1
 0034 02C0              rjmp L13
 0036                   .dbline 59
 0036           ;                 mid&=~BIT(PD0);
 0036 2E7F              andi R18,254
 0038 01C0              xjmp L14
 003A           L13:
 003A                   .dbline 61
 003A           ;                 else
 003A           ;                 mid|=BIT(PD0);
 003A 2160              ori R18,1
 003C           L14:
 003C                   .dbline 62
 003C 8AB3              in R24,0x1a
 003E 8F61              ori R24,31
 0040 8ABB              out 0x1a,R24
 0042                   .dbline 62
 0042                   .dbline 63
 0042 DA9A              sbi 0x1b,2
 0044                   .dbline 65
 0044 DA98              cbi 0x1b,2
 0046                   .dbline 66
 0046           L10:
 0046                   .dbline 52
 0046 0395              inc R16
 0048           L12:
 0048                   .dbline 52
 0048 0830              cpi R16,8
 004A 80F3              brlo L9
 004C                   .dbline 67
 004C           ;                 LCDDDR_OUT;
 004C           ;                 LCD_EN_H ;
 004C           ;                 //delay(15);
 004C           ;                 LCD_EN_L; 
 004C           ;        }
 004C           ;        return(mid);
 004C 022F              mov R16,R18
 004E                   .dbline -2
 004E           L8:
 004E                   .dbline 0 ; func end
 004E 0895              ret
 0050                   .dbsym r i 16 c
 0050                   .dbsym r mid 18 c
 0050                   .dbend
 0050                   .dbfunc e DetectLCMBusyState _DetectLCMBusyState fV
 0050           ;             BF -> R20
                        .even
 0050           _DetectLCMBusyState::
 0050 0E940000          xcall push_gset1
 0054                   .dbline -1
 0054                   .dbline 72
 0054           ; }
 0054           ; 
 0054           ; /*-----------------讀取標志位,判斷控制器是否為忙狀態--------------*/
 0054           ; void DetectLCMBusyState()
 0054           ; {
 0054                   .dbline 73
 0054           ;        char BF = 0x00;
 0054 4427              clr R20
 0056                   .dbline 74
 0056           ;        LCDDDR_OUT;
 0056 8AB3              in R24,0x1a
 0058 8F61              ori R24,31
 005A 8ABB              out 0x1a,R24
 005C                   .dbline 74
 005C                   .dbline 75
 005C           ;        LCD_RS_H ;
 005C D89A              sbi 0x1b,0
 005E                   .dbline 76
 005E           ;        LCD_EN_L ;
 005E DA98              cbi 0x1b,2
 0060           L16:
 0060                   .dbline 78
 0060           ;        do
 0060           ;     {
 0060                   .dbline 79
 0060           ;          dm12864_inputbyte(0xfc);
 0060 0CEF              ldi R16,252
 0062 CEDF              xcall _dm12864_inputbyte
 0064                   .dbline 80
 0064           ;          BF=dm12864_outputbyte();
 0064 E0DF              xcall _dm12864_outputbyte
 0066 402F              mov R20,R16
 0068                   .dbline 81
 0068           L17:
 0068                   .dbline 81
 0068           ;     } while(BF==0x80);
 0068 4038              cpi R20,128
 006A D1F3              breq L16
 006C                   .dbline 82
 006C           ;       LCD_RS_L ;
 006C D898              cbi 0x1b,0
 006E                   .dbline 83
 006E           ;       LCD_EN_H ;
 006E DA9A              sbi 0x1b,2
 0070                   .dbline -2
 0070           L15:
 0070 0E940000          xcall pop_gset1
 0074                   .dbline 0 ; func end
 0074 0895              ret
 0076                   .dbsym r BF 20 c
 0076                   .dbend
 0076                   .dbfunc e LCMWriteCommand _LCMWriteCommand fV
 0076           ;              b -> R20
 0076           ;              a -> R22
 0076           ;     DisplayCmd -> R20
                        .even
 0076           _LCMWriteCommand::
 0076 0E940000          xcall push_gset2
 007A 402F              mov R20,R16
 007C                   .dbline -1
 007C                   .dbline 89
 007C           ;       //delay(15);
 007C           ; }
 007C           ; 
 007C           ; /*----------------------------寫入命令-----------------------------*/
 007C           ; void LCMWriteCommand(char DisplayCmd)
 007C           ; {
 007C                   .dbline 91
 007C           ;        uchar a,b;
 007C           ;        a=DisplayCmd&0xf0;
 007C 642F              mov R22,R20
 007E 607F              andi R22,240
 0080                   .dbline 92
 0080           ;        b=(DisplayCmd<<4)&0xf0;
 0080 842F              mov R24,R20
 0082 8F70              andi R24,#0x0F
 0084 8295              swap R24
 0086 807F              andi R24,240
 0088 482F              mov R20,R24
 008A                   .dbline 93
 008A           ;        LCDDDR_OUT;
 008A 8AB3              in R24,0x1a
 008C 8F61              ori R24,31
 008E 8ABB              out 0x1a,R24
 0090                   .dbline 93
 0090                   .dbline 94
 0090           ;        LCD_RS_H ;
 0090 D89A              sbi 0x1b,0
 0092                   .dbline 95
 0092           ;        LCD_EN_L ;
 0092 DA98              cbi 0x1b,2
 0094                   .dbline 96
 0094           ;        dm12864_inputbyte(0xf8);
 0094 08EF              ldi R16,248
 0096 B4DF              xcall _dm12864_inputbyte
 0098                   .dbline 97
 0098           ;        dm12864_inputbyte(a);
 0098 062F              mov R16,R22
 009A B2DF              xcall _dm12864_inputbyte
 009C                   .dbline 98
 009C           ;        dm12864_inputbyte(b);
 009C 042F              mov R16,R20
 009E B0DF              xcall _dm12864_inputbyte
 00A0                   .dbline 99
 00A0           ;        LCD_EN_H ;
 00A0 DA9A              sbi 0x1b,2
 00A2                   .dbline 100
 00A2           ;        LCD_RS_L ;
 00A2 D898              cbi 0x1b,0
 00A4                   .dbline -2
 00A4           L19:
 00A4 0E940000          xcall pop_gset2
 00A8                   .dbline 0 ; func end
 00A8 0895              ret
 00AA                   .dbsym r b 20 c
 00AA                   .dbsym r a 22 c
 00AA                   .dbsym r DisplayCmd 20 c
 00AA                   .dbend
 00AA                   .dbfunc e LCMWriteData _LCMWriteData fV
 00AA           ;              b -> R20
 00AA           ;              a -> R22
 00AA           ;    DisplayData -> R20

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区欧美国产| 色狠狠一区二区三区香蕉| 国产精品亚洲а∨天堂免在线| 日韩黄色一级片| 亚洲v精品v日韩v欧美v专区| 五月天亚洲婷婷| 亚洲一区在线视频观看| 欧美精品日日鲁夜夜添| 成人美女在线观看| 91在线丨porny丨国产| 国产成人8x视频一区二区| 国产传媒久久文化传媒| 欧美一区二区三区在线看| 国产欧美日韩精品一区| 五月天亚洲精品| 国产精品自拍三区| www久久久久| 亚洲黄色小说网站| 成人永久aaa| 欧美日韩成人在线| 日韩欧美国产一区在线观看| 国产蜜臀av在线一区二区三区| 椎名由奈av一区二区三区| 欧美电影一区二区三区| 国产精品动漫网站| 蜜桃精品在线观看| 日本韩国一区二区| 久久婷婷色综合| 亚洲第一会所有码转帖| 日本高清成人免费播放| 亚洲欧美一区二区三区孕妇| 成人一二三区视频| 在线综合视频播放| 蜜桃视频一区二区| 精品电影一区二区三区| 精品一区二区久久久| 久久久久国产精品厨房| 成人动漫一区二区| 亚洲一区二区免费视频| 欧美美女一区二区三区| gogogo免费视频观看亚洲一| 五月天视频一区| 亚洲综合一区二区三区| 久久精品一区四区| 7777精品久久久大香线蕉| 麻豆精品在线观看| 亚洲综合图片区| 中文字幕一区在线观看视频| 久久人人爽人人爽| 色婷婷精品大视频在线蜜桃视频| 免费观看一级特黄欧美大片| 亚洲精品国产精华液| 日韩精品一区二区三区视频| 欧美精品九九99久久| 国产99久久久久| 免费精品99久久国产综合精品| 自拍偷拍国产精品| 一区二区三区四区在线播放 | 成人性生交大片免费看中文| 久久国产欧美日韩精品| 秋霞午夜av一区二区三区| 亚洲日本成人在线观看| 精品国产人成亚洲区| 欧美一区二区三区免费在线看| 91麻豆免费观看| 成人中文字幕合集| 麻豆国产欧美一区二区三区| 国产精品亚洲午夜一区二区三区| 91精品婷婷国产综合久久| 精品国产一区二区三区忘忧草| 国产精品国产三级国产aⅴ入口 | 日本道免费精品一区二区三区| 国产 欧美在线| 久久精品久久久精品美女| 欧美激情在线看| 欧美一卡在线观看| 国产日韩欧美综合在线| 亚洲精品国产无套在线观| 图片区小说区国产精品视频| 美国毛片一区二区| 99久久免费国产| 在线观看一区二区精品视频| 久久香蕉国产线看观看99| 婷婷综合久久一区二区三区| av电影在线不卡| 色天天综合久久久久综合片| 欧美一级理论性理论a| 国产精品女主播在线观看| 日韩av在线免费观看不卡| 国产精品91一区二区| 欧美日韩和欧美的一区二区| 91精品国产麻豆| 亚洲成人中文在线| 欧美三级电影在线观看| 亚洲综合色成人| 欧美精品久久久久久久久老牛影院| 亚洲美女免费在线| 成人黄色网址在线观看| 欧美年轻男男videosbes| 国产欧美一区二区精品性色超碰| 久久成人麻豆午夜电影| 日本一区二区成人| 99久久精品免费观看| 欧美精彩视频一区二区三区| 国产专区综合网| 国产精品三级av在线播放| 成人激情免费网站| 亚洲精品自拍动漫在线| 欧美伊人久久久久久久久影院| 午夜成人免费电影| 国产日韩欧美精品电影三级在线| 欧美在线免费观看亚洲| 久久国产综合精品| 中文字幕一区二区三区精华液| 国产成人精品午夜视频免费| 亚洲免费观看高清完整| 欧美久久久久免费| 国产精品99久久久久久久vr| 国产精品久久毛片av大全日韩| 麻豆精品一区二区| 国产精品久久久久7777按摩| eeuss鲁片一区二区三区| 天天av天天翘天天综合网色鬼国产| 欧美性色黄大片| 色综合久久久久久久久| 日本女人一区二区三区| 亚洲午夜久久久久久久久久久| 中文欧美字幕免费| 精品国产乱子伦一区| 一道本成人在线| 欧美aaaaa成人免费观看视频| 亚洲黄一区二区三区| 中文一区在线播放| 国产亚洲一区字幕| 日韩理论片中文av| 亚洲国产精品一区二区www| 欧美群妇大交群中文字幕| 日韩欧美你懂的| 久久色中文字幕| 亚洲视频香蕉人妖| 日韩av不卡一区二区| 天天免费综合色| 正在播放亚洲一区| 亚洲激情中文1区| 日韩成人伦理电影在线观看| 久久精品国产精品亚洲红杏| 亚洲国产成人va在线观看天堂| 91精品国产乱| 国产精品久久久久三级| 日韩中文字幕av电影| 色94色欧美sute亚洲13| 中文字幕欧美日本乱码一线二线 | 亚洲国产精品久久人人爱蜜臀| 午夜精品一区在线观看| 久久99精品久久久| 欧美在线视频日韩| 欧美精品一区二区三| 中文字幕一区二区三区精华液| 美女视频黄 久久| 国产精品996| 欧美日韩国产一级片| 日韩精品一区二| 亚洲欧美激情在线| 亚洲mv在线观看| 欧美制服丝袜第一页| 中文字幕欧美国产| 岛国av在线一区| 欧美国产激情二区三区| 美女视频一区二区| 9人人澡人人爽人人精品| 国产麻豆精品视频| 久久久久国产一区二区三区四区 | 久久精品免费在线观看| 精品一区二区三区的国产在线播放| 欧美视频在线播放| 亚洲无人区一区| 91九色02白丝porn| 自拍偷拍国产精品| 国内成人精品2018免费看| 日韩视频不卡中文| 丝瓜av网站精品一区二区 | 久草这里只有精品视频| 欧美一级日韩不卡播放免费| 日韩影视精彩在线| 91精品国产欧美一区二区18 | 日韩成人dvd| 中文字幕不卡在线观看| 欧美老人xxxx18| 岛国av在线一区| 奇米一区二区三区| 午夜欧美视频在线观看| 亚洲人亚洲人成电影网站色| 精品国产伦一区二区三区观看体验 | 欧美视频一区二区三区在线观看 | 久久精品一区二区三区四区| 成人高清视频免费观看| 亚洲愉拍自拍另类高清精品| 日韩欧美国产三级电影视频| 国产精品一区二区黑丝| 亚洲天堂福利av|