Malay
颜色选择
阳光橙
深夜黑
天空蓝
葡萄紫
薄荷绿
深海蓝
首页
论坛
佳礼报道
新闻
搜索
1936
查看
1
回复

[原创] PIC18f rtos - OSA 入门教程

[复制链接]

楼主: 三国小兵       显示全部楼层   阅读模式

楼主
发表于 25-2-2016 11:31 PM | 显示全部楼层 |阅读模式
"实时操作系统(RTOS)是指当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统做出快速响应,调度一切可利用的资源完成实时任务,并控制所有实时任务协调一致运行的操作系统。提供及时响应和高可靠性是其主要特点。" - quote from baidu

刚刚写完了关于 rtos osa 一步步的入门教程.

用的是c18和mplab. MCU 是pic18f4553.

链接:
OSA rtos.

希望大家多多给意见。

评分

参与人数 1积分 +50 收起 理由
pic + 50 谢谢分享

查看全部评分

回复

使用道具 举报

楼主
 楼主| 发表于 26-3-2016 12:35 PM | 显示全部楼层
任务处理是mcu很复杂的东西,越大的program, 越难maintain和修改。
所以实时操作系统有很大的用户群。

实时操作系统是很需要ram, 可是大部分的mcu是小memory. 应用实时操作系统有点不大实际。

OSA rtos 是用 cooperative scheduling, 所以每一件任务的ram都是小和固定。

可以参考以下图片。


我将使用PIC18F4553和MPLAB C18 ,所以RAM是每个任务这是4 bytes。另外,一个全OSA RTOS功能 - 仅需要1214 bytes的ROM和16 bytes RAM。这是小规模足以对PIC18F实施足够的系统。

运用Microchip C18需要的注意事项,如一定的局限性:
-不可以使用 procedural abstraction optimization
-不可以使用 Stack Model: Multi-bank

这是不是一个大问题,因为是使用C18的免费版本,你不会享受这些优化。

如果你要开始使用rtos, 你需要加入以下source file:


然后你需要"include search path" 去 OSA 文件。


还有以下settings一定要修改。




这个就是我的rtos configuration file:


我的任务代码:


OS timer setting 是 10ms.


如果出问题,你还可以去debugger mode 看看。


如果还要知道详细的实行和代码,还是去看英文版的http://electronictoofree.blogspo ... rtos-first-try.html.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册 | 登入

本版积分规则

 WeChat
 CARI App
Get it FREE Google play
 Instagram
cari_malaysia
FOLLOW
- 版权所有 © 1996-2019 Cari Internet Sdn Bhd 佳礼网络有限公司 (483575-W) -
7.905764s Gzip On
快速回复 返回顶部 返回列表