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

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

?? led.s

?? AVR單片機 C語言程序設(shè)計經(jīng)典實用
?? S
字號:
	.module LED.c
	.area lit(rom, con, rel)
_Char_I::
	.byte 0,0
	.byte 130,254
	.byte 130,0
	.byte 0,0
	.dbfile E:\Steaven2000\AVR\AVR_Book\PROGRA~1\SOURCE~1\Code\LED大屏幕顯示系統(tǒng)設(shè)計\LED.c
	.dbsym e Char_I _Char_I A[8:8]kc
_Char_L::
	.byte 0,0
	.byte 254,2
	.byte 2,2
	.byte 0,0
	.dbsym e Char_L _Char_L A[8:8]kc
_Char_V::
	.byte 0,240
	.byte 8,4
	.byte 4,8
	.byte 240,0
	.dbsym e Char_V _Char_V A[8:8]kc
_Char_E::
	.byte 0,0
	.byte 254,146
	.byte 146,130
	.byte 0,0
	.dbsym e Char_E _Char_E A[8:8]kc
_Char_Y::
	.byte 0,192
	.byte 32,30
	.byte 32,192
	.byte 0,0
	.dbsym e Char_Y _Char_Y A[8:8]kc
_Char_O::
	.byte 0,0
	.byte 254,130
	.byte 130,254
	.byte 0,0
	.dbsym e Char_O _Char_O A[8:8]kc
_Char_U::
	.byte 0,0
	.byte 252,2
	.byte 2,252
	.byte 0,0
	.dbsym e Char_U _Char_U A[8:8]kc
_Space::
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.dbsym e Space _Space A[8:8]kc
_DataBaseIndexList::
	.byte 73
	.word _Char_I
	.byte 76
	.word _Char_L
	.byte 79
	.word _Char_O
	.byte 86
	.word _Char_V
	.byte 69
	.word _Char_E
	.byte 89
	.word _Char_Y
	.byte 85
	.word _Char_U
	.byte 0
	.word 0
	.dbsym e DataBaseIndexList _DataBaseIndexList A[24:8]kX
_String1::
	.byte 'I,'L,'O,'V,'E,'Y,'O,'U,0
	.dbsym e String1 _String1 A[9:9]kc
	.area text(rom, con, rel)
	.dbfile E:\Steaven2000\AVR\AVR_Book\PROGRA~1\SOURCE~1\Code\LED大屏幕顯示系統(tǒng)設(shè)計\LED.c
	.dbfunc e Display_Init _Display_Init fV
;          Index -> R20
	.even
_Display_Init::
	xcall push_gset1
	.dbline -1
	.dbline 58
; //***************************************************************
; // File Name : LED.c
; // Author    : Steaven
; // Created   : 2008-07-26
; // Modified  : 
; // Revision  : V0.0
; //***************************************************************
; 
; #include "iom16v.h" 
; #include "DataType.h"
; #include "app.h"
; #include "LED.h"
; 
; //constant definition
; const INT8U Char_I[] = {0x00,0x00,0x82,0xFE,0x82,0x00,0x00,0x00};/*"I",0*/
; const INT8U Char_L[] = {0x00,0x00,0xFE,0x02,0x02,0x02,0x00,0x00};/*"L",0*/
; const INT8U Char_V[] = {0x00,0xF0,0x08,0x04,0x04,0x08,0xF0,0x00};/*"V",0*/
; const INT8U Char_E[] = {0x00,0x00,0xFE,0x92,0x92,0x82,0x00,0x00};/*"E",0*/
; const INT8U Char_Y[] = {0x00,0xC0,0x20,0x1E,0x20,0xC0,0x00,0x00};/*"Y",0*/
; const INT8U Char_O[] = {0x00,0x00,0xFE,0x82,0x82,0xFE,0x00,0x00};/*"O",0*/
; const INT8U Char_U[] = {0x00,0x00,0xFC,0x02,0x02,0xFC,0x00,0x00};/*"U",0*/
; const INT8U Space[]  = {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};/*" ",0*/
; 
; //struct definition
; struct DataBaseIndex
; {
; 	INT8U Code;
;     const INT8U *Ptr;
; };
; 
; //char code database list
; const struct DataBaseIndex DataBaseIndexList[] = 
; {
; 	'I', Char_I,
; 	'L', Char_L,
; 	'O', Char_O,
; 	'V', Char_V,
; 	'E', Char_E,
; 	'Y', Char_Y,
; 	'U', Char_U,
; 	 0 , 0
; };
; 
; //global variables definition
; const INT8U *pBufStr;                  //字符指針
; const char String1[] = {"ILOVEYOU"};   //字符串
; INT8U DisplayCnt;                      //顯示計數(shù)器
; INT8U Buffer[8];                       //顯示緩沖區(qū)
; INT8U Length_of_DataBase;              //字符數(shù)據(jù)庫長度
; 
; //***************************************************************
; // Function    : Display_Init
; // Input       : none
; // Output      : none
; // Description : Display Initialization
; //***************************************************************
; void Display_Init(void)
; {
	.dbline 59
;     INT8U Index = 0;
	clr R20
	.dbline 60
; 	for(Index = 0;Index < 8;Index++)
	xjmp L5
L2:
	.dbline 61
	.dbline 62
	ldi R24,<_Buffer
	ldi R25,>_Buffer
	mov R30,R20
	clr R31
	add R30,R24
	adc R31,R25
	clr R2
	std z+0,R2
	.dbline 63
L3:
	.dbline 60
	inc R20
L5:
	.dbline 60
	cpi R20,8
	brlo L2
	.dbline 64
; 	{
; 		Buffer[Index] = 0;
; 	}
; 	pBufStr = String1;
	ldi R24,<_String1
	ldi R25,>_String1
	sts _pBufStr+1,R25
	sts _pBufStr,R24
	.dbline 65
; 	DisplayCnt = 0;
	clr R2
	sts _DisplayCnt,R2
	.dbline 66
; 	Length_of_DataBase = Search_DataBase_Length();
	xcall _Search_DataBase_Length
	sts _Length_of_DataBase,R16
	.dbline -2
	.dbline 67
; }
L1:
	xcall pop_gset1
	.dbline 0 ; func end
	ret
	.dbsym r Index 20 c
	.dbend
	.dbfunc e Buffer_IN _Buffer_IN fV
