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

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

?? main.s

?? avr icc 平臺(tái)開(kāi)發(fā)的pwm模擬功能
?? S
字號(hào):
	.module main.c
	.area data(ram, con, rel)
_data::
	.blkb 2
	.area idata
	.byte 0,0
	.area data(ram, con, rel)
	.blkb 2
	.area idata
	.byte 0,0
	.area data(ram, con, rel)
	.dbfile D:\NEW\AVR_PWM/main.h
	.dbsym e data _data A[4:4]c
_CNT::
	.blkb 1
	.area idata
	.byte 0
	.area data(ram, con, rel)
	.dbfile D:\NEW\AVR_PWM/main.h
	.dbsym e CNT _CNT c
_OcrReg::
	.blkb 2
	.area idata
	.word 1024
	.area data(ram, con, rel)
	.dbfile D:\NEW\AVR_PWM/main.h
	.dbfile D:\NEW\AVR_PWM\main.c
	.dbsym e OcrReg _OcrReg I
_Icr1Reg::
	.blkb 2
	.area idata
	.word 2047
	.area data(ram, con, rel)
	.dbfile D:\NEW\AVR_PWM\main.c
	.dbsym e Icr1Reg _Icr1Reg I
	.area text(rom, con, rel)
	.dbfile D:\NEW\AVR_PWM\main.c
	.dbfunc e init _init fV
	.even
_init::
	.dbline -1
	.dbline 23
; #define MAIN_C
; #include "includes.h"
; /***************************/
; /*PWM*/
; /*晶振為4MHz*/
; /*利用Timer1的OC1A腳輸出占空比可調(diào)的信號(hào)*/
; /*通過(guò)按鍵控制OCR1A的值*/
; /***************************/
; 
; #define PwmOut     PD5     //A通道的PWM輸出
; #define OCR        OCR1A
; #define KeyUp      PA0     //增大PWM值的按鍵
; #define KeyDown    PA1     //減小PWM值的按鍵
; #define Above      PA2     //設(shè)置位值過(guò)高指示
; #define Below      PA3     //設(shè)置位值過(guò)低指示
; #define STEP       64      //定義按鍵時(shí)的步進(jìn)值
; int OcrReg = 1024;         //OCR1A初始值
; int Icr1Reg = 0x7ff;       //PWM的計(jì)數(shù)頂部值  Icr1Reg = 2047
; //unsigned char *show = "0000"; 
; unsigned char temp;
; 
; void init(void)   //初始化函數(shù)
; {
	.dbline 25
;     //比較匹配時(shí)清零,計(jì)數(shù)到最大時(shí)置位OC1A
;  TCCR1A |= (1<<COM1A1)|(1<<PWM11);/*PWM11=WGM11 name changed*/  
	in R24,0x2f
	ori R24,130
	out 0x2f,R24
	.dbline 27
;     //11位分辨率,快速PWM模式,使用系統(tǒng)時(shí)鐘作為計(jì)數(shù)時(shí)鐘
;     TCCR1B |= (1<<WGM13)|(1<<WGM12)|(1<<CS10);
	in R24,0x2e
	ori R24,25
	out 0x2e,R24
	.dbline 28
;     ICR1   = Icr1Reg;  
	lds R2,_Icr1Reg
	lds R3,_Icr1Reg+1
	out 0x27,R3
	out 0x26,R2
	.dbline 29
;     OCR    = 0 ;
	clr R2
	clr R3
	out 0x2b,R3
	out 0x2a,R2
	.dbline 30
;     DDRD  |= (1<<PwmOut);          //置PWM為輸出
	sbi 0x11,5
	.dbline 31
;     DDRA  |= (1<<Above)|(1<<Below);      //指示燈定義為輸出
	in R24,0x1a
	ori R24,12
	out 0x1a,R24
	.dbline 32
;     DDRA  &= ~((1<<KeyUp)|(1<<KeyDown)); //按鍵定義為輸入
	in R24,0x1a
	andi R24,252
	out 0x1a,R24
	.dbline 33
;     PORTA |= (1<<KeyUp)|(1<<KeyDown);    //按鍵開(kāi)啟上拉
	in R24,0x1b
	ori R24,3
	out 0x1b,R24
	.dbline 34
;     PORTA |= (1<<Above)|(1<<Below);      //關(guān)閉兩個(gè)指示燈
	in R24,0x1b
	ori R24,12
	out 0x1b,R24
	.dbline -2
	.dbline 37
;     //TIMSK |= (1<<OCIE1A);   //允許計(jì)數(shù)器比較匹配中斷
;     //SREG  |= (1<<7);   //開(kāi)全局中斷
; }
L1:
	.dbline 0 ; func end
	ret
	.dbend
	.dbfunc e ShowValue _ShowValue fV
