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

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

?? avr_gy-27.lis

?? GY-27資料源碼 ADXL345 HMC5883L
?? LIS
?? 第 1 頁 / 共 4 頁
字號:
                        .module AVR_GY-27.c
                        .area text(rom, con, rel)
 0000                   .dbfile D:\MCU_Project\MCU_AVR\AVR_GY-27\AVR_GY-27.c
 0000                   .dbfile D:\MCU_Project\MCU_AVR\AVR_GY-27\delay.h
 0000                   .dbfunc e delay_1us _delay_1us fV
                        .even
 0000           _delay_1us::
 0000                   .dbline -1
 0000                   .dbline 15
 0000           ; /*-----------------------------------------------------------------------
 0000           ; 延時函數
 0000           ; 編譯器:ICC-AVR v6.31A 
 0000           ; 目標芯片 : M16
 0000           ; 時鐘: 8.0000Mhz
 0000           ; -----------------------------------------------------------------------*/
 0000           ; #ifndef __delay_h
 0000           ; #define __delay_h
 0000           ; void delay_nus(unsigned int n);
 0000           ; void delay_nms(unsigned int n);
 0000           ; void delay_1us(void);
 0000           ; void delay_1ms(void) ; 
 0000           ; 
 0000           ; void delay_1us(void)                 //1us延時函數
 0000           ;   {
 0000                   .dbline 16
 0000           ;    asm("nop");
 0000 0000              nop
 0002                   .dbline 17
 0002           ;    asm("nop");
 0002 0000              nop
 0004                   .dbline 18
 0004           ;    asm("nop");
 0004 0000              nop
 0006                   .dbline 19
 0006           ;    asm("nop");
 0006 0000              nop
 0008                   .dbline 20
 0008           ;    asm("nop");
 0008 0000              nop
 000A                   .dbline -2
 000A           L1:
 000A                   .dbline 0 ; func end
 000A 0895              ret
 000C                   .dbend
 000C                   .dbfunc e delay_nus _delay_nus fV
 000C           ;              i -> R20,R21
 000C           ;              n -> R10,R11
                        .even
 000C           _delay_nus::
 000C 0E940000          xcall push_xgset300C
 0010 5801              movw R10,R16
 0012                   .dbline -1
 0012                   .dbline 24
 0012           ;   }
 0012           ; 
 0012           ; void delay_nus(unsigned int n)       //N us延時函數
 0012           ;   {
 0012                   .dbline 25
 0012           ;    unsigned int i=0;
 0012 4427              clr R20
 0014 5527              clr R21
 0016                   .dbline 26
 0016           ;    for (i=0;i<n;i++)
 0016 03C0              xjmp L6
 0018           L3:
 0018                   .dbline 27
 0018           ;    delay_1us();
 0018 F3DF              xcall _delay_1us
 001A           L4:
 001A                   .dbline 26
 001A 4F5F              subi R20,255  ; offset = 1
 001C 5F4F              sbci R21,255
 001E           L6:
 001E                   .dbline 26
 001E 4A15              cp R20,R10
 0020 5B05              cpc R21,R11
 0022 D0F3              brlo L3
 0024           X0:
 0024                   .dbline -2
 0024           L2:
 0024                   .dbline 0 ; func end
 0024 0C940000          xjmp pop_xgset300C
 0028                   .dbsym r i 20 i
 0028                   .dbsym r n 10 i
 0028                   .dbend
 0028                   .dbfunc e delay_1ms _delay_1ms fV
 0028           ;              i -> R16,R17
                        .even
 0028           _delay_1ms::
 0028                   .dbline -1
 0028                   .dbline 31
 0028           ;   }
 0028           ;   
 0028           ; void delay_1ms(void)                 //1ms延時函數
 0028           ;   {
 0028                   .dbline 33
 0028           ;    unsigned int i;
 0028           ;    for (i=0;i<500;i++);
 0028 0027              clr R16
 002A 1127              clr R17
 002C 02C0              xjmp L11
 002E           L8:
 002E                   .dbline 33
 002E           L9:
 002E                   .dbline 33
 002E 0F5F              subi R16,255  ; offset = 1
 0030 1F4F              sbci R17,255
 0032           L11:
 0032                   .dbline 33
 0032 043F              cpi R16,244
 0034 E1E0              ldi R30,1
 0036 1E07              cpc R17,R30
 0038 D0F3              brlo L8
 003A           X1:
 003A                   .dbline -2
 003A           L7:
 003A                   .dbline 0 ; func end
 003A 0895              ret
 003C                   .dbsym r i 16 i
 003C                   .dbend
 003C                   .dbfunc e delay_nms _delay_nms fV
 003C           ;              i -> R20,R21
 003C           ;              n -> R10,R11
                        .even
 003C           _delay_nms::
 003C 0E940000          xcall push_xgset300C
 0040 5801              movw R10,R16
 0042                   .dbline -1
 0042                   .dbline 37
 0042           ;   }
 0042           ;   
 0042           ; void delay_nms(unsigned int n)       //N ms延時函數
 0042           ;   {
 0042                   .dbline 38
 0042           ;    unsigned int i=0;
 0042 4427              clr R20
 0044 5527              clr R21
 0046                   .dbline 39
 0046           ;    for (i=0;i<n;i++)
 0046 03C0              xjmp L16
 0048           L13:
 0048                   .dbline 40
 0048           ;    delay_1ms();
 0048 EFDF              xcall _delay_1ms
 004A           L14:
 004A                   .dbline 39
 004A 4F5F              subi R20,255  ; offset = 1
 004C 5F4F              sbci R21,255
 004E           L16:
 004E                   .dbline 39
 004E 4A15              cp R20,R10
 0050 5B05              cpc R21,R11
 0052 D0F3              brlo L13
 0054           X2:
 0054                   .dbline -2
 0054           L12:
 0054                   .dbline 0 ; func end
 0054 0C940000          xjmp pop_xgset300C
 0058                   .dbsym r i 20 i
 0058                   .dbsym r n 10 i
 0058                   .dbend
 0058                   .dbfile D:\MCU_Project\MCU_AVR\AVR_GY-27\I2C.h
 0058                   .dbfunc e I2C_Write _I2C_Write fc
 0058           ;          Wdata -> R10
 0058           ;     RegAddress -> R12
                        .even
 0058           _I2C_Write::
 0058 AA92              st -y,R10
 005A CA92              st -y,R12
 005C A22E              mov R10,R18
 005E C02E              mov R12,R16
 0060                   .dbline -1
 0060                   .dbline 41
 0060           ; #include <macros.h>
 0060           ; #include "delay.h"
 0060           ; 
 0060           ; //使用AVR內部硬件iic,引腳定義
 0060           ; //PC0->SCL  ;  PC1->SDA
 0060           ; //I2C 狀態定義
 0060           ; //MT 主方式傳輸 MR 主方式接受
 0060           ; #define START                 0x08
 0060           ; #define RE_START              0x10
 0060           ; #define MT_SLA_ACK            0x18
 0060           ; #define MT_SLA_NOACK  0x20
 0060           ; #define MT_DATA_ACK           0x28
 0060           ; #define MT_DATA_NOACK 0x30
 0060           ; #define MR_SLA_ACK            0x40
 0060           ; #define MR_SLA_NOACK  0x48
 0060           ; #define MR_DATA_ACK           0x50
 0060           ; #define MR_DATA_NOACK 0x58    
 0060           ;                                   
 0060           ; #define RD_DEVICE_ADDR  0x3D     
 0060           ; #define WD_DEVICE_ADDR  0x3C     
 0060           ; 
 0060           ; //常用TWI操作(主模式寫和讀)
 0060           ; #define Start()                       (TWCR=(1<<TWINT)|(1<<TWSTA)|(1<<TWEN))          //啟動I2C
 0060           ; #define Stop()                        (TWCR=(1<<TWINT)|(1<<TWSTO)|(1<<TWEN))          //停止I2C
 0060           ; #define Wait()                        {while(!(TWCR&(1<<TWINT)));}                            //等待中斷發生
 0060           ; #define TestAck()             (TWSR&0xf8)                                                                     //觀察返回狀態
 0060           ; #define SetAck                        (TWCR|=(1<<TWEA))                                                       //做出ACK應答
 0060           ; #define SetNoAck              (TWCR&=~(1<<TWEA))                                                      //做出Not Ack應答
 0060           ; #define Twi()                 (TWCR=(1<<TWINT)|(1<<TWEN))                                 //啟動I2C
 0060           ; #define Write8Bit(x)  {TWDR=(x);TWCR=(1<<TWINT)|(1<<TWEN);}           //寫數據到TWDR
 0060           ; 
 0060           ; unsigned char I2C_Write(unsigned char RegAddress,unsigned char Wdata);
 0060           ; unsigned char I2C_Read(unsigned RegAddress);
 0060           ; 
 0060           ; /*********************************************
 0060           ; I2C總線寫一個字節
 0060           ; 返回0:寫成功
 0060           ; 返回1:寫失敗
 0060           ; **********************************************/
 0060           ; unsigned char I2C_Write(unsigned char RegAddress,unsigned char Wdata)
 0060           ; {
 0060                   .dbline 42
 0060           ;         Start();                                              //I2C啟動
 0060 84EA              ldi R24,164
 0062 86BF              out 0x36,R24
 0064                   .dbline 43
 0064           ;         Wait();
 0064           L18:
 0064                   .dbline 43
 0064           L19:
 0064                   .dbline 43
 0064 26B6              in R2,0x36
 0066 27FE              sbrs R2,7
 0068 FDCF              rjmp L18
 006A           X3:
 006A                   .dbline 43
 006A                   .dbline 43
 006A                   .dbline 44
 006A           ;         if(TestAck()!=START) 
 006A 81B1              in R24,0x1
 006C 887F              andi R24,248
 006E 8830              cpi R24,8
 0070 11F0              breq L21
 0072           X4:
 0072                   .dbline 45
 0072           ;               return 1;                                       //ACK
 0072 01E0              ldi R16,1
 0074 2BC0              xjmp L17
 0076           L21:
 0076                   .dbline 47
 0076           ;         
 0076           ;         Write8Bit(WD_DEVICE_ADDR);    //寫I2C從器件地址和寫方式
 0076                   .dbline 47
 0076 8CE3              ldi R24,60
 0078 83B9              out 0x3,R24
 007A                   .dbline 47
 007A 84E8              ldi R24,132
 007C 86BF              out 0x36,R24
 007E                   .dbline 47
 007E                   .dbline 47
 007E                   .dbline 48
 007E           ;         Wait();
 007E           L23:
 007E                   .dbline 48
 007E           L24:
 007E                   .dbline 48
 007E 26B6              in R2,0x36
 0080 27FE              sbrs R2,7
 0082 FDCF              rjmp L23
 0084           X5:
 0084                   .dbline 48
 0084                   .dbline 48
 0084                   .dbline 49
 0084           ;         if(TestAck()!=MT_SLA_ACK) 
 0084 81B1              in R24,0x1
 0086 887F              andi R24,248
 0088 8831              cpi R24,24
 008A 11F0              breq L26
 008C           X6:
 008C                   .dbline 50
 008C           ;               return 1;                                       //ACK
 008C 01E0              ldi R16,1
 008E 1EC0              xjmp L17
 0090           L26:
 0090                   .dbline 52
 0090           ;         
 0090           ;         Write8Bit(RegAddress);                //寫器件相應寄存器地址
 0090                   .dbline 52
 0090 C3B8              out 0x3,R12
 0092                   .dbline 52
 0092 84E8              ldi R24,132
 0094 86BF              out 0x36,R24
 0096                   .dbline 52
 0096                   .dbline 52
 0096                   .dbline 53
 0096           ;         Wait();
 0096           L28:
 0096                   .dbline 53
 0096           L29:
 0096                   .dbline 53
 0096 26B6              in R2,0x36
 0098 27FE              sbrs R2,7
 009A FDCF              rjmp L28
 009C           X7:
 009C                   .dbline 53
 009C                   .dbline 53
 009C                   .dbline 54
 009C           ;         if(TestAck()!=MT_DATA_ACK) 
 009C 81B1              in R24,0x1
 009E 887F              andi R24,248
 00A0 8832              cpi R24,40
 00A2 11F0              breq L31
 00A4           X8:
 00A4                   .dbline 55
 00A4           ;               return 1;                                   //ACK
 00A4 01E0              ldi R16,1
 00A6 12C0              xjmp L17
 00A8           L31:
 00A8                   .dbline 57
 00A8           ;         
 00A8           ;         Write8Bit(Wdata);                             //寫數據到器件相應寄存器
 00A8                   .dbline 57
 00A8 A3B8              out 0x3,R10
 00AA                   .dbline 57
 00AA 84E8              ldi R24,132
 00AC 86BF              out 0x36,R24
 00AE                   .dbline 57
 00AE                   .dbline 57
 00AE                   .dbline 58
 00AE           ;         Wait();
 00AE           L33:
 00AE                   .dbline 58
 00AE           L34:
 00AE                   .dbline 58
 00AE 26B6              in R2,0x36
 00B0 27FE              sbrs R2,7
 00B2 FDCF              rjmp L33
 00B4           X9:
 00B4                   .dbline 58
 00B4                   .dbline 58
 00B4                   .dbline 59
 00B4           ;         if(TestAck()!=MT_DATA_ACK) 
 00B4 81B1              in R24,0x1
 00B6 887F              andi R24,248
 00B8 8832              cpi R24,40
 00BA 11F0              breq L36
 00BC           X10:
 00BC                   .dbline 60
 00BC           ;               return 1;                                   //ACK        
 00BC 01E0              ldi R16,1
 00BE 06C0              xjmp L17
 00C0           L36:
 00C0                   .dbline 61
 00C0           ;         Stop();                                               //I2C停止
 00C0 84E9              ldi R24,148
 00C2 86BF              out 0x36,R24
 00C4                   .dbline 62
 00C4           ;       delay_nms(10);                          //延時  
 00C4 0AE0              ldi R16,10
 00C6 10E0              ldi R17,0

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一级日本不卡的影视| 欧美一级免费大片| 日本一区二区三级电影在线观看| 国产在线播精品第三| 日韩一区二区三区精品视频| 精品亚洲成a人| 2023国产精品自拍| 国产成人精品影视| 综合av第一页| 欧美日韩国产高清一区二区| 日本特黄久久久高潮| 欧美xxxxxxxxx| 成人福利视频网站| 一二三四区精品视频| 制服丝袜一区二区三区| 国产精品一区二区久久精品爱涩| 日韩一区在线播放| 欧美午夜一区二区| 久久99精品久久久久久久久久久久| 久久先锋资源网| 色综合中文字幕国产 | 中文字幕精品—区二区四季| 91丝袜呻吟高潮美腿白嫩在线观看| 亚洲精品国产精华液| 4438x成人网最大色成网站| 狠狠色综合日日| 亚洲精品日日夜夜| 欧美成人综合网站| 色综合久久综合中文综合网| 青青草伊人久久| 中文字幕不卡一区| 欧美美女网站色| 成人午夜av在线| 青椒成人免费视频| 国产精品国产自产拍高清av王其| 欧美日韩国产天堂| 国产成人综合自拍| 日韩精品一二区| 亚洲桃色在线一区| 精品国产乱码久久久久久牛牛| 99视频在线观看一区三区| 日本不卡一区二区三区| 中文字幕一区二区三区不卡| 精品日韩av一区二区| 色八戒一区二区三区| 国产真实乱对白精彩久久| 亚洲综合一区二区| 国产欧美一二三区| 精品国产一区二区三区久久久蜜月| 欧美性一区二区| av激情亚洲男人天堂| 久久国产夜色精品鲁鲁99| 亚洲综合成人在线| 国产精品久久久久影院老司| 日韩欧美亚洲国产精品字幕久久久 | 欧美日韩一区二区欧美激情| 国产成人在线看| 极品美女销魂一区二区三区| 图片区小说区区亚洲影院| 亚洲人xxxx| 国产精品色眯眯| 久久亚区不卡日本| 精品美女一区二区三区| 51久久夜色精品国产麻豆| 欧美视频一区二| 欧美在线不卡视频| 色美美综合视频| 色久优优欧美色久优优| 不卡大黄网站免费看| 高清不卡在线观看| 国产在线视视频有精品| 久久精品国产精品青草| 日本v片在线高清不卡在线观看| 亚洲五码中文字幕| 亚洲男人电影天堂| 国产精品色在线| 日本一区二区三区电影| 国产喂奶挤奶一区二区三区| 久久久国产精华| 久久久久久免费| 亚洲国产精品99久久久久久久久| 久久久亚洲精华液精华液精华液 | 2014亚洲片线观看视频免费| 26uuu成人网一区二区三区| 日韩你懂的电影在线观看| 欧美一级精品在线| 亚洲精品一线二线三线| 久久久久久久久久久电影| 日本一区免费视频| 亚洲欧洲日韩一区二区三区| 亚洲激情第一区| 亚洲大片在线观看| 日本成人在线网站| 国产一区二区三区四| 成人性生交大片免费看中文| 色婷婷av一区二区三区软件| 欧美性大战xxxxx久久久| 777欧美精品| 久久久91精品国产一区二区精品 | 久久影院午夜片一区| 国产人久久人人人人爽| ●精品国产综合乱码久久久久| 亚洲美女在线国产| 奇米777欧美一区二区| 国产盗摄一区二区三区| 欧洲精品一区二区三区在线观看| 91精品国产综合久久精品麻豆| 精品第一国产综合精品aⅴ| 国产欧美精品一区| 亚洲国产视频在线| 精品在线你懂的| 91在线精品秘密一区二区| 91精品国产综合久久久久久漫画 | 欧美精品一区视频| 中文字幕一区二区三| 天天综合天天综合色| 国产寡妇亲子伦一区二区| 色系网站成人免费| 欧美一区二区三区在线电影| 国产精品欧美一区喷水| 亚洲成人激情社区| 国产成人亚洲综合a∨猫咪| 91福利精品第一导航| 精品久久久久一区二区国产| 一区二区三区在线观看动漫| 精品在线免费观看| 欧美影片第一页| 国产视频一区二区在线观看| 午夜欧美2019年伦理| 国产成人综合亚洲91猫咪| 欧美美女激情18p| 亚洲视频在线观看三级| 久久99精品国产麻豆婷婷| 欧美少妇bbb| 国产精品白丝在线| 国产做a爰片久久毛片| 欧美午夜片在线观看| 国产精品美女久久久久久久网站| 麻豆免费精品视频| 91久久精品一区二区| 国产欧美一区二区三区网站| 久久国内精品视频| 欧美老人xxxx18| 亚洲麻豆国产自偷在线| 国产裸体歌舞团一区二区| 3d动漫精品啪啪1区2区免费| 亚洲男同性恋视频| 成人aaaa免费全部观看| 久久久久久久电影| 美女一区二区三区在线观看| 欧美精品免费视频| 一区二区三区在线观看视频| 99精品国产99久久久久久白柏 | 成人ar影院免费观看视频| 精品少妇一区二区三区视频免付费 | 亚洲一区在线观看网站| 成人精品视频.| 国产精品毛片久久久久久| 国产乱人伦偷精品视频不卡| 久久综合九色综合97婷婷| 人禽交欧美网站| 91精品国产综合久久久久久久久久| 一区二区三区在线视频播放| 在线免费观看不卡av| 亚洲精品乱码久久久久久久久 | 欧美三级资源在线| 亚洲人成电影网站色mp4| 99久久er热在这里只有精品15| 国产欧美日本一区视频| 成人在线一区二区三区| 国产精品高潮呻吟久久| 97精品国产露脸对白| 一级日本不卡的影视| 欧美日韩一区二区欧美激情| 日本中文字幕一区| 日韩欧美www| 国产精品一区二区三区四区| 日本一区二区视频在线| 99久久精品费精品国产一区二区| 亚洲激情av在线| 欧美精三区欧美精三区| 免费日韩伦理电影| 精品国产91乱码一区二区三区| 国产精品综合视频| 中文字幕永久在线不卡| 日本伦理一区二区| 日本欧美肥老太交大片| 久久亚洲捆绑美女| 99re视频精品| 日韩精品福利网| 久久亚洲一区二区三区明星换脸| 成人一区二区三区视频| 一级女性全黄久久生活片免费| 欧美一区二区三区男人的天堂| 国产在线国偷精品免费看| 国产精品嫩草99a| 欧美日韩国产综合久久| 免费看欧美女人艹b| 国产精品天干天干在线综合| 欧美日韩美少妇|