;          pdata -> R20,R21
;          Count -> R22
;          Index -> R10
	.even
_Buffer_IN::
	xcall push_gset3
	mov R10,R16
	.dbline -1
	.dbline 76
; 
; //***************************************************************
; // Function    : DotTest
; // Input       : none
; // Output      : none
; // Description : LED Display Test
; //***************************************************************			  		       
; void Buffer_IN(INT8U Index)
; {
	.dbline 78
;     const INT8U *pdata;
; 		INT8U Count = 0;
	clr R22
	.dbline 79
; 		pdata = SearchCharIndex(*pBufStr);
	lds R30,_pBufStr
	lds R31,_pBufStr+1
	lpm R16,Z
	xcall _SearchCharIndex
	movw R20,R16
	.dbline 80
; 		if(pdata != (INT8U *)0)
	cpi R16,0
	cpc R16,R17
	breq L7
X0:
	.dbline 81
; 		{
	.dbline 82
; 		    for(Count = 0;Count < 7;Count++)
	clr R22
	xjmp L12
L9:
	.dbline 83
	.dbline 84
	ldi R24,<_Buffer+1
	ldi R25,>_Buffer+1
	mov R30,R22
	clr R31
	add R30,R24
	adc R31,R25
	ldd R2,z+0
	ldi R24,<_Buffer
	ldi R25,>_Buffer
	mov R30,R22
	clr R31
	add R30,R24
	adc R31,R25
	std z+0,R2
	.dbline 85
L10:
	.dbline 82
	inc R22
L12:
	.dbline 82
	cpi R22,7
	brlo L9
	.dbline 86
	mov R30,R10
	clr R31
	add R30,R20
	adc R31,R21
	lpm R30,Z
	sts _Buffer+7,R30
	.dbline 87
L7:
	.dbline -2
	.dbline 88
; 			{
; 			    Buffer[Count] = Buffer[Count+1];
; 			}
; 			Buffer[7] = *(pdata + Index);
; 		}
; }
L6:
	xcall pop_gset3
	.dbline 0 ; func end
	ret
	.dbsym r pdata 20 pkc
	.dbsym r Count 22 c
	.dbsym r Index 10 c
	.dbend
	.dbfunc e SearchCharIndex _SearchCharIndex fpkc
;   pDataBasePtr -> R20,R21
;          Index -> R22
;       CharCode -> R16
	.even
_SearchCharIndex::
	xcall push_gset2
	.dbline -1
	.dbline 97