;           temp -> R20,R21
;          value -> R22,R23
	.even
_ShowValue::
	xcall push_gset2
	movw R22,R16
	sbiw R28,2
	.dbline -1
	.dbline 40
; 
; void  ShowValue(int value)
; {
	.dbline 41
;     unsigned char *temp = "0000";
	ldi R20,<L3
	ldi R21,>L3
	.dbline 42
;     temp[0] = value/1000 + 0x30;
	ldi R18,1000
	ldi R19,3
	movw R16,R22
	xcall div16s
	movw R24,R16
	adiw R24,48
	movw R30,R20
	std z+0,R24
	.dbline 43
;     value = value%1000;
	ldi R18,1000
	ldi R19,3
	movw R16,R22
	xcall mod16s
	movw R22,R16
	.dbline 44
;     temp[1] = value/100 +0x30;
	ldi R18,100
	ldi R19,0
	xcall div16s
	movw R24,R16
	adiw R24,48
	movw R30,R20
	std z+1,R24
	.dbline 45
;     value = value%100;
	ldi R18,100
	ldi R19,0
	movw R16,R22
	xcall mod16s
	movw R22,R16
	.dbline 46
;     temp[2] = value/10 + 0x30;
	ldi R18,10
	ldi R19,0
	xcall div16s
	movw R24,R16
	adiw R24,48
	movw R30,R20
	std z+2,R24
	.dbline 47
;     value = value%10;
	ldi R18,10
	ldi R19,0
	movw R16,R22
	xcall mod16s
	movw R22,R16
	.dbline 48
;     temp[3] = value + 0x30;  
	movw R24,R22
	adiw R24,48
	movw R30,R20
	std z+3,R24
	.dbline 49
;     ClearLine(2);
	ldi R16,2
	xcall _ClearLine
	.dbline 50
;     LCD_DisplayString(2,1,"OCR1A = ");
	ldi R24,<L4
	ldi R25,>L4
	std y+1,R25
	std y+0,R24
	ldi R18,1
	ldi R16,2
	xcall _LCD_DisplayString
	.dbline 51
;     LCD_DisplayString(2,9,temp);  
	std y+1,R21
	std y+0,R20
	ldi R18,9
	ldi R16,2
	xcall _LCD_DisplayString
	.dbline -2
	.dbline 52
; }
L2:
	adiw R28,2
	xcall pop_gset2
	.dbline 0 ; func end
	ret
	.dbsym r temp 20 pc
	.dbsym r value 22 I
	.dbend
	.dbfunc e main _main fV
;              i -> R20
	.even
_main::
	sbiw R28,2
	.dbline -1
	.dbline 55
;  
; void main(void)
; { 
	.dbline 57
;     unsigned char i; 
;     init();
	xcall _init
	.dbline 58
;     Init_LCD();
	xcall _Init_LCD
	.dbline 59
;     OCR = OcrReg;
	lds R2,_OcrReg
	lds R3,_OcrReg+1
	out 0x2b,R3
	out 0x2a,R2
	.dbline 60
;     LCD_DisplayString(1,1,"PWM test");
	ldi R24,<L6
	ldi R25,>L6
	std y+1,R25
	std y+0,R24
	ldi R18,1
	ldi R16,1
	xcall _LCD_DisplayString
	.dbline 61
;     LCD_DisplayString(2,1,"OCR1A = ");
	ldi R24,<L4
	ldi R25,>L4
	std y+1,R25
	std y+0,R24
	ldi R18,1
	ldi R16,2
	xcall _LCD_DisplayString
	.dbline 62
;     ShowValue(OcrReg);
	lds R16,_OcrReg
	lds R17,_OcrReg+1
	xcall _ShowValue
	xjmp L8
L7:
	.dbline 64
;     while(1)
;     {                
	.dbline 65
;         if(!(PINA&(1<<KeyUp)))
	sbic 0x19,0
	rjmp L10
	.dbline 66
;         {
	.dbline 67
;             delay_nms(10);    //按鍵消抖
	ldi R16,10
	ldi R17,0
	xcall _delay_nms
	.dbline 68
;             if(!(PINA&(1<<KeyUp)))
	sbic 0x19,0
	rjmp L12
	.dbline 69
;             {
L14:
	.dbline 70
L15:
	.dbline 70
;                 while(!(PINA&(1<<KeyUp)));  //等待按鍵釋放
	sbis 0x19,0
	rjmp L14
	.dbline 71
;                 if(OcrReg >= (Icr1Reg+1))
	lds R24,_Icr1Reg
	lds R25,_Icr1Reg+1
	adiw R24,1
	lds R2,_OcrReg
	lds R3,_OcrReg+1
	cp R2,R24
	cpc R3,R25
	brlt L17
	.dbline 72
;                 {
	.dbline 73
;                     for(i=0;i<5;i++)
	clr R20
	xjmp L22
L19:
	.dbline 74
	.dbline 75
	ldi R24,4
	in R2,0x1b
	eor R2,R24
	out 0x1b,R2
	.dbline 76
	ldi R16,200
	ldi R17,0
	xcall _delay_nms
	.dbline 77
L20:
	.dbline 73
	inc R20
L22:
	.dbline 73
	cpi R20,5
	brlo L19
	.dbline 78
;                     {
;                         PORTA ^= (1<<Above);
;                         delay_nms(200);
;                     }
;                     ClearLine(2);
	ldi R16,2
	xcall _ClearLine
	.dbline 79
;                     LCD_DisplayString(2,1,"Value MAX!");
	ldi R24,<L23
	ldi R25,>L23
	std y+1,R25
	std y+0,R24
	ldi R18,1
	ldi R16,2
	xcall _LCD_DisplayString
	.dbline 80
;                 }
	xjmp L18
L17:
	.dbline 82
;                 else
;                 {
	.dbline 83
;                     PORTA |= (1<<Above);
	sbi 0x1b,2
	.dbline 84
;                     OcrReg += STEP;                    
	lds R24,_OcrReg
	lds R25,_OcrReg+1
	subi R24,192  ; offset = 64
	sbci R25,255
	sts _OcrReg+1,R25
	sts _OcrReg,R24
	.dbline 85
;                     OCR = OcrReg;
	out 0x2b,R25
	out 0x2a,R24
	.dbline 86
;                     ShowValue(OcrReg);
	movw R16,R24
	xcall _ShowValue
	.dbline 87
;                 }
L18:
	.dbline 88
;             }
L12:
	.dbline 89
;         }
L10:
	.dbline 90
;         if(!(PINA&(1<<KeyDown)))
	sbic 0x19,1
	rjmp L24
	.dbline 91
;         {
	.dbline 92
;             delay_nms(10);    //按鍵消抖
	ldi R16,10
	ldi R17,0
	xcall _delay_nms
	.dbline 93
;             if(!(PINA&(1<<KeyDown)))
	sbic 0x19,1
	rjmp L26
	.dbline 94
;             {
L28:
	.dbline 95
L29:
	.dbline 95
;                 while(!(PINA&(1<<KeyDown)));  //等待按鍵釋放
	sbis 0x19,1
	rjmp L28
	.dbline 96
;                 if(OcrReg <= 0)
	clr R2
	clr R3
	lds R4,_OcrReg
	lds R5,_OcrReg+1
	cp R2,R4
	cpc R3,R5
	brlt L31
	.dbline 97
;                 {
	.dbline 98
;                     for(i=0;i<5;i++)
	clr R20
	xjmp L36
L33:
	.dbline 99
	.dbline 100
	ldi R24,8
	in R2,0x1b
	eor R2,R24
	out 0x1b,R2
	.dbline 101
	ldi R16,200
	ldi R17,0
	xcall _delay_nms
	.dbline 102
L34:
	.dbline 98
	inc R20
L36:
	.dbline 98
	cpi R20,5
	brlo L33
	.dbline 103
;                     {
;                         PORTA ^= (1<<Below);
;                         delay_nms(200);
;                     }
;                      ClearLine(2);
	ldi R16,2
	xcall _ClearLine
	.dbline 104
;                     LCD_DisplayString(2,1,"Value MIN!");
	ldi R24,<L37
	ldi R25,>L37
	std y+1,R25
	std y+0,R24
	ldi R18,1
	ldi R16,2
	xcall _LCD_DisplayString
	.dbline 105
;                 }
	xjmp L32
L31:
	.dbline 107
;                 else
;                 {
	.dbline 108
;                     PORTA |= (1<<Below);
	sbi 0x1b,3
	.dbline 109
;                     OcrReg -= STEP;
	lds R24,_OcrReg
	lds R25,_OcrReg+1
	subi R24,64
	sbci R25,0
	sts _OcrReg+1,R25
	sts _OcrReg,R24
	.dbline 110
;                     OCR = OcrReg;
	out 0x2b,R25
	out 0x2a,R24
	.dbline 111
;                     ShowValue(OcrReg);
	movw R16,R24
	xcall _ShowValue
	.dbline 112
;                 }
L32:
	.dbline 113
;             }
L26:
	.dbline 114
;         }       
L24:
	.dbline 115
L8:
	.dbline 63
	xjmp L7
X0:
	.dbline -2
	.dbline 116
;     }
; }
L5:
	adiw R28,2
	.dbline 0 ; func end
	ret
	.dbsym r i 20 c
	.dbend
	.area bss(ram, con, rel)
	.dbfile D:\NEW\AVR_PWM\main.c
