資源簡(jiǎn)介
stm8IO口模擬SPI

代碼片段和文件信息
/*
?*?Copyright?(c)?2010?Kelvin?Lawson.?All?rights?reserved.
?*
?*?Redistribution?and?use?in?source?and?binary?forms?with?or?without
?*?modification?are?permitted?provided?that?the?following?conditions
?*?are?met:
?*
?*?1.?Redistributions?of?source?code?must?retain?the?above?copyright
?*????notice?this?list?of?conditions?and?the?following?disclaimer.
?*?2.?Redistributions?in?binary?form?must?reproduce?the?above?copyright
?*????notice?this?list?of?conditions?and?the?following?disclaimer?in?the
?*????documentation?and/or?other?materials?provided?with?the?distribution.
?*?3.?No?personal?names?or?organizations‘?names?associated?with?the
?*????Atomthreads?project?may?be?used?to?endorse?or?promote?products
?*????derived?from?this?software?without?specific?prior?written?permission.
?*
?*?THIS?SOFTWARE?IS?PROVIDED?BY?THE?ATOMTHREADS?PROJECT?AND?CONTRIBUTORS
?*?“AS?IS“?AND?ANY?EXPRESS?OR?IMPLIED?WARRANTIES?INCLUDING?BUT?NOT?LIMITED
?*?TO?THE?IMPLIED?WARRANTIES?OF?MERCHANTABILITY?AND?FITNESS?FOR?A?PARTICULAR
?*?PURPOSE?ARE?DISCLAIMED.?IN?NO?EVENT?SHALL?THE?PROJECT?OR?CONTRIBUTORS?BE
?*?LIABLE?FOR?ANY?DIRECT?INDIRECT?INCIDENTAL?SPECIAL?EXEMPLARY?OR
?*?CONSEQUENTIAL?DAMAGES?(INCLUDING?BUT?NOT?LIMITED?TO?PROCUREMENT?OF
?*?SUBSTITUTE?GOODS?OR?SERVICES;?LOSS?OF?USE?DATA?OR?PROFITS;?OR?BUSINESS
?*?INTERRUPTION)?HOWEVER?CAUSED?AND?ON?ANY?THEORY?OF?LIABILITY?WHETHER?IN
?*?CONTRACT?STRICT?LIABILITY?OR?TORT?(INCLUDING?NEGLIGENCE?OR?OTHERWISE)
?*?ARISING?IN?ANY?WAY?OUT?OF?THE?USE?OF?THIS?SOFTWARE?EVEN?IF?ADVISED?OF?THE
?*?POSSIBILITY?OF?SUCH?DAMAGE.
?*/
/**
?*?\file
?*?Kernel?library.
?*
?*
?*?This?module?implements?the?core?kernel?functionality?of?managing?threads
?*?context-switching?and?interrupt?handlers.?It?also?contains?functions?for
?*?managing?queues?of?TCBs?(task?control?blocks)?which?are?used?not?only?for
?*?the?queue?of?ready?threads?but?also?by?other?OS?primitives?(such?as
?*?semaphores)?for?generically?managing?lists?of?TCBs.
?*
?*?Core?kernel?functionality?such?as?managing?the?queue?of?ready?threads?and
?*?how?context-switch?decisions?are?made?is?described?within?the?code.?However
?*?a?quick?summary?is?as?follows:
?*
?*?There?is?a?ready?queue?of?threads.?There?must?always?be?at?least?one?thread
?*?ready-to-run.?If?no?application?threads?are?ready?the?internal?kernel?idle
?*?thread?will?be?run.?This?ensures?that?there?is?a?thread?to?run?at?all
?*?times.
?*
?*?Application?code?creates?threads?using?atomThreadCreate().?These?threads
?*?are?added?to?the?ready?queue?and?eventually?run?when?it?is?their?turn
?*?(based?on?priority).?When?threads?are?currently-running?they?are?taken?off
?*?the?ready?queue.?Threads?continue?to?run?until:
?*?\li?They?schedule?themselves?out?by?calling?an?OS?primitive?which?blocks
?*?????such?as?a?timer?delay?or?blocking?on?a?semaphore.?At?this?point?they
?*?????are?placed?on?the?queue?of?the?OS?primitive?in?which?they?are?blocking
?*?????(for?examp
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件????????126??2017-04-05?07:35??kelvinlawson-atomthreads-402fe20\.gitmodules
?????文件????????383??2017-04-05?07:35??kelvinlawson-atomthreads-402fe20\.travis.yml
?????文件???????5370??2017-06-15?10:38??kelvinlawson-atomthreads-402fe20\kernel\atom.h
?????文件??????37760??2017-06-14?18:01??kelvinlawson-atomthreads-402fe20\kernel\atomkernel.c
?????文件??????26276??2017-06-05?20:58??kelvinlawson-atomthreads-402fe20\kernel\atommutex.c
?????文件???????2194??2017-04-05?07:35??kelvinlawson-atomthreads-402fe20\kernel\atommutex.h
?????文件???????2985??2017-04-05?07:35??kelvinlawson-atomthreads-402fe20\kernel\atomport-template.h
?????文件??????34316??2017-04-05?07:35??kelvinlawson-atomthreads-402fe20\kernel\atomqueue.c
?????文件???????2637??2017-04-05?07:35??kelvinlawson-atomthreads-402fe20\kernel\atomqueue.h
?????文件??????22987??2017-04-05?07:35??kelvinlawson-atomthreads-402fe20\kernel\atomsem.c
?????文件???????2163??2017-04-05?07:35??kelvinlawson-atomthreads-402fe20\kernel\atomsem.h
?????文件??????16530??2017-06-14?18:01??kelvinlawson-atomthreads-402fe20\kernel\atomtimer.c
?????文件???????2482??2017-04-05?07:35??kelvinlawson-atomthreads-402fe20\kernel\atomtimer.h
?????文件??????47659??2017-04-05?07:35??kelvinlawson-atomthreads-402fe20\kernel\Doxyfile
?????文件???????1116??2017-04-05?07:35??kelvinlawson-atomthreads-402fe20\kernel\README
?????文件???????8275??2017-04-05?07:35??kelvinlawson-atomthreads-402fe20\ports\arm\atomport-asm.s
?????文件???????1856??2017-04-05?07:35??kelvinlawson-atomthreads-402fe20\ports\arm\atomport-private.h
?????文件???????2372??2017-04-05?07:35??kelvinlawson-atomthreads-402fe20\ports\arm\atomport-tests.h
?????文件???????6609??2017-04-05?07:35??kelvinlawson-atomthreads-402fe20\ports\arm\atomport.c
?????文件???????3770??2017-04-05?07:35??kelvinlawson-atomthreads-402fe20\ports\arm\atomport.h
?????文件??????47646??2017-04-05?07:35??kelvinlawson-atomthreads-402fe20\ports\arm\Doxyfile
?????文件???????9845??2017-04-05?07:35??kelvinlawson-atomthreads-402fe20\ports\arm\platforms\dm36x\atomport-private.c
?????文件??????24798??2017-04-05?07:35??kelvinlawson-atomthreads-402fe20\ports\arm\platforms\dm36x\dm36x-io.h
?????文件??????47646??2017-04-05?07:35??kelvinlawson-atomthreads-402fe20\ports\arm\platforms\dm36x\Doxyfile
?????文件???????5011??2017-04-05?07:35??kelvinlawson-atomthreads-402fe20\ports\arm\platforms\dm36x\Makefile
?????文件???????8406??2017-04-05?07:35??kelvinlawson-atomthreads-402fe20\ports\arm\platforms\dm36x\README
?????文件???????1442??2017-04-05?07:35??kelvinlawson-atomthreads-402fe20\ports\arm\platforms\dm36x\run_test.exp
?????文件???????3236??2017-04-05?07:35??kelvinlawson-atomthreads-402fe20\ports\arm\platforms\dm36x\startup.s
?????文件???????1427??2017-04-05?07:35??kelvinlawson-atomthreads-402fe20\ports\arm\platforms\dm36x\system.ld
?????文件???????6343??2017-04-05?07:35??kelvinlawson-atomthreads-402fe20\ports\arm\platforms\dm36x\timer.c
............此處省略431個(gè)文件信息
評(píng)論
共有 條評(píng)論