; 
; //***************************************************************
; // Function    : SearchCharIndex
; // Input       : CharCode - Char to be displayed
; // Output      : Pointer to the display code of the input char
; // Description : Get the pointer of the display char code
; //***************************************************************			  		       	
; const INT8U *SearchCharIndex(INT8U CharCode)
; {
	.dbline 100
;     INT8U Index;
; 	const struct DataBaseIndex *pDataBasePtr;
; 	pDataBasePtr = DataBaseIndexList;
	ldi R20,<_DataBaseIndexList
	ldi R21,>_DataBaseIndexList
	.dbline 101
; 	for(Index = 0;Index <= Length_of_DataBase;Index++)
	clr R22
	xjmp L19
L16:
	.dbline 102
; 	{
	.dbline 103
; 	    if(pDataBasePtr->Code == CharCode)
	movw R30,R20
	lpm R30,Z
	cp R30,R16
	brne L20
	.dbline 104
; 		{
	.dbline 105
; 		    return(pDataBasePtr->Ptr);
	movw R30,R20
	adiw R30,1
	lpm R16,Z+
	lpm R17,Z
	xjmp L15
L20:
	.dbline 108
	.dbline 109
	subi R20,253  ; offset = 3
	sbci R21,255
	.dbline 110
	.dbline 111
L17:
	.dbline 101
	inc R22
L19:
	.dbline 101
	lds R2,_Length_of_DataBase
	cp R2,R22
	brsh L16
	.dbline 112
; 		}
; 		else
; 		{
; 		    pDataBasePtr++ ;
; 		}
; 	}
; 	return(0);
	clr R16
	clr R17
	.dbline -2
L15:
	xcall pop_gset2
	.dbline 0 ; func end
	ret
	.dbsym r pDataBasePtr 20 pkX
	.dbsym r Index 22 c
	.dbsym r CharCode 16 c
	.dbend
	.dbfunc e Search_DataBase_Length _Search_DataBase_Length fc
;          Index -> R16
;   pDataBasePtr -> R18,R19
	.even
_Search_DataBase_Length::
	.dbline -1
	.dbline 122
; }
; 
; //***************************************************************
; // Function    : Search_DataBase_Length
; // Input       : none
; // Output      : Length of database list
; // Description : Search DataBase Length
; //***************************************************************			  
; INT8U Search_DataBase_Length(void)
; {
	.dbline 123
; 	INT8U Index = 0;
	clr R16
	.dbline 125
; 	const struct DataBaseIndex *pDataBasePtr;
; 	pDataBasePtr = DataBaseIndexList;
	ldi R18,<_DataBaseIndexList
	ldi R19,>_DataBaseIndexList
	xjmp L24
L23:
	.dbline 127
	.dbline 128
	inc R16
	.dbline 129
	subi R18,253  ; offset = 3
	sbci R19,255
	.dbline 130
L24:
	.dbline 126
; 	while(pDataBasePtr->Code != 0)
	movw R30,R18
	lpm R30,Z
	tst R30
	brne L23
	.dbline 131
; 	{
; 		Index++;
; 		pDataBasePtr++;
; 	}
; 	return(Index);
	.dbline -2
L22:
	.dbline 0 ; func end
	ret
	.dbsym r Index 16 c
	.dbsym r pDataBasePtr 18 pkX
	.dbend
	.dbfunc e DotTest _DotTest fV
;         Select -> R10
;          Index -> R12
;      wDelayCnt -> y+0
	.even
_DotTest::
	xcall push_gset4
	sbiw R28,4
	.dbline -1
	.dbline 141
; }
; 
; //***************************************************************
; // Function    : DotTest
; // Input       : none
; // Output      : none
; // Description : LED Display Test
; //***************************************************************			  
; void DotTest(void)
; {
	.dbline 142
;     INT8U Select = 0;
	clr R10
	.dbline 143
; 	INT8U Index = 0;
	clr R12
	.dbline 144
; 	INT32U wDelayCnt = 0;
	ldi R20,0
	ldi R21,0
	ldi R22,0
	ldi R23,0
	movw R30,R28
	std z+0,R20
	std z+1,R21
	std z+2,R22
	std z+3,R23
	.dbline 145
; 	for(Select = 0;Select < 8;Select++)
	xjmp L30
L27:
	.dbline 146
; 	{
	.dbline 147
; 	    for(Index = 0;Index < 8;Index++)
	clr R12
	xjmp L34
L31:
	.dbline 148
; 		{
	.dbline 149
; 		    PORTA = 1 << Index;
	ldi R16,1
	mov R17,R12
	xcall lsl8
	out 0x1b,R16
	.dbline 150
; 		    PORTD = ~(1 << Select);
	ldi R16,1
	mov R17,R10
	xcall lsl8
	mov R2,R16
	com R2
	out 0x12,R2
	.dbline 151
	ldi R20,0
	ldi R21,0
	ldi R22,0
	ldi R23,0
	movw R30,R28
	std z+0,R20
	std z+1,R21
	std z+2,R22
	std z+3,R23
	xjmp L38
L35:
	.dbline 151
	.dbline 151
	.dbline 151
L36:
	.dbline 151
	ldi R20,1
	ldi R21,0
	ldi R22,0
	ldi R23,0
	movw R30,R28
	ldd R2,z+0
	ldd R3,z+1
	ldd R4,z+2
	ldd R5,z+3
	add R2,R20
	adc R3,R21
	adc R4,R22
	adc R5,R23
	movw R30,R28
	std z+0,R2
	std z+1,R3
	std z+2,R4
	std z+3,R5
L38:
	.dbline 151
	ldi R20,144
	ldi R21,95
	ldi R22,1
	ldi R23,0
	movw R30,R28
	ldd R2,z+0
	ldd R3,z+1
	ldd R4,z+2
	ldd R5,z+3
	cp R2,R20
	cpc R3,R21
	cpc R4,R22
	cpc R5,R23
	brlo L35
	.dbline 152
L32:
	.dbline 147
	inc R12
L34:
	.dbline 147
	mov R24,R12
	cpi R24,8
	brsh X1
	xjmp L31
X1:
	.dbline 153
L28:
	.dbline 145
	inc R10
L30:
	.dbline 145
	mov R24,R10
	cpi R24,8
	brsh X2
	xjmp L27
X2:
	.dbline -2
	.dbline 154
; 		    for(wDelayCnt = 0;wDelayCnt < 90000;wDelayCnt++) {;}
; 		}
; 	}
; }
L26:
	adiw R28,4
	xcall pop_gset4
	.dbline 0 ; func end
	ret
	.dbsym r Select 10 c
	.dbsym r Index 12 c
	.dbsym l wDelayCnt 0 l
	.dbend
	.area bss(ram, con, rel)
	.dbfile E:\Steaven2000\AVR\AVR_Book\PROGRA~1\SOURCE~1\Code\LED大屏幕顯示系統(tǒng)設(shè)計\LED.c
