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

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

?? led.lis

?? 1.利用PWM控制占空比實現LED的亮暗。 2.可以用UP DOWM鍵進行控制亮暗。
?? LIS
字號:
                        .module LED.c
                        .area text(rom, con, rel)
 0000                   .dbfile F:\AVR資料\臺燈\LED.c
 0000                   .dbfunc e port_init _port_init fV
                        .even
 0000           _port_init::
 0000                   .dbline -1
 0000                   .dbline 13
 0000           ; //ICC-AVR application builder // Target : M16  
 0000           ;       // Crystal: 4.0000Mhz  
 0000           ;       #include <iom16v.h>  
 0000           ;       #include <macros.h>  
 0000           ;       #define uchar unsigned char 
 0000           ;       #define uint unsigned int 
 0000           ;       void port_init(void); 
 0000           ;       void timer0_init(void); 
 0000           ;       void init_devices(void); 
 0000           ;       void delay_short(uint t); 
 0000           ;       uchar scan_key(void); 
 0000           ;       void port_init(void)  
 0000           ;       {  
 0000                   .dbline 14
 0000           ;       PORTA = 0x00;  
 0000 2224              clr R2
 0002 2BBA              out 0x1b,R2
 0004                   .dbline 15
 0004           ;       DDRA   = 0x00;  
 0004 2ABA              out 0x1a,R2
 0006                   .dbline 16
 0006           ;       PORTB = BIT(PB3);  
 0006 88E0              ldi R24,8
 0008 88BB              out 0x18,R24
 000A                   .dbline 17
 000A           ;       DDRB   = BIT(PB3);  
 000A 87BB              out 0x17,R24
 000C                   .dbline 18
 000C           ;       PORTC = 0x00; //m103 output only  
 000C 25BA              out 0x15,R2
 000E                   .dbline 19
 000E           ;       DDRC   = 0x00;  
 000E 24BA              out 0x14,R2
 0010                   .dbline 20
 0010           ;       PORTD = 0x07;  
 0010 87E0              ldi R24,7
 0012 82BB              out 0x12,R24
 0014                   .dbline 21
 0014           ;       DDRD   = 0x00;  
 0014 21BA              out 0x11,R2
 0016                   .dbline -2
 0016           L1:
 0016                   .dbline 0 ; func end
 0016 0895              ret
 0018                   .dbend
 0018                   .dbfunc e timer0_init _timer0_init fV
                        .even
 0018           _timer0_init::
 0018                   .dbline -1
 0018                   .dbline 27
 0018           ;       }  
 0018           ;       // WGM: PWM Phase correct 
 0018           ;       // desired value: 1KHz 
 0018           ;       // actual value:   0.980KHz (-2.0%) 
 0018           ;       void timer0_init(void)  
 0018           ;       {  
 0018                   .dbline 28
 0018           ;       TCCR0 = 0x00; //stop  
 0018 2224              clr R2
 001A 23BE              out 0x33,R2
 001C                   .dbline 29
 001C           ;       TCNT0 = 0x01; //set count  
 001C 81E0              ldi R24,1
 001E 82BF              out 0x32,R24
 0020                   .dbline 30
 0020           ;       OCR0   = 0xFF;   //set compare  
 0020 8FEF              ldi R24,255
 0022 8CBF              out 0x3c,R24
 0024                   .dbline 31
 0024           ;       TCCR0 = 0x62; //start timer ; 相位修正, 8分頻 
 0024 82E6              ldi R24,98
 0026 83BF              out 0x33,R24
 0028                   .dbline -2
 0028           L2:
 0028                   .dbline 0 ; func end
 0028 0895              ret
 002A                   .dbend
 002A                   .dbfunc e init_devices _init_devices fV
                        .even
 002A           _init_devices::
 002A                   .dbline -1
 002A                   .dbline 35
 002A           ;       }  
 002A           ;       //call this routine to initialize all peripherals  
 002A           ;       void init_devices(void)  
 002A           ;       {  
 002A                   .dbline 37
 002A           ;       //stop errant interrupts until set up  
 002A           ;       CLI(); //disable all interrupts  
 002A F894              cli
 002C                   .dbline 38
 002C           ;       port_init();  
 002C E9DF              xcall _port_init
 002E                   .dbline 39
 002E           ;       timer0_init();  
 002E F4DF              xcall _timer0_init
 0030                   .dbline 40
 0030           ;       MCUCR = 0x00;  
 0030 2224              clr R2
 0032 25BE              out 0x35,R2
 0034                   .dbline 41
 0034           ;       GICR   = 0x00;  
 0034 2BBE              out 0x3b,R2
 0036                   .dbline 42
 0036           ;       TIMSK = 0x00; //timer interrupt sources  
 0036 29BE              out 0x39,R2
 0038                   .dbline 43
 0038           ;       SEI(); //re-enable interrupts  
 0038 7894              sei
 003A                   .dbline -2
 003A           L3:
 003A                   .dbline 0 ; func end
 003A 0895              ret
 003C                   .dbend
 003C                   .dbfunc e delay_short _delay_short fV
 003C           ;              i -> R20,R21
 003C           ;              t -> R16,R17
                        .even
 003C           _delay_short::
 003C 0E940000          xcall push_gset1
 0040                   .dbline -1
 0040                   .dbline 47
 0040           ;       //all peripherals are now initialized  
 0040           ;       } 
 0040           ;       void delay_short(uint t) // 短延時 
 0040           ;       { 
 0040                   .dbline 49
 0040 4427              clr R20
 0042 5527              clr R21
 0044 02C0              xjmp L8
 0046           L5:
 0046                   .dbline 49
 0046           L6:
 0046                   .dbline 49
 0046 4F5F              subi R20,255  ; offset = 1
 0048 5F4F              sbci R21,255
 004A           L8:
 004A                   .dbline 49
 004A           ;          uint i; 
 004A           ;          for (i=0;i<t;i++); 
 004A 4017              cp R20,R16
 004C 5107              cpc R21,R17
 004E D8F3              brlo L5
 0050                   .dbline -2
 0050           L4:
 0050 0E940000          xcall pop_gset1
 0054                   .dbline 0 ; func end
 0054 0895              ret
 0056                   .dbsym r i 20 i
 0056                   .dbsym r t 16 i
 0056                   .dbend
 0056                   .dbfunc e scan_key _scan_key fc
 0056           ;              v -> R20
                        .even
 0056           _scan_key::
 0056 0E940000          xcall push_gset1
 005A                   .dbline -1
 005A                   .dbline 52
 005A           ;       } 
 005A           ;       uchar scan_key(void)   // 按鍵掃瞄 
 005A           ;       {  
 005A                   .dbline 55
 005A           ;          uchar v; 
 005A           ;          
 005A           ;          v = 0;      
 005A 4427              clr R20
 005C                   .dbline 57
 005C           ;          
 005C           ;          if ((PIND & 0x07) != 0x07) 
 005C 80B3              in R24,0x10
 005E 8770              andi R24,7
 0060 8730              cpi R24,7
 0062 91F0              breq L19
 0064                   .dbline 58
 0064           ;          { 
 0064                   .dbline 60
 0064           ;         
 0064           ;          if ((PIND & 0x01) == 0)  
 0064 8099              sbic 0x10,0
 0066 04C0              rjmp L12
 0068                   .dbline 61
 0068           ;          { 
 0068                   .dbline 62
 0068           ;           v = 1; 
 0068 41E0              ldi R20,1
 006A                   .dbline 63
 006A           ;            delay_short(1000);   
 006A 08EE              ldi R16,1000
 006C 13E0              ldi R17,3
 006E E6DF              xcall _delay_short
 0070                   .dbline 64
 0070           ;          } 
 0070           L12:
 0070                   .dbline 66
 0070           ;          
 0070           ;          if ((PIND & 0x2) == 0)  
 0070 8199              sbic 0x10,1
 0072 04C0              rjmp L14
 0074                   .dbline 67
 0074           ;          { 
 0074                   .dbline 68
 0074           ;            v = 2; 
 0074 42E0              ldi R20,2
 0076                   .dbline 69
 0076           ;            delay_short(1000);   
 0076 08EE              ldi R16,1000
 0078 13E0              ldi R17,3
 007A E0DF              xcall _delay_short
 007C                   .dbline 70
 007C           ;          } 
 007C           L14:
 007C                   .dbline 72
 007C           ;           
 007C           ;          if ((PIND & 0x4) == 0)  
 007C 8299              sbic 0x10,2
 007E 04C0              rjmp L19
 0080                   .dbline 73
 0080           ;          { 
 0080                   .dbline 74
 0080           ;            v = 3; 
 0080 43E0              ldi R20,3
 0082                   .dbline 75
 0082           ;            delay_short(1000);   
 0082 08EE              ldi R16,1000
 0084 13E0              ldi R17,3
 0086 DADF              xcall _delay_short
 0088                   .dbline 76
 0088           ;          } 
 0088                   .dbline 77
 0088           ;          }; 
 0088                   .dbline 77
 0088           L18:
 0088                   .dbline 78
 0088           L19:
 0088                   .dbline 78
 0088           ;          while((PIND & 0x07) != 0x07);    // 判斷按鍵是不是放開    
 0088 80B3              in R24,0x10
 008A 8770              andi R24,7
 008C 8730              cpi R24,7
 008E E1F7              brne L18
 0090                   .dbline 79
 0090           ;          return v;   
 0090 042F              mov R16,R20
 0092                   .dbline -2
 0092           L9:
 0092 0E940000          xcall pop_gset1
 0096                   .dbline 0 ; func end
 0096 0895              ret
 0098                   .dbsym r v 20 c
 0098                   .dbend
 0098                   .dbfunc e main _main fV
 0098           ;         OCR0_V -> R20
 0098           ;            key -> R22
                        .even
 0098           _main::
 0098                   .dbline -1
 0098                   .dbline 82
 0098           ;       } 
 0098           ;       void main(void)  
 0098           ;       {   
 0098                   .dbline 85
 0098           ;       uchar key, OCR0_V; 
 0098           ;         
 0098           ;       init_devices();  
 0098 C8DF              xcall _init_devices
 009A                   .dbline 86
 009A           ;       OCR0_V = 0xff; 
 009A 4FEF              ldi R20,255
 009C 11C0              xjmp L23
 009E           L22:
 009E                   .dbline 89
 009E           ;         
 009E           ;       while(1) 
 009E           ;       { 
 009E                   .dbline 90
 009E           ;           key = scan_key(); 
 009E DBDF              xcall _scan_key
 00A0 602F              mov R22,R16
 00A2                   .dbline 92
 00A2           ;           
 00A2           ;           if (key > 0) 
 00A2 2224              clr R2
 00A4 2016              cp R2,R16
 00A6 60F4              brsh L25
 00A8                   .dbline 93
 00A8           ;           { 
 00A8                   .dbline 94
 00A8           ;             if (key==1) // 減少佔空比 
 00A8 0130              cpi R16,1
 00AA 11F4              brne L27
 00AC                   .dbline 95
 00AC           ;            {  
 00AC                   .dbline 96
 00AC           ;              OCR0_V -= 10; 
 00AC 4A50              subi R20,10
 00AE                   .dbline 97
 00AE           ;              OCR0 = OCR0_V; 
 00AE 4CBF              out 0x3c,R20
 00B0                   .dbline 98
 00B0           L27:
 00B0                   .dbline 98
 00B0           ;            }; 
 00B0                   .dbline 100
 00B0           ;            
 00B0           ;             if (key==2) // 增加佔空比 
 00B0 6230              cpi R22,2
 00B2 11F4              brne L29
 00B4                   .dbline 101
 00B4           ;            {  
 00B4                   .dbline 102
 00B4           ;              OCR0_V += 10; 
 00B4 465F              subi R20,246    ; addi 10
 00B6                   .dbline 103
 00B6           ;              OCR0 = OCR0_V; 
 00B6 4CBF              out 0x3c,R20
 00B8                   .dbline 104
 00B8           L29:
 00B8                   .dbline 104
 00B8           ;            };     
 00B8                   .dbline 106
 00B8           ;            
 00B8           ;             if (key==3) // 全黑,佔空比為100%  
 00B8 6330              cpi R22,3
 00BA 11F4              brne L31
 00BC                   .dbline 107
 00BC           ;            {  
 00BC                   .dbline 108
 00BC           ;              OCR0_V = 0xff; 
 00BC 4FEF              ldi R20,255
 00BE                   .dbline 109
 00BE           ;              OCR0 = OCR0_V; 
 00BE 4CBF              out 0x3c,R20
 00C0                   .dbline 110
 00C0           L31:
 00C0                   .dbline 110
 00C0           ;            };       
 00C0                   .dbline 111
 00C0           ;           } 
 00C0           L25:
 00C0                   .dbline 112
 00C0           L23:
 00C0                   .dbline 88
 00C0 EECF              xjmp L22
 00C2           X0:
 00C2                   .dbline 112
 00C2           ;       };  
 00C2                   .dbline -2
 00C2           L21:
 00C2                   .dbline 0 ; func end
 00C2 0895              ret
 00C4                   .dbsym r OCR0_V 20 c
 00C4                   .dbsym r key 22 c
 00C4                   .dbend

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本一区二区三区四区 | 成人伦理片在线| 成+人+亚洲+综合天堂| 91欧美一区二区| 蜜乳av一区二区| 精品亚洲欧美一区| 91精品午夜视频| 国产精品一二三四| 亚洲成av人综合在线观看| 久久免费国产精品| 一区二区三区免费在线观看| 婷婷综合在线观看| 国产黄人亚洲片| 欧美日韩国产乱码电影| 久久精品一区二区三区四区| 中文字幕一区不卡| 经典三级视频一区| 欧美三级三级三级爽爽爽| 日韩欧美国产一区二区三区 | 精品乱人伦一区二区三区| 亚洲免费三区一区二区| 91麻豆蜜桃一区二区三区| 欧美激情一二三区| 在线免费观看日本一区| 亚洲欧洲日韩在线| 色94色欧美sute亚洲线路一ni | 日韩欧美国产麻豆| 精品无码三级在线观看视频| 久久婷婷综合激情| 91麻豆精品在线观看| 午夜激情综合网| 国产丝袜在线精品| 欧美视频一区二区在线观看| 久久精品国产999大香线蕉| 欧美激情资源网| 国产99精品在线观看| 日本韩国欧美一区二区三区| 三级亚洲高清视频| 亚洲小少妇裸体bbw| 国产一区啦啦啦在线观看| 亚洲成a人片在线不卡一二三区| 国产欧美一区二区精品仙草咪| 亚洲视频中文字幕| 91美女片黄在线| 激情久久五月天| 经典三级视频一区| 精品久久久久香蕉网| 在线看国产日韩| 日韩免费电影网站| 久久99日本精品| 欧美电影免费观看高清完整版在| 亚洲免费观看视频| 成人免费视频播放| 国产欧美精品一区二区色综合朱莉| 日本不卡高清视频| 在线观看视频一区二区| 91亚洲大成网污www| 欧美性猛交xxxx黑人交| 欧美日韩国产一级| 日韩欧美国产小视频| 精品成人一区二区三区四区| 国产三区在线成人av| 亚洲影院久久精品| 精品一区二区三区久久| 欧美日韩一级二级三级| 高清国产一区二区| 日韩成人精品在线| 欧美在线视频日韩| 国产一区二区主播在线| 国产欧美日韩在线看| 欧美最新大片在线看| 久久99久久99| 亚洲综合另类小说| 国产午夜精品久久久久久免费视 | 欧美日韩国产首页| 奇米色777欧美一区二区| 国产亚洲一区二区三区四区| 一本到三区不卡视频| 免费亚洲电影在线| 自拍av一区二区三区| 日韩一区二区三区电影在线观看| 激情五月激情综合网| 亚洲影视在线播放| 国产精品乱人伦| 欧美三级资源在线| 亚洲老妇xxxxxx| 国产午夜精品久久久久久久| 欧美最新大片在线看| 国产不卡视频一区| 美日韩一区二区| 久久久91精品国产一区二区三区| 欧洲另类一二三四区| 秋霞电影网一区二区| 精品一区二区三区免费播放| 日韩精品专区在线影院观看| 调教+趴+乳夹+国产+精品| 91精品国产综合久久久久久 | 成年人国产精品| 国产午夜精品理论片a级大结局| 日韩不卡手机在线v区| 国产欧美精品区一区二区三区| 亚洲欧美乱综合| 欧美久久高跟鞋激| 在线视频国产一区| 99麻豆久久久国产精品免费| 国产乱子伦视频一区二区三区 | 国产日韩欧美一区二区三区综合| 国产精品丝袜久久久久久app| 国产馆精品极品| 亚洲一线二线三线视频| 7777精品伊人久久久大香线蕉超级流畅| 亚洲精品视频在线观看免费| 欧美日本韩国一区| 懂色一区二区三区免费观看| 一区二区视频在线看| 久久婷婷综合激情| 欧美美女bb生活片| 色综合天天综合色综合av| 日韩av午夜在线观看| 亚洲欧美韩国综合色| 日韩欧美三级在线| 91精品国产一区二区三区蜜臀| 黄页视频在线91| 麻豆国产一区二区| 久久电影网站中文字幕| 国产精品原创巨作av| 一区二区久久久| www成人在线观看| 欧美一级日韩免费不卡| 91在线你懂得| 午夜精品久久久久| 久久青草国产手机看片福利盒子| 久久成人免费网| 日本视频中文字幕一区二区三区| 国产精品嫩草影院av蜜臀| 国产精一区二区三区| 国产一区二区三区日韩| 日本视频一区二区三区| 久久国产生活片100| 国产精品一区2区| 91啪在线观看| 亚洲午夜av在线| 亚洲电影你懂得| 精品一区二区免费视频| 成人一道本在线| 欧美自拍丝袜亚洲| 欧美一区二区三区男人的天堂| 欧美网站一区二区| 精品国产一二三| 亚洲精品va在线观看| 91女厕偷拍女厕偷拍高清| 日韩美女视频一区| 午夜激情综合网| 国产一区二区三区在线观看精品| www.亚洲免费av| 欧美日韩一级片网站| 蜜桃av噜噜一区| 成人av中文字幕| 欧美电视剧免费观看| 国产精品国产自产拍在线| 日韩精品乱码免费| 国产视频一区二区在线| 日韩一区二区麻豆国产| 国产在线一区二区| 亚洲成人动漫av| 粉嫩在线一区二区三区视频| 欧美日韩精品系列| 国产精品久久久久7777按摩 | 国产日本一区二区| 亚洲mv在线观看| 99久久国产免费看| 国产亚洲自拍一区| 日韩国产欧美在线观看| www.一区二区| 久久综合九色综合久久久精品综合 | 欧美激情在线免费观看| 亚洲大片在线观看| 粉嫩嫩av羞羞动漫久久久| 欧美日韩精品一区二区天天拍小说 | 有坂深雪av一区二区精品| 精品一区二区免费视频| 欧美区视频在线观看| 亚洲六月丁香色婷婷综合久久| 日本大胆欧美人术艺术动态| 色妞www精品视频| 一区免费观看视频| 福利一区福利二区| 91九色最新地址| 亚洲一区二区三区影院| 91麻豆国产在线观看| 99精品视频一区二区三区| 欧美日韩一卡二卡三卡| 日韩高清中文字幕一区| 91精品国产综合久久久蜜臀粉嫩 | 欧美日韩亚洲综合一区二区三区| 欧美午夜理伦三级在线观看| 亚洲综合男人的天堂| 久久久精品蜜桃| 欧美在线观看禁18| 夜夜嗨av一区二区三区|