_temp::
	.blkb 1
	.dbsym e temp _temp c
_KeyDown::
	.blkb 1
	.dbfile D:\NEW\AVR_PWM/main.h
	.dbsym e KeyDown _KeyDown c
_KeyUp::
	.blkb 1
	.dbsym e KeyUp _KeyUp c
	.area data(ram, con, rel)
	.dbfile D:\NEW\AVR_PWM/main.h
L37:
	.blkb 11
	.area idata
	.byte 'V,'a,'l,'u,'e,32,'M,'I,'N,33,0
	.area data(ram, con, rel)
	.dbfile D:\NEW\AVR_PWM/main.h
L23:
	.blkb 11
	.area idata
	.byte 'V,'a,'l,'u,'e,32,'M,'A,'X,33,0
	.area data(ram, con, rel)
	.dbfile D:\NEW\AVR_PWM/main.h
L6:
	.blkb 9
	.area idata
	.byte 'P,'W,'M,32,'t,'e,'s,'t,0
	.area data(ram, con, rel)
	.dbfile D:\NEW\AVR_PWM/main.h
L4:
	.blkb 9
	.area idata
	.byte 'O,'C,'R,49,'A,32,61,32,0
	.area data(ram, con, rel)
	.dbfile D:\NEW\AVR_PWM/main.h