_Length_of_DataBase::
	.blkb 1
	.dbsym e Length_of_DataBase _Length_of_DataBase c
_Buffer::
	.blkb 8
	.dbsym e Buffer _Buffer A[8:8]c
_DisplayCnt::
	.blkb 1
	.dbsym e DisplayCnt _DisplayCnt c
_pBufStr::
	.blkb 2
	.dbsym e pBufStr _pBufStr pkc

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
午夜av一区二区| 欧美精品视频www在线观看 | 一区二区视频在线看| 97久久超碰精品国产| 亚洲精品欧美二区三区中文字幕| 99riav久久精品riav| 亚洲激情欧美激情| 欧美精品少妇一区二区三区| 久久av老司机精品网站导航| 国产欧美一区视频| 在线视频一区二区三| 日日骚欧美日韩| 久久久久久久久久久久久久久99 | 99国产欧美另类久久久精品| 亚洲欧美日韩国产手机在线| 欧美疯狂做受xxxx富婆| 精品一区二区三区免费播放| 国产精品美女久久久久久久| 日本韩国一区二区三区视频| 日韩高清国产一区在线| 国产欧美精品一区二区三区四区 | 中文字幕av一区二区三区免费看| 色综合一区二区| 日本va欧美va精品| 亚洲视频免费在线| 欧美一级在线观看| 91在线国产观看| 免费成人美女在线观看.| 国产精品久久久久久久久免费丝袜| 在线观看视频欧美| 国产成人无遮挡在线视频| 亚洲一二三四久久| 久久久久久久免费视频了| 欧美在线制服丝袜| 国产成人免费视频| 美国一区二区三区在线播放| 亚洲欧美日韩久久精品| 久久九九久精品国产免费直播| 欧美在线不卡视频| heyzo一本久久综合| 精品午夜久久福利影院| 亚洲小少妇裸体bbw| 国产精品午夜在线| 日韩精品专区在线影院观看| 欧美性猛交xxxxxx富婆| 大桥未久av一区二区三区中文| 视频一区二区三区在线| 综合婷婷亚洲小说| 日本一区二区成人在线| 欧美一级日韩一级| 欧美伊人久久久久久久久影院| 顶级嫩模精品视频在线看| 免费看日韩a级影片| 亚洲一本大道在线| 亚洲欧美一区二区久久| 国产精品家庭影院| 国产网站一区二区三区| 久久综合精品国产一区二区三区| 欧美日韩国产综合视频在线观看 | 在线日韩一区二区| 99精品在线免费| 成人高清视频在线| 国产aⅴ精品一区二区三区色成熟| 热久久久久久久| 日本欧美一区二区三区乱码| 夜色激情一区二区| 亚洲综合偷拍欧美一区色| 亚洲欧美在线aaa| 中文乱码免费一区二区| 国产日本欧洲亚洲| 国产精品视频yy9299一区| 国产拍揄自揄精品视频麻豆| 国产亚洲综合在线| 国产欧美一区二区三区在线看蜜臀 | 欧美另类一区二区三区| 欧美日韩一区二区三区四区| 精品视频1区2区3区| 欧美无砖砖区免费| 91 com成人网| 精品少妇一区二区三区| 精品国产一区二区三区四区四 | 欧美精品日日鲁夜夜添| 777xxx欧美| 日韩亚洲欧美一区二区三区| 日韩午夜精品电影| 久久久久久9999| 中文字幕亚洲电影| 亚洲一区二区欧美激情| 日韩高清不卡一区二区三区| 精品一区二区三区视频 | a亚洲天堂av| 色综合久久综合中文综合网| 欧美午夜免费电影| 欧美v国产在线一区二区三区| 26uuu欧美| 亚洲欧美电影一区二区| 午夜天堂影视香蕉久久| 国内精品伊人久久久久av影院| 国产成人av自拍| 欧美亚洲高清一区| 欧美成人精品高清在线播放| 欧美韩国日本不卡| 亚洲影院在线观看| 蜜桃91丨九色丨蝌蚪91桃色| 国产成人在线看| 欧美网站一区二区| 精品欧美一区二区三区精品久久| 国产日产欧美一区二区视频| 亚洲综合色自拍一区| 精品综合久久久久久8888| 99v久久综合狠狠综合久久| 欧美人与禽zozo性伦| 国产免费成人在线视频| 五月婷婷激情综合| 成人在线视频一区| 日韩一区二区在线免费观看| 国产精品毛片久久久久久| 日本美女视频一区二区| 成人av资源在线观看| 欧美一区二区三区婷婷月色| 国产精品蜜臀在线观看| 奇米一区二区三区| 色婷婷综合久久久| 久久久亚洲综合| 香蕉av福利精品导航| 成人污视频在线观看| 3d动漫精品啪啪1区2区免费| 亚洲欧美一区二区视频| 激情文学综合插| 欧美日韩aaaaaa| 亚洲欧美综合色| 国产一区二区精品久久| 欧美日韩mp4| 一区二区三区精品视频| 国产成人亚洲精品青草天美| 欧美精品日韩精品| 亚洲三级理论片| 国产91高潮流白浆在线麻豆| 日韩女优电影在线观看| 亚洲国产精品人人做人人爽| 成人动漫一区二区三区| 精品国产成人在线影院| 日韩二区在线观看| 91成人在线精品| 亚洲欧洲日韩综合一区二区| 国产福利一区二区三区| 欧美不卡一区二区三区| 日韩精品三区四区| 欧美日韩你懂得| 一区二区视频在线| 91免费版在线| 国产精品私房写真福利视频| 国产福利精品导航| 久久亚洲精品小早川怜子| 麻豆精品久久久| 日韩欧美123| 精品一区二区三区视频在线观看| 91精品欧美综合在线观看最新| 亚洲成人av电影| 7777精品伊人久久久大香线蕉完整版| 亚洲一区二区三区国产| 欧美日韩视频一区二区| 亚洲国产精品人人做人人爽| 欧美日韩免费观看一区三区| 一区二区三区蜜桃网| 欧美色综合久久| 亚洲va欧美va天堂v国产综合| 欧美日韩和欧美的一区二区| 亚洲成a人v欧美综合天堂| 精品视频1区2区3区| 天天综合天天做天天综合| 欧美一卡在线观看| 国产综合成人久久大片91| 久久综合九色综合97婷婷 | 美女视频黄免费的久久| 精品久久久久久久人人人人传媒| 久久成人综合网| 中文字幕av一区二区三区免费看| 不卡欧美aaaaa| 亚洲国产人成综合网站| 在线观看91av| 国产精品一区二区久久不卡 | 色婷婷综合中文久久一本| 亚洲国产欧美日韩另类综合 | 欧美亚洲丝袜传媒另类| 婷婷开心激情综合| 久久久久久麻豆| 91亚洲国产成人精品一区二三| 一区二区三区国产豹纹内裤在线| 欧美日韩mp4| 国产成人精品www牛牛影视| 亚洲美女区一区| 欧美一级在线免费| 成人免费观看男女羞羞视频| 一区二区三区91| 精品国产91九色蝌蚪| 91片在线免费观看| 男男成人高潮片免费网站| 欧美经典一区二区| 欧美精品九九99久久|