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

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

?? os_core.lst

?? 給出一個簡單操作系統在AVR中應用實例
?? LST
?? 第 1 頁 / 共 2 頁
字號:
   1               		.file	"OS_Core.c"
   2               		.arch at90s8515
   3               	__SREG__ = 0x3f
   4               	__SP_H__ = 0x3e
   5               	__SP_L__ = 0x3d
   6               	__tmp_reg__ = 0
   7               	__zero_reg__ = 1
   8               		.global __do_copy_data
   9               		.global __do_clear_bss
  11               		.text
  12               	.Ltext0:
  64               	.global	OSInit
  66               	OSInit:
   1:C:/WinAVR/minOS_WinAVR/OS_Core.c **** /*
   2:C:/WinAVR/minOS_WinAVR/OS_Core.c **** ***************************************************************************************************
   3:C:/WinAVR/minOS_WinAVR/OS_Core.c **** *                                      minOS 0.01v
   4:C:/WinAVR/minOS_WinAVR/OS_Core.c **** *                                The Real-Time OS Kernel
   5:C:/WinAVR/minOS_WinAVR/OS_Core.c **** *                                  All Rights Reserved
   6:C:/WinAVR/minOS_WinAVR/OS_Core.c **** * File : OS_Core.C
   7:C:/WinAVR/minOS_WinAVR/OS_Core.c **** * 作者 : 21icbbs網友 LM7556 ,2004年7月   by : LM7556 , China , 2004-2004 
   8:C:/WinAVR/minOS_WinAVR/OS_Core.c **** *
   9:C:/WinAVR/minOS_WinAVR/OS_Core.c **** ***************************************************************************************************
  10:C:/WinAVR/minOS_WinAVR/OS_Core.c **** */
  11:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 
  12:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 
  13:C:/WinAVR/minOS_WinAVR/OS_Core.c **** #define  OS_GLOBALS
  14:C:/WinAVR/minOS_WinAVR/OS_Core.c **** #include "OS_Includes.h"
  15:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 
  16:C:/WinAVR/minOS_WinAVR/OS_Core.c **** #define NULL 0
  17:C:/WinAVR/minOS_WinAVR/OS_Core.c **** // initialization OSTCB --- 初始化任務控制塊.
  18:C:/WinAVR/minOS_WinAVR/OS_Core.c **** void OSInit(void) 
  19:C:/WinAVR/minOS_WinAVR/OS_Core.c **** {	INT8U i;
  68               	.LM1:
  69               	/* prologue: frame size=0 */
  70               	/* prologue end (size=0) */
  20:C:/WinAVR/minOS_WinAVR/OS_Core.c ****     OS_TCB *pOS_TCB;
  21:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 	pOS_TCB=OSTCB;
  72               	.LM2:
  73 0000 E0E0      		ldi r30,lo8(OSTCB)
  74 0002 F0E0      		ldi r31,hi8(OSTCB)
  75 0004 9FEF      		ldi r25,lo8(-1)
  76 0006 84E0      		ldi r24,lo8(4)
  77               	.L5:
  22:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 	for (i=0;i<OS_MAX_TASKS;i++,pOS_TCB++) 
  23:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 	{
  24:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 		pOS_TCB->OSStkTop=(INT16U)NULL;
  79               	.LM3:
  80 0008 1082      		st Z,__zero_reg__
  81 000a 1182      		std Z+1,__zero_reg__
  25:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 		pOS_TCB->OSTaskStatus=no_TASK_Rdy;
  83               	.LM4:
  84 000c 9283      		std Z+2,r25
  26:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 		pOS_TCB->OSTimeDly=0;
  86               	.LM5:
  87 000e 1382      		std Z+3,__zero_reg__
  88 0010 1482      		std Z+4,__zero_reg__
  90               	.LM6:
  91 0012 8150      		subi r24,lo8(-(-1))
  92 0014 3596      		adiw r30,5
  93 0016 87FF      		sbrs r24,7
  94 0018 F7CF      		rjmp .L5
  95               	/* epilogue: frame size=0 */
  96 001a 0895      		ret
  97               	/* epilogue end (size=1) */
  98               	/* function OSInit size 14 (13) */
 103               	.global	OSStart
 105               	OSStart:
  27:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 	}
  28:C:/WinAVR/minOS_WinAVR/OS_Core.c **** }
  29:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 
  30:C:/WinAVR/minOS_WinAVR/OS_Core.c **** //Start OS --- 啟動OS
  31:C:/WinAVR/minOS_WinAVR/OS_Core.c **** void OSStart(void) 
  32:C:/WinAVR/minOS_WinAVR/OS_Core.c **** {
 107               	.LM7:
 108               	/* prologue: frame size=0 */
 109               	/* prologue end (size=0) */
  33:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 	Init_OS_Timer();
 111               	.LM8:
 112 001c 00D0      		rcall InitOSTimer
  34:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 	OS_TASK_CrtPrio=Task_main_Prio;
 114               	.LM9:
 115 001e 1092 0000 		sts OS_TASK_CrtPrio,__zero_reg__
  35:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 	OS_TASK_HighPri=OS_TASK_CrtPrio;
 117               	.LM10:
 118 0022 1092 0000 		sts OS_TASK_HighPri,__zero_reg__
  36:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 	OSTCB[OS_TASK_HighPri].OSTaskStatus=OS_TASK_Run;
 120               	.LM11:
 121 0026 8BEF      		ldi r24,lo8(-5)
 122 0028 8093 0000 		sts OSTCB+2,r24
  37:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 	OS_INT_ENABLE();
  38:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 	OS_TASK_INT();
 124               	.LM12:
 125 002c 00D0      		rcall OSCtxSw
 126               	/* epilogue: frame size=0 */
 127 002e 0895      		ret
 128               	/* epilogue end (size=1) */
 129               	/* function OSStart size 10 (9) */
 133               	OSPrioHighRdy:
  39:C:/WinAVR/minOS_WinAVR/OS_Core.c **** }
  40:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 
  41:C:/WinAVR/minOS_WinAVR/OS_Core.c **** //返回優先級最高的處于就緒態任務的優先級,否則返回no_TASK_Rdy。
  42:C:/WinAVR/minOS_WinAVR/OS_Core.c **** static INT8U OSPrioHighRdy(void) 
  43:C:/WinAVR/minOS_WinAVR/OS_Core.c **** { INT8U i;
 135               	.LM13:
 136               	/* prologue: frame size=0 */
 137               	/* prologue end (size=0) */
  44:C:/WinAVR/minOS_WinAVR/OS_Core.c ****     OS_TCB *pOS_TCB;
  45:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 	pOS_TCB=OSTCB;
 139               	.LM14:
 140 0030 E0E0      		ldi r30,lo8(OSTCB)
 141 0032 F0E0      		ldi r31,hi8(OSTCB)
  46:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 	for (i=0;i<OS_MAX_TASKS;i++,pOS_TCB++) 
 143               	.LM15:
 144 0034 A0E0      		ldi r26,lo8(0)
 145 0036 60E0      		ldi r22,lo8(0)
 146 0038 70E0      		ldi r23,hi8(0)
 147               	.L16:
  47:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 	{
  48:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 		if ((pOS_TCB->OSStkTop!=(INT8U)NULL) & (pOS_TCB->OSTaskStatus==OS_TASK_Rdy)) {return i;}
 149               	.LM16:
 150 003a 20E0      		ldi r18,lo8(0)
 151 003c 30E0      		ldi r19,hi8(0)
 152 003e 8081      		ld r24,Z
 153 0040 9181      		ldd r25,Z+1
 154 0042 892B      		or r24,r25
 155 0044 11F0      		breq .L14
 156 0046 21E0      		ldi r18,lo8(1)
 157 0048 30E0      		ldi r19,hi8(1)
 158               	.L14:
 159 004a 40E0      		ldi r20,lo8(0)
 160 004c 50E0      		ldi r21,hi8(0)
 161 004e 8281      		ldd r24,Z+2
 162 0050 8C3F      		cpi r24,lo8(-4)
 163 0052 11F4      		brne .L15
 164 0054 41E0      		ldi r20,lo8(1)
 165 0056 50E0      		ldi r21,hi8(1)
 166               	.L15:
 167 0058 2423      		and r18,r20
 168 005a 3523      		and r19,r21
 169 005c 232B      		or r18,r19
 170 005e 19F0      		breq .L12
 171 0060 972F      		mov r25,r23
 172 0062 862F      		mov r24,r22
 173 0064 0895      		ret
 174               	.L12:
 176               	.LM17:
 177 0066 AF5F      		subi r26,lo8(-(1))
 178 0068 6F5F      		subi r22,lo8(-(1))
 179 006a 7F4F      		sbci r23,hi8(-(1))
 180 006c 3596      		adiw r30,5
 181 006e A530      		cpi r26,lo8(5)
 182 0070 20F3      		brlo .L16
  49:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 	}
  50:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 	return no_TASK_Rdy;
 184               	.LM18:
 185 0072 8FEF      		ldi r24,lo8(255)
 186 0074 90E0      		ldi r25,hi8(255)
  51:C:/WinAVR/minOS_WinAVR/OS_Core.c **** }
 188               	.LM19:
 189 0076 0895      		ret
 190               	/* epilogue: frame size=0 */
 191 0078 0895      		ret
 192               	/* epilogue end (size=1) */
 193               	/* function OSPrioHighRdy size 37 (36) */
 198               	.global	OSTimeTick
 200               	OSTimeTick:
  52:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 
  53:C:/WinAVR/minOS_WinAVR/OS_Core.c **** //Task OSTimeDly Decrease 1 per Time Tick --- 每個時鐘節拍,任務等待延時的時間OSTimeDly減1.
  54:C:/WinAVR/minOS_WinAVR/OS_Core.c **** //如果任務的OSTimeDly減到0,把任務設置為準備就緒OS_TASK_Rdy。
  55:C:/WinAVR/minOS_WinAVR/OS_Core.c **** void OSTimeTick(void) 
  56:C:/WinAVR/minOS_WinAVR/OS_Core.c **** { INT8U i;
 202               	.LM20:
 203               	/* prologue: frame size=0 */
 204               	/* prologue end (size=0) */
  57:C:/WinAVR/minOS_WinAVR/OS_Core.c ****     OS_TCB *pOS_TCB;
  58:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 	pOS_TCB=OSTCB;
 206               	.LM21:
 207 007a E0E0      		ldi r30,lo8(OSTCB)
 208 007c F0E0      		ldi r31,hi8(OSTCB)
 209 007e 3CEF      		ldi r19,lo8(-4)
 210 0080 24E0      		ldi r18,lo8(4)
 211               	.L25:
  59:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 	for (i=0;i<OS_MAX_TASKS;i++,pOS_TCB++) 
  60:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 	{
  61:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 		if (pOS_TCB->OSTimeDly>OS_TASK_TimeOut) 
 213               	.LM22:
 214 0082 8381      		ldd r24,Z+3
 215 0084 9481      		ldd r25,Z+4
 216 0086 0097      		sbiw r24,0
 217 0088 31F0      		breq .L22
  62:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 		{
  63:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 			if (--pOS_TCB->OSTimeDly==0) {pOS_TCB->OSTaskStatus=OS_TASK_Rdy;}
 219               	.LM23:
 220 008a 0197      		sbiw r24,1
 221 008c 8383      		std Z+3,r24
 222 008e 9483      		std Z+4,r25
 223 0090 892B      		or r24,r25
 224 0092 09F4      		brne .L22
 225 0094 3283      		std Z+2,r19
 226               	.L22:
 228               	.LM24:
 229 0096 2150      		subi r18,lo8(-(-1))
 230 0098 3596      		adiw r30,5
 231 009a 27FF      		sbrs r18,7
 232 009c F2CF      		rjmp .L25
  64:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 		}
  65:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 	}
  66:C:/WinAVR/minOS_WinAVR/OS_Core.c **** 	OS_TASK_HighPri=OSPrioHighRdy();
 234               	.LM25:
 235 009e C8DF      		rcall OSPrioHighRdy

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品99999| 91麻豆免费在线观看| 亚洲精品ww久久久久久p站| 亚洲欧美综合色| 国产人妖乱国产精品人妖| 久久先锋资源网| 久久久久久久国产精品影院| 久久久不卡网国产精品一区| 欧美videofree性高清杂交| 欧美va日韩va| 国产亚洲欧美日韩日本| 国产精品成人免费精品自在线观看| 国产喷白浆一区二区三区| 国产精品欧美一区二区三区| 国产精品国产a级| 亚洲激情自拍视频| 午夜久久久久久久久| 久久69国产一区二区蜜臀| 粉嫩aⅴ一区二区三区四区五区 | 亚洲精品一二三| 一区二区三区日韩欧美精品| 亚洲成人福利片| 极品少妇xxxx精品少妇偷拍| 成人免费高清视频| 欧美疯狂做受xxxx富婆| 精品国产麻豆免费人成网站| 亚洲欧洲精品一区二区三区 | 免费成人深夜小野草| 极品少妇xxxx精品少妇| 国产福利一区在线| 日本乱码高清不卡字幕| 精品日本一线二线三线不卡| 日本一区二区免费在线观看视频| 国产精品久久久久久久久搜平片 | 欧美三级电影在线看| 精品国产免费一区二区三区香蕉| 中文字幕免费不卡| 亚洲成人av中文| 成人国产精品视频| 日韩欧美一二三四区| 亚洲人快播电影网| 国产一区二区在线影院| 欧美在线播放高清精品| 久久久精品免费网站| 香蕉av福利精品导航| 不卡一二三区首页| 精品成人免费观看| 亚洲国产成人高清精品| www.99精品| 亚洲精品一区二区三区99| 亚洲一区二三区| 国产91丝袜在线播放九色| 在线播放国产精品二区一二区四区| 久久久精品2019中文字幕之3| 亚洲aⅴ怡春院| 91麻豆福利精品推荐| 久久精品日韩一区二区三区| 亚洲电影一级片| 在线观看精品一区| 国产精品污www在线观看| 免费观看91视频大全| 欧美日韩亚州综合| 亚洲欧美日韩国产成人精品影院| 国产传媒久久文化传媒| 欧美v日韩v国产v| 手机精品视频在线观看| 欧美日韩综合不卡| 亚洲精品一二三| 91在线观看美女| 久久久久久久久一| 国产在线播精品第三| 欧美mv日韩mv亚洲| 精品一区精品二区高清| 精品免费99久久| 国产精品99久久久久久宅男| 久久久精品中文字幕麻豆发布| 免费观看在线色综合| 日韩小视频在线观看专区| 麻豆精品精品国产自在97香蕉| 9191成人精品久久| 精品一区二区三区免费视频| 久久久久国产成人精品亚洲午夜| 国产精品自在欧美一区| 国产精品―色哟哟| 91尤物视频在线观看| 亚洲精品伦理在线| 欧美亚洲丝袜传媒另类| 亚洲在线视频免费观看| 欧美日韩国产大片| 久久99热狠狠色一区二区| 精品999在线播放| av男人天堂一区| 亚洲午夜国产一区99re久久| 欧美精品一二三| 国产资源精品在线观看| 中文av一区特黄| 色噜噜夜夜夜综合网| 日韩专区欧美专区| 国产亚洲综合在线| 在线观看视频一区二区欧美日韩| 日韩综合一区二区| 国产精品免费视频一区| 欧美性生活大片视频| 免费看日韩精品| 中文字幕一区二区三区在线不卡| 欧美怡红院视频| 国产老肥熟一区二区三区| 亚洲天堂精品在线观看| 91精品国产一区二区三区香蕉| 国模冰冰炮一区二区| 亚洲欧美日韩在线| 欧美变态凌虐bdsm| 欧洲国产伦久久久久久久| 黄页视频在线91| 亚洲综合色在线| 久久久久综合网| 欧美三级中文字幕在线观看| 国产剧情一区在线| 亚洲自拍欧美精品| 国产亚洲美州欧州综合国| 欧美日韩国产a| 99国产精品久| 国产又黄又大久久| 一区二区三区中文字幕| 国产日韩欧美综合在线| 欧美军同video69gay| 99re热这里只有精品视频| 久久精品国产77777蜜臀| 亚洲黄色片在线观看| 久久久欧美精品sm网站| 欧美一区二区三区白人| 色94色欧美sute亚洲线路二| 国产v综合v亚洲欧| 国产做a爰片久久毛片| 图片区小说区区亚洲影院| 亚洲黄色小说网站| 一区二区三区日韩在线观看| 国产丝袜欧美中文另类| 精品对白一区国产伦| 欧美日韩国产免费一区二区| 91精品福利在线| 色婷婷av一区二区三区软件 | 欧美成人精品1314www| 欧美日韩精品一区二区| 91黄色免费网站| 色噜噜狠狠色综合中国| 色综合中文字幕国产 | 国产91富婆露脸刺激对白| 久久国产精品99久久久久久老狼| 香蕉成人啪国产精品视频综合网 | 国产福利一区二区| 国产一区二区福利视频| 精品亚洲免费视频| 精品在线一区二区三区| 国产主播一区二区三区| 国产自产v一区二区三区c| 久99久精品视频免费观看| 麻豆成人av在线| 精品在线免费视频| 国产成人av一区二区三区在线观看| 国模少妇一区二区三区| 久久精品av麻豆的观看方式| 九九九久久久精品| 高清久久久久久| 99精品欧美一区二区蜜桃免费 | 成人av在线播放网站| 国产乱国产乱300精品| 国产激情视频一区二区在线观看 | 国产成人精品免费一区二区| 国产成人av福利| 99久久精品久久久久久清纯| 色婷婷亚洲婷婷| 欧美一二三四在线| 国产亚洲精品7777| 亚洲特级片在线| 青草国产精品久久久久久| 国产乱对白刺激视频不卡| 91丝袜美女网| 日韩一区二区在线看| 国产丝袜在线精品| 亚洲一级在线观看| 国产酒店精品激情| 欧美亚洲国产一区在线观看网站 | 日本大香伊一区二区三区| 欧美三级资源在线| 久久久久99精品一区| 一级精品视频在线观看宜春院 | 97精品国产97久久久久久久久久久久 | 精品国产百合女同互慰| 国产精品毛片a∨一区二区三区| 一区二区三区欧美| 国产一区福利在线| 精品污污网站免费看| 久久精品视频免费观看| 亚洲不卡av一区二区三区| 国产一区二区三区在线观看免费| 色噜噜狠狠色综合欧洲selulu| 26uuu精品一区二区| 亚洲午夜一区二区| 成人av网站免费观看|