L3:
	.blkb 5
	.area idata
	.byte 48,48,48,48,0
	.area data(ram, con, rel)
	.dbfile D:\NEW\AVR_PWM/main.h

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲伦理在线免费看| 丝袜美腿高跟呻吟高潮一区| 亚洲精品欧美激情| 精品亚洲porn| 欧美日韩国产一区二区三区地区| 欧美成人vr18sexvr| 午夜在线电影亚洲一区| eeuss鲁片一区二区三区在线看| 色婷婷久久一区二区三区麻豆| 精品国产百合女同互慰| 亚洲一线二线三线久久久| 成人国产精品免费观看视频| 精品三级在线看| 亚洲高清免费在线| 欧美在线999| 亚洲男女一区二区三区| 成人污视频在线观看| 久久青草国产手机看片福利盒子| 日本不卡一区二区| 欧美日韩国产综合久久| 亚洲在线视频网站| av亚洲精华国产精华精| 国产午夜亚洲精品理论片色戒 | 欧美日韩成人在线一区| 亚洲乱码中文字幕| av在线不卡电影| 国产日韩精品一区| 国产传媒一区在线| 国产精品美女久久久久久久| 国产一区二区三区综合| 精品国产乱码久久久久久夜甘婷婷 | 久久久久久麻豆| 精品系列免费在线观看| 久久欧美一区二区| 国产精品99久| 国产精品无圣光一区二区| 国产成人精品免费一区二区| 中文字幕va一区二区三区| 国产高清精品网站| 欧美国产1区2区| 92精品国产成人观看免费| 亚洲免费观看高清完整版在线| 日本道在线观看一区二区| 一区二区三区高清不卡| 欧美日韩精品系列| 麻豆国产精品一区二区三区| 26uuu欧美| yourporn久久国产精品| 一区二区三区精品在线观看| 欧美美女一区二区三区| 捆绑调教美女网站视频一区| 久久久久久久久久久久久久久99| 国产寡妇亲子伦一区二区| 亚洲色图色小说| 7777精品伊人久久久大香线蕉经典版下载 | 日本美女视频一区二区| 久久久五月婷婷| 91小视频免费观看| 丝袜诱惑亚洲看片| 久久久久久免费| 日本高清无吗v一区| 日本色综合中文字幕| 国产精品美女久久久久久久久 | 欧美肥妇毛茸茸| 国产麻豆精品theporn| 亚洲精品亚洲人成人网在线播放| 91麻豆精品国产91久久久久久久久| 国产一区二区不卡| 亚洲大片免费看| 欧美韩日一区二区三区四区| 欧美美女一区二区在线观看| 国产成人无遮挡在线视频| 亚洲电影你懂得| 中文字幕国产一区二区| 91精品在线一区二区| 99精品在线观看视频| 看电影不卡的网站| 亚洲自拍偷拍综合| 在线观看亚洲a| 韩日欧美一区二区三区| 亚洲天堂av老司机| 精品国产亚洲一区二区三区在线观看| 成人精品国产免费网站| 久久99国产精品久久99| 亚洲一区在线观看免费观看电影高清| 国产日产欧美一区| 69堂国产成人免费视频| 在线中文字幕一区二区| 国产成人精品免费看| 美女视频黄a大片欧美| 亚洲综合在线免费观看| 欧美激情在线一区二区| 精品国产99国产精品| 在线不卡中文字幕| 91国产免费观看| 成人一区在线观看| 国产一区二区三区四区五区美女| 亚洲成人免费影院| 亚洲激情图片小说视频| 自拍偷拍欧美精品| 国产精品国产三级国产专播品爱网| 欧美一级片免费看| 91.成人天堂一区| 欧美日本国产一区| 欧美亚一区二区| 欧美影院午夜播放| 色婷婷精品大在线视频| 色综合婷婷久久| 色就色 综合激情| 一本色道久久加勒比精品 | 国产综合色视频| 久久电影网站中文字幕| 麻豆视频一区二区| 麻豆成人久久精品二区三区红| 亚洲无人区一区| 午夜视频一区在线观看| 香蕉av福利精品导航| 日韩中文欧美在线| 图片区日韩欧美亚洲| 午夜成人免费电影| 五月综合激情日本mⅴ| 美女久久久精品| 精品一区二区影视| 国产精品69毛片高清亚洲| 国产精品综合二区| 成人丝袜18视频在线观看| 91蝌蚪porny成人天涯| 欧洲一区二区av| 欧美一区二区三区婷婷月色| 欧美videossexotv100| 久久亚洲二区三区| 国产精品美女久久久久久久网站| 亚洲免费看黄网站| 日本va欧美va精品发布| 极品美女销魂一区二区三区免费 | 欧美精品一区二区三区蜜桃视频 | www.成人在线| 色噜噜狠狠成人中文综合| 欧美三区在线视频| 欧美电影免费观看高清完整版在| 久久久一区二区三区捆绑**| 一区在线播放视频| 亚洲二区视频在线| 久久99久久久久久久久久久| 成人av在线影院| 欧美精品v国产精品v日韩精品 | 狠狠狠色丁香婷婷综合激情| 福利一区二区在线观看| 在线精品视频一区二区三四 | 亚洲欧美一区二区三区孕妇| 亚洲bt欧美bt精品| 国产宾馆实践打屁股91| 在线观看日韩电影| 26uuu亚洲| 午夜精品免费在线| 国产精品一级二级三级| 欧亚洲嫩模精品一区三区| 欧美成人精品福利| 亚洲色图制服诱惑 | 玖玖九九国产精品| av高清久久久| 精品久久久久久亚洲综合网 | 亚洲人成网站影音先锋播放| 日韩av网站免费在线| 国产99久久久久| 制服.丝袜.亚洲.中文.综合| 中文字幕在线观看不卡视频| 蜜臀av一区二区在线免费观看| 色综合久久久网| 欧美激情一区二区三区蜜桃视频 | 夜夜操天天操亚洲| 国产精品一二三区| 日韩欧美色综合网站| 亚洲一区二区三区不卡国产欧美| 波多野结衣中文字幕一区| 精品国产乱子伦一区| 日本免费新一区视频| 欧美日韩一区二区三区四区五区| 亚洲色图另类专区| 粉嫩在线一区二区三区视频| 欧美电影免费观看高清完整版| 亚洲成av人片观看| 欧美性xxxxx极品少妇| 亚洲男女毛片无遮挡| 波多野结衣中文字幕一区二区三区 | 日韩一区二区三区视频在线| 亚洲精品高清在线| 91在线播放网址| 亚洲欧美日韩在线不卡| 9i在线看片成人免费| 欧美高清在线精品一区| 国产suv一区二区三区88区| 久久综合五月天婷婷伊人| 久久精品99久久久| 欧美一区2区视频在线观看| 天涯成人国产亚洲精品一区av| 一本久道中文字幕精品亚洲嫩| 18涩涩午夜精品.www| 91在线免费播放| 亚洲美女视频一区|