📄 readme.txt
字号:
1. 这是UCOS在我的MIPS CPU上的移植代码, 编译工具使用标准的MIPS GCC.
2. 所有CPU相关的代码全在start.S中,相关函数说明如下:
2.1
***************************************************
_start:
这是上电后,CPU开始执行的入口点,主要设置C代码运行
时的堆栈与PIC寄存器,然后跳转到 main().
***************************************************
2.2
***************************************************
OSTaskStkInit:
建立任务时,初始化它的堆栈,为第一次调度做准备.
***************************************************
2.3
***************************************************
_OSStartHighRdy:
任务第一次调度,利用 OSTaskStkInit 建立的堆栈,跳转
到任务的入口.
***************************************************
2.4
***************************************************
OSCtxSw:
这是任务调度时的操作,主要保存当前任务的状态寄存器
到它的堆栈区,然后,弹出选中任务的堆栈,恢复到上次运行时
的位置,重新运行.
***************************************************
2.5
***************************************************
isr_service:
这是中断发生时的入口,每1ms来一次.先保存当前任务的
状态,然后,跳到C的中断服务函数isr_service_wrap.
中断返回后再继续被中断的任务.
***************************************************
2.6
***************************************************
isr_service_wrap:
这是中断的C服务函数,主要是:
1)获得中断原因,分别处理.(目前只有时钟中断)
重新设置中断产生条件.
2)返回前,进行任务调度.
这就是可抢夺式OS的体现,优先级高的任务优先执行.
***************************************************
3. 上述代码在FPGA上运行正常.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -