⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 config.inc

📁 itron操作系统在日本用的很多
💻 INC
字号:
;操作系统使用的一些常量数据
        .section        rom_FE, ROMDATA

        .glb    _stad_tbl               ;任务开始执行地址表
        .glb    _task1, _task2, _idle

                ;itron规范的对象ID都是从1开始的
_stad_tbl:      .lword  0               ;任务起始地址表的第一项不使用
                .lword  _task1          ;任务1的起始地址
                .lword  _task2          ;任务2的起始地址
                .lword  _idle           ;空任务的起始地址

        .glb    _pri_tbl                ;任务的优先级表

_pri_tbl:       .word   0               ;优先级表的第一数据项不使用
                .word   1               ;任务1的优先级
                .word   2               ;任务2的优先级
                .word   3               ;空任务的优先级(必须是优先级最低的任务)

        .glb    _sp_tbl                 ;任务堆栈指针表

_sp_tbl:        .word   0               ;任务堆栈指针的第一项不使用
                .word   ID1_SP          ;任务1的堆栈指针
                .word   ID2_SP          ;任务2的堆栈指针
                .word   IDLE_SP         ;空任务的堆栈指针

        .glb    _semcnt_tbl             ;信号量初始值表

_semcnt_tbl:    .word   0               ;信号量初始值表的第一项不使用
                .word   1               ;设定第一个信号量的初始值

ID1_MSGSIZ      .equ    2               ;定义邮箱的大小
ID2_MSGSIZ      .equ    10

        .section        rom_FE, ROMDATA

        .glb    _msgsiz_tbl             ;邮箱大小表

_msgsiz_tbl:    .word   0               ;邮箱大小表的第一项不使用
                .word   ID1_MSGSIZ      ;定义第一个邮箱大小(存储消息的数量)
                .word   ID2_MSGSIZ      ;定义第二个邮箱大小(存储消息的数量)

        .section        rom_FE, ROMDATA

        .glb    _msgq_tbl               ;邮箱的消息队列表

_msgq_tbl:      .word   0               ;邮箱的消息队列表的第一项不使用
                .word   ID1_BUF         ;第一个邮箱的消息队列指针
                .word   ID2_BUF         ;第二个邮箱的消息队列指针

        .section        bss_NE, DATA    ;为邮箱的消息队列分配空间

ID1_BUF:        .blkw   ID1_MSGSIZ      ;分配第一个邮箱的消息对列空间
ID2_BUF:        .blkw   ID2_MSGSIZ      ;分配第二个邮箱的消息对列空间

        ;定义并分配堆栈空间,MR30采用满递减的方式操作堆栈
        .section        stack, DATA, ALIGN
        .glb    INT_SP, SYS_SP
        .glb    stack_top,IDLE_SP,ID1_SP,ID2_SP,ID3_SP

stack_top:                              ;栈定
                .blkb   100H
IDLE_SP:                                ;空任务堆栈栈顶
                .blkb   100H
ID1_SP:                                 ;第一个任务的堆栈栈顶
                .blkb   100H
ID2_SP:                                 ;第二个任务的堆栈栈顶
                .blkb   100H
INT_SP:                                 ;中断堆栈栈顶(用于保存中断上下文)
                .blkb   100H
SYS_SP:                                 ;系统堆栈栈顶(用于RTOS操作)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -