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

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

?? changes.txt

?? 一個基于AVR 單片機的操作系統,有組于了解操作系統在單片機上運行的內幕.
?? TXT
字號:
5/19/2005 New Release AvrX 2.6.f for WinAvr 3.4+

1. Got rid of all inp() outb() stuff and went to direct assignment.
   this should work for IAR as well.

2. Updated makefiles for dwarf-2 & cof/extended cof debug support.  THe AvrX
   source will never be part of the debug module, unfortunately.

4. Add AvrX synchronized FIFO facility

5. Write C serial i/o that is pretty generic using fifo's

9/16/2002 New release AvrX 2.6.e
1. Touched headers and source files to allow compilation under both
   GCC 3.02 and 3.2 (Added SFR_IO_ADDR() macro for all I/O addresses)

   IAR stuff most certainly broken now, particularly for interrupt vectors.
   GCC changed how vectors are specified with 3.0 and the IAR support was
   written based upon 2.97 support.

2. Touched all C files (samples and tests) to
      #define _SFR_ASM_COMPAT 1
   which is a hack to make all the old outp, inp stuff work.  For new
   3.2 code, use direct I/O.  I.e. char temp = SREG or PORTA |= 0x01

6/04/2002 New release AvrX 2.6.d
1. New tasking code for zippier performance
    - Moved kernel data into a struct and accessed them via a pointer.
      this actually saved cycles and words when more than two accesses
      were needed.  This affected "avrx.inc", tasking, semaphores,
      single step, priority, terminate and probably other files.

    - Re-arranged _Prolog() to exit early if entering from the IDLE
      task.  I.e. no context is saved or restored for IDLE.
      NB: It is no longer possible to do work during IDLE.  If
      you need a background IDLE task, create a new task with a low
      priority.  With the changes, the round trip from IDLE for a timer
      handler interrupt is ~140 cycles vs ~240 prior to the changes.  This
      won't allow faster interrupts since the round trip when interrupting
      a task is no faster, but it will reduce system load overall.

    - Modified _QueuePid slightly to return status.  Used this
      status to optimize AvrXIntSetSemaphore() so the context switch
      is skipped if the top of the run queue (self) hasn't changed.

2. Added terminate function to monitor.
    - Now you can k[oooo] a task.  Then you can p[oooo] to re-initialize
      it and then r[oooo] to start it running again.  Whoohoo.

3. Updated all regression tests and verified they worked
    - TestCase3 was checking little-endien (pre IAR rework) so
      I removed the macro.

4. Updated "serialio.s" to include the file "avrx-signal.h" which is
   needed with the #define SIG_UART_DATA when using 3.02 or earlier versions
   of gcc-avr.  The GCC file "sig-avr.h" would work fine as well.

5/31/2002 update for mega128 support in GCC
1. mostly minor changes to re-name stuff to conform to new register and
   bit names in the iom128.h file.  Files touched:

   samples/hardware.h - Check for m128 and use alternate bit names
   samples/*.c      - included new header for serialio routines.
   avrx/serialio.h  - new header with function prototypes
   avrx/serialio.s  - lots of #ifdef for changing bit names
   avrx/monitor.s   - bug fixes in address handling when modifying memory
   avrx/avrx_eeprom.s - bug fix where small chips won't compile (used EEARH)
   avrx/avrx_generatesinglestepinterrupt.s
                    - redefined bit name when using '128

6/8/2001 avrx 2.6
1. Updated source code with aliases for all registers (avrxctoasm.h) to
allow assembling under either avr-gcc or IAR C compilers.

2. I replaced avrx macros "AVRX_TASK" and "AVRX_TASKDEF" with New macros:
	AVRX_IAR_TASKDEF
	AVRX_GCC_TASKDEF
	AVRX_IAR_TASK
	AVRX_GCC_TASK
see the header file "avrx.h" for all the gory details.

3. Added several new header files to implement the interrupt table function
of GCC in the IAR environment (DON'T USE THE IAR INTERRUPT CONSTRUCTS!)
	avrx-io.h
	avrx-signal.h
	avrio.h (actually this is a pre-release IAR file...)
	avrx_iar_intvect.s

4. changed the way "Epilog()" works to work around optimization issues
in IAR C compiler.

5. Updated samples and test cases to build under either compiler

6. Updated Makefile to reflect the differing needs of GCC and IAR

7. Look for more release notes on the avrx web site on how to deal with IAR.  It
is not as simple as GCC..

2/28/01 avrx 2.5b

1. Updated kernel and debugger to work with 2.97 and later
version of avr-gcc.  This change reflects the new calling
conventions: p1 = R24, p2 = R22, etc.

2. The 01/18 version of the compiler has subtle bugs with -O3
optimization.  Build samples and test code -Os or -O2

7-4-00	avrx 2.5a

1. Modified AvrXWaitSemaphore and AvrXSetSemaphore (and varients)
to vastly speed up the trivial case of no tasks waiting, or
the semaphore already set.  Previously a half-context switch
was made upon entry and exit of each routine.  In AvrX 2.3 this
was relatively inexpensive and preserved all registers used in
the call.  In 2.5 all registers are switched (to allow C to be
used everywhere) and it became expensive.  Since GCC does not
expect R17-R31 to be preserved (except R29:28) across calls I
was able to move the half context switch to the precise point
where a context switch would be needed (e.g. when a task needs
to block, or when un-blocking another task).  Now, when using
Semaphores as a mutual exlusion flag (e.g. resource access like
EEPromRead/Write) the normal case will be very cheap: just grab
and release the flag.  The only time any real work is done is
when two tasks attempt to access the resource at the same time.

A side effect of the change, implied above, is that registers
R22-27, 30 & 31 are not preserved across calls.  This doesn't
affect GCC, but will cause problems for assembly code that used
to count on all registers being preserved.

2. Added a series of macros to simplify the C code of an AvrX
task.  From the header file "AvrX.H"  Updated the sample code
with the macros.

AVRX_TASK(start, stacksz, priority)
	Declare task data structures and forward reference to task
AVRX_TASKDEF(start, stacksz, priority)
	Declare task data structure and the top level C
	declaration (AVRX_TASK + C function declaration)
AVRX_SIGINT(vector)
	Declare the top level C declaration for an
	interrupt handler
AVRX_EXTERNTASK(start)
	Declare external task data structures
PID(start)
	Return the pointer to the task PID
TCB(start)
	Return the pointer to the task TCB

6-20-00 avrx 2.5

1. Initial release of AvrX rewritten for the avr-gcc compiler.
All pointers changed to 'near' (16 bits) and all interfaces
modified to be native GCC.  Also, the context switch was modified
to swap the entire context since C can and does use all registers.

Although the stack usage rises a lot, compared to AvrX 2.3, overall
the speed of execution is very similar.  The former took 211 cycles
to process a timer tick with an active timer in the queue.  The
new version takes 239 cycles, about 10% slower.  The bulk of the
cycles are in the context switch from user code to kernel and back
(~160).

2. Included test cases to exercise basic AvrX functionality.  Test
cases cover semaphores, basic tasking, message queues and timer queues.

3. Included sample code illustrating how to write an interrupt handler,
extend the message model to include data and how to use timers.

4. Extended the AvrX model with a special version of a timer element
that queues itself onto a message queue when expired.  This allows a
task to wait upon a message queue for multiple events including timers.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产成人精品在线看| 亚洲制服丝袜在线| 欧美一区三区四区| 8x福利精品第一导航| 欧美一区二区私人影院日本| 欧美一卡二卡在线观看| 日韩午夜在线观看视频| 久久亚洲综合色一区二区三区| 精品国产一区二区三区不卡 | 久久综合av免费| 精品国产一区二区国模嫣然| 久久一区二区视频| 日本一二三不卡| 亚洲一区在线视频观看| 午夜电影一区二区三区| 久久精品久久99精品久久| 国产精品原创巨作av| av不卡一区二区三区| 欧美性xxxxxx少妇| 久久日一线二线三线suv| 国产精品久久久99| 午夜一区二区三区视频| 麻豆成人综合网| 丁香激情综合国产| 欧美久久一区二区| 国产日韩欧美高清| 亚洲h在线观看| 国产乱码字幕精品高清av| 色婷婷综合中文久久一本| 69精品人人人人| 欧美激情一区二区三区全黄| 亚洲自拍偷拍欧美| 国产一区二区久久| 欧美视频在线观看一区二区| 精品国产网站在线观看| 亚洲欧美日韩国产手机在线| 美女国产一区二区| 色综合久久综合网97色综合| 精品对白一区国产伦| 亚洲免费观看高清完整版在线观看熊 | 久久青草国产手机看片福利盒子| 精品久久久久久亚洲综合网| 最新成人av在线| 天天av天天翘天天综合网| 国产精品456| 欧美一级淫片007| 亚洲欧美偷拍另类a∨色屁股| 奇米影视7777精品一区二区| 97精品电影院| 国产亚洲欧美日韩俺去了| 性做久久久久久久免费看| 91免费在线视频观看| 日本一区二区三区在线不卡| 黄一区二区三区| 在线电影国产精品| 一区二区三区在线观看欧美| av在线不卡免费看| 国产欧美精品一区二区色综合 | 26uuu国产电影一区二区| 亚洲图片欧美色图| 99r国产精品| 综合欧美一区二区三区| 国产乱人伦偷精品视频免下载| 欧美一区二区三区四区在线观看| 亚洲午夜激情网站| 91丨porny丨户外露出| 中文av字幕一区| 成人aa视频在线观看| 国产精品网站一区| 成人午夜激情在线| 中文字幕乱码日本亚洲一区二区| 国产九色精品成人porny| 日韩亚洲欧美中文三级| 日韩av电影天堂| 制服丝袜在线91| 麻豆视频观看网址久久| 欧美高清视频在线高清观看mv色露露十八 | 99久久99久久综合| 亚洲天堂免费在线观看视频| 97久久超碰精品国产| 亚洲另类一区二区| 欧美网站一区二区| 美女尤物国产一区| 国产日韩综合av| 99久久99久久综合| 亚洲国产裸拍裸体视频在线观看乱了 | 精品久久久久久久久久久久久久久 | 在线播放91灌醉迷j高跟美女| 亚洲国产视频a| 欧美午夜视频网站| 热久久免费视频| 国产午夜精品久久久久久久| av综合在线播放| 亚洲图片欧美色图| 精品国产免费人成在线观看| 懂色av一区二区三区免费看| 亚洲少妇屁股交4| 欧美军同video69gay| 国产真实乱对白精彩久久| 中国色在线观看另类| 91国在线观看| 美脚の诱脚舐め脚责91| 欧美激情自拍偷拍| 精品视频1区2区| 欧美aaaaaa午夜精品| 中文字幕av一区二区三区高 | 五月综合激情网| 久久伊人蜜桃av一区二区| 不卡一区中文字幕| 水蜜桃久久夜色精品一区的特点| 久久久久久久久蜜桃| 在线观看亚洲a| 国产综合色精品一区二区三区| 国产精品丝袜久久久久久app| 欧洲生活片亚洲生活在线观看| 九色porny丨国产精品| 亚洲已满18点击进入久久| 2020国产成人综合网| 欧美日韩免费视频| 成人av免费在线| 美女视频一区在线观看| 亚洲精品高清视频在线观看| 精品国产一区二区三区久久影院| 一本一本久久a久久精品综合麻豆| 久久er99热精品一区二区| 洋洋av久久久久久久一区| 久久久精品蜜桃| 欧美一区三区二区| 欧美性猛交xxxxxxxx| 一本色道久久综合亚洲精品按摩 | 中文字幕欧美一| www激情久久| 日韩免费观看高清完整版| 欧美日韩成人综合| 日本道在线观看一区二区| av资源网一区| 成人综合激情网| 国产经典欧美精品| 极品销魂美女一区二区三区| 日韩成人一级大片| 香蕉成人啪国产精品视频综合网| 亚洲欧美区自拍先锋| 国产精品麻豆一区二区| 国产欧美精品一区| 中文文精品字幕一区二区| 精品1区2区在线观看| 精品99一区二区| 久久精品夜色噜噜亚洲a∨| 欧美大片日本大片免费观看| 欧美成人vr18sexvr| 精品粉嫩超白一线天av| 精品久久久久久久久久久久包黑料| 日韩欧美一区二区不卡| 欧美mv和日韩mv国产网站| 日韩精品一区在线观看| 欧美xxx久久| 欧美精品一区二区三区高清aⅴ| 26uuu亚洲综合色欧美| 久久久九九九九| 国产精品国产三级国产aⅴ入口 | 韩国视频一区二区| 国产麻豆视频一区| 成人午夜av在线| 91在线一区二区| 777色狠狠一区二区三区| 91麻豆精品国产91久久久使用方法 | 日韩一区二区三区观看| 欧美videos大乳护士334| 日本一区二区动态图| 一区二区三区在线观看国产| 日本免费在线视频不卡一不卡二| 国产在线看一区| 99久久久无码国产精品| 欧美日韩亚洲另类| 精品91自产拍在线观看一区| 中文字幕在线观看不卡视频| 图片区日韩欧美亚洲| 激情av综合网| 日本道色综合久久| 精品剧情v国产在线观看在线| 日本一区二区三区dvd视频在线| 亚洲视频在线一区观看| 欧美a级一区二区| 波多野结衣视频一区| 欧美精品乱码久久久久久| 久久免费看少妇高潮| 亚洲国产精品人人做人人爽| 久国产精品韩国三级视频| 91亚洲精品乱码久久久久久蜜桃| 欧美日韩一区三区四区| 国产人妖乱国产精品人妖| 亚洲成人免费av| 成人伦理片在线| 日韩一卡二卡三卡| 亚洲欧美日本在线| 国产激情91久久精品导航| 欧美一区二区啪啪| 综合色中文字幕| 成人激情动漫在线观看| 欧美精品一区二区久久久|