FREE RTOS !"#" $%&' ($%)& *+, "."/ 012% ))..)/ 3$%$ 456.")7.89:)).";<=>)794?@ABC. 4D.".E@F/9G/F&/.GH))'H@.I"J4."/K. /."L4M5)7.N"5F"O)"6F K.."8.P."D" "Q))"R. "Q))"R."/,."/S4M4T9M /."L4M4T9M"#)U.4, "'"456."R.")U9:)4)JHVK. 4-".E)HH@456.V2%)U.4)'")JW&'@=4L&''"K. 9:).X."L=);) ( =H)..";) "Q)4)JHVYFVLFS) "V=&'"/"Q)).C"JZF"C"M.@/ ?&O4T"T[ * \))"]4,. " @))"].I4M5)7./"!5>.)7L.I")"X&.I.^ 4M5)7./"!"#.K.&'&_456."R.")U"/')J/;/9) 0 \)/)LF)`.K.)L#" 0 $)a F/.&&./HH456."R.")U9bG"#"?"L")456. =9b)K-."8'"F")"H.")L7!4@9M.79M ">@4KVHVc $;/d)W97/@/9/.') $;/d)9>))H/eA/9/.') 0 =."/)f)/a ."/F"cFS/@&2;C9)=&HF"/<"g HF"/@5Q"6F4,.9)U.E>).");@)e@'D." "5>.;`)U@eAh#4)@=7)U.!=@&HF"/@.K."/ K.=7"E=G;/4I.K.Y&_9-")U"I@9M4, "F")9-/ 4J"]/.'7@= 3 K"</.')@;/.' /.K.&'"/,.@/9/.')"/,.&_9-9/.'>)'"/ "Q)).O4-" K.&'H@"8.;]='")"L)H/@i'/"J= "]F>)@)=7#4)'")Q)j)kl>)@)=7.I"Jm) B 12%.))..)/ ))..)/456.V2%9:))U.")U"I!..K.Y )). &.)/97/Hn)&'.I"J456.VLF."T7"@Hn)&'&_") ;!S)9:))U.P)K-VLF."T.EI o /9M4, " ");@")7)U.="]F>) pH@)U. p9-=7.?@'"g= =")JH."/"/K..EG9M4, ".I"J9-/h)U./@=4H 9/P)L#"")US)&_'"456.5)79:)4, " q !FF"K9M"> ..!F(H"#""F"#"4X)"!@)U..!FF"K .O4-"GF"8.SF"X@H"#"."/F"cF.!FF"K@))F"I9b)U.&2 ;C))"]9&m)@F"8.SF"!@"Fr(."/F"cF&2;CH/.@ ./.Z[ A +/56.4M5)7 '""R.")U9!'s't"]g./@/>)4M5)7)L #""5'L"W4M5)7"=V/=u4M5)74J"R.")U4/. F)/ !v..E./@"57/4IF"?"gZwk[@9/ TH/(m)port.c, port.asm v portmacro.h 2. Mô t nhân ca FreeRTOS ./m))/ &'H < '%.K.&' < <TS)."/W&' /@9/TH/@9M.K.")S"K).E&' &'a S/&'9b)U.S/@")L]F)K-."/ <&' H>)4.4,=@//;=)&>)&e;= ;=)&&4.&YFVLF4J4M5)7>).K.&'@9b"F"C.C."/ )U./;/9) S/");=)&."/WF)/)=")R."j&')LF "/4J"R.")G&.";9Y4?>))&.I4M5)7./"!@@H>) )&.I4M5)7"!F;? '/.I)&"=&)5QH)""=@/4II;=# 9)L@FV <4J."xy)L#"@//;=)&4."S=G FV <;/4I4.4-""z"5@./{{4L.!v. < &'/.I"J9-'"I'")="]F@/@)=7H@'/.I &|.";'"I.K.&'."x'")."v.OY4j."=")@/H@ @n"=m h)U..OY=.]F@/&.I"J9-9/.')"=/9/.')R F"g9)U@9)L).'&/})LeAG@@HF=~mG&''/9- 9/.'.S)G&'&_9-9/.''"/V).'&/})).'&"/,.."/>)'") &5')U@/4I7))F"I@)=7 &'.N.I"JR=79/.''"/"Q)))U.j)"@Hkl .";;=#;"&K."•;=;€."/HC.4D."@=.";&_"PH ;"&K."@=S)Hn);.)&)/F/)4J=L4-")Ub&'4•)H/ 4I."v456.4,7;=)&/..!F&'= @&'=p) <!'s&'@//@)&'4."S=@.K.&'F"C.C.I"J456.4, /S"K)&F;;z")‚ &''L"v.."'s&O.EH#"9b)U.9-VIZRVI[S"K) ;;456.=7.?."/>)'")'".u.?")L@'L@)U.)) F"I=@)=79-)`9:)&'+ƒ=&'@//S"K);; .";/&456."5>>))U.9{&'@=&'.I K."")UH4J";j&'").K.&'4•9-'"I@;/4I&'.I4M 5)7"!F"! 2.3 Qun l! LIST (;=;</.';)&& /m)" )& ; ./m)k1rl ;=&')&&„A…„./m)k1rl… pr&'ee &'}))H))/ pr&'&F;ee &F;;&')& ~k l;);=)& ~k =;&')& ~k m/d=;&')& n))&456.S/>)')JV)&H@.!v."5& H9mH& O56)H/;"&K." ZV)&H[†FV;V /:456.&2;C4J4)7;" &K."I{>))H'L)LF ZV)))&H[V)&; )H.E)&H@4K";!'L"v..E )&ITH)K->"!/ VHh@;/4IIV!")U S).O).E)& V)&H VHh \)K-456.;^4J&YF"8R"5Q @"Q)) †FVV /{{>))H)LF †FVl)/& †Fd {>)4O)56H@9/TH/)& )HI"5Q@ < †F /) {>);"&K.">)H@)H456.4, VHh †FVV :>))H)LF"/ †FVl)/& ":)S/)&a h;'":)S/=;&')& H9mH&eA FV;VGFVV@FVl)/&!.44.&@4-."x.E.!v.V)&; VHhF"))`)K->"!.I"JeF/k1rk‡ (&)&'/)& h;=;&')&&2;C)&& VHhe(oFd <4)@=."/F"cFVK.4-""" < +J."ˆ&'H>)@//=;&')&G)&&"R.")U"5& VHh/\).)&HH>)4.&/&K">)VHhW <4? .E;"&K."Z&O./.').'74I&'7456.4K""8.[L)K-4T S)@"{"XZ*‰(o[./{†FVV456.&2;C4J;)."=J>) <)LF "//)&")&/&K"@m&G <F")456.;)."=J>)4v-DH@I 456.."ˆ+)@=456."R.")U9:))U.."x"&2FVV@FVl/ .K.)H&@.FVV@FVl.E."D" <4I O).^FV /) / <H>)4.4,456.&24J{>)=;&')& /{@=)vF."/ )U.Š9{""."I&@=") <H>)456.@/GH9mH& /‹=;&')&Œ456..]F"] ()H /)f@‹=;&')&Œ K.&'456.4,7=;&')&9:).";"/,.9:)j)kl'")j) &'="/,.&'=p) H@9M4LH.I&/)/o9)00).'&+J"R.")U4)@= 4-""z@&2;C;"&K.";==;&')&@ m/d=;&')& V)H/}'eV).' /•V).'&/=Ž \Š9{V\).)&HW;=&')& LV)H/}'‰V).' /@"#."ˆI@/;"&K." FVm/d=;&')& 56.S)."ˆI@/;"&K."FV=;&')& +J%@&O).'H@&'.I"J4./.';F")"{"X"/,.9b F/k1rk‡ n)'")).'./456.P7Z/"@H&'.H).'[G')JH 456."R.")U4J=L4-"VH)U./4•/L.I"#.K../{{ >)=;&')&@m/d=&')&456./4) 2.3.3 Task Scheduler "/K.4?)7456."R.")U9:)&.";@&./~)HZ."xU" .C"JF"m.8[4J9Y4?'"/).'H>).I"J456..! "#".//F"/,.FH) /."L4M.//F)G"/K.;="!456."R.")U5X.&'")W Y)H@P).'./ N.u564K'JbH4b&"/K.@= L.";@FHF)G95>.4?@&.'5..".E&'")US)/ H@."=J4)`."=7.?.";P).'./@&'")')JH )Ub"@"4M@=.Ig=79/.';&':"@"9/.'"= '"•L&'9/.'@&'@=.I4M5)7"X&'")US)"#)U. ."=J`."456."R.") O).^G`."456.G.K.""") HH456.&.';@&.";WY (* !v.`.".E&' [...]... cảnh của MCU gồm PC,Y,X reg, A,B reg và các thanh ghi điều kiện (CCR) Tất cả các thành ghi này được stack theo thứ tự đã chỉ ra trước khi MCU nhảy tới dịch vụ ngắt Trong thực thi FreeRTOS trên HC12 MCU, nó có 12bytes các “thanh ghi mềm” được stack lên đỉnh của trạng thái MCU được cung cấp bởi cơ chế ISR Các thanh ghi được stack 1 cách tường minh bởi việc thực... thi macro portSAVE_CONTEXT bên trong HAL Macro này trước tiên stack 1 biến mà track- theo dõi độ sâu của nesting cho task Nếu target đang sử dụng mô hình bộ nhớ xếp chồng cho thiết bị Freescale, sau đó thanh ghi PPAGE nên được lue Sau đó macro này lưu giá trị hiện tại của thanh ghi SP vào trong TCB của Task1 Để exit từ ISR, portRESTORE_CONTEXT, portISR_TAIL và 1 RTI phải . FREE RTOS !"#" $%&' ($%)& *+,. !v..E./@"57/4IF"?"gZwk[@9/ TH/(m)port.c, port.asm v portmacro.h 2. Mô t nhân ca FreeRTOS ./m))/ &'H < '%.K.&'