搜索
bottom↓
回复: 30

AVRX学习笔记: 建立AVRX库文件

[复制链接]

出0入0汤圆

发表于 2005-8-24 12:15:45 | 显示全部楼层 |阅读模式
AVRX是WINAVR编写的,免费的RTOS。由于使用汇编编写,所以操作系统代码很小,只有500~700字节。AVRX提供了库文件,所以实际应用中,不一定会用到所有功能,代码会更小些。AVRX包含了34个API接口,主要用于以下六大模块的中:

1. Tasking 任务

2. Semaphores 旗语

3. Timer Management 时间管理

4. Message Queues 信息排列

5. Single Step Debugging support 单步Debuging支持

详细信息可以查阅:

http://www.barello.net/avrx/index.htm

出0入0汤圆

 楼主| 发表于 2005-8-24 12:33:43 | 显示全部楼层
1. 以下以Atmega103为例,介绍如何生成Atmega103的AVRX库文件。

注:

上传一个从网络上搜索来的最新的AVRX的文件;

CPU使用Atmega103L,(因为刚好手头有一块ATMGRA103的板子)。



步骤:

1.

下载以下文件并且解压缩到c:\AVRX\下:

点击此处下载armok0168286.rar

2.

修改

1)"AVRX\avrx"目录下的"makefile"中:

ABSPATH=h:/AVRX/avrx";



  2)

  ICCMCU        = m103

  AAVRMCU        = 3

  GCCMCU        = atmega103

  AVRXMCU        = __AT90Mega103__

3.

先运行make gcc,即可生成AVRX的库文件。

出0入0汤圆

 楼主| 发表于 2005-9-7 06:42:08 | 显示全部楼层
AVR的RTOS的选择:

AVR的RTOS很多,网络上比较常见的包含:

AvrX

http://www.barello.net/avrx/

AvrX是一个实时多任务的内核,支持多任务。用汇编编写



EtherNut - Nut/OS

http://www.ethernut.de/en/



FreeRTOS :

http://www.freertos.org/

FreeRTOS是一个开源的小型RTOS,用C语言编写



Salvo:

http://www.pumpkininc.com/



COMATOS:

http://www.nbb.cornell.edu/neurobio/land/STUDENTPROJ/2000to2001/greenblattCOMATOS/index.html



TinyOS:

http://webs.cs.berkeley.edu/tos/





Contiki:

http://www.sics.se/~adam/contiki/



XMK - eXtreme Minimal Kernel

http://sourceforge.net/projects/xmk



pico OS

http://picoos.sourceforge.net/



uSmartX

http://usmartx.sourceforge.net/



从任务来分,又分为强占式(Pre-emptive)和合作式(Cooperative)的内核。它们各自有不同的优缺点。

出0入0汤圆

 楼主| 发表于 2005-9-7 11:29:39 | 显示全部楼层
AVRX例子的调试:

AVRX中自带了好几个例子。但是,在用WINAVR最新版本的调试过程中,总是不能顺利编译成功。经过测试,发现主要是由于以下的原因造成的:

1. 新版的WINAVR不支持例如outp,intp等,因此把它们加入到avrx.h中。

   例如: #ifndef outp

         #define outp(A,B) B = (A)

         #endif

2. 例子中,有以下一句

     #define _SFR_ASM_COMPAT 1

  要改为

    //#define _SFR_ASM_COMPAT 1

因为AVRX可以用于WINAVR以及IAR。

#define _SFR_ASM_COMPAT 1 这句是针对IAR编译器定义的。(这个错误,花了我好几天才找出来,几乎想扔了,哈哈)

3. Makefile太旧了,只生成cof文件,在Avrstudio中调试有困难。



上传一个范例,根据AVRX中自带的Timers所修改的,可以直接打开里面的工程(用PN建立)。

点击此处下载armok0168347.rar

这个例子,执行两个任务:

1. LED1: PB.0关闭0.2秒,点亮0.8秒;

2. LED2: PB.1关闭2秒,点亮2秒;

出0入0汤圆

发表于 2005-9-7 15:20:06 | 显示全部楼层
好贴!

不错,等比完赛好好研究!

出0入0汤圆

发表于 2005-9-7 15:33:00 | 显示全部楼层
DING

出0入0汤圆

发表于 2005-9-7 19:23:39 | 显示全部楼层
哈哈,顶

出0入0汤圆

发表于 2005-9-7 19:39:06 | 显示全部楼层
希望testcode开个AVRX专栏...有空我也玩玩...

出0入0汤圆

发表于 2005-9-7 21:22:25 | 显示全部楼层
好贴,顶啊!

出0入0汤圆

发表于 2005-9-7 21:45:15 | 显示全部楼层
这样的贴子真是好贴。这段时间在搞一个项目,完了后好好研究一下。
-----此内容被dengchongguang于2005-09-07,21:46:33编辑过

出0入0汤圆

发表于 2005-9-7 22:30:57 | 显示全部楼层
在<<AVR-GCC与AVR单片机C语言开发>>一书中,还保留着

#define _SFR_ASM_COMPAT 1



可能是用旧版本的问题吧.(我确实不喜欢20050214,问题太多)



书中说: 包含所有功能时,AVRX需要1K字节的空间.



由于用M8L,所以一直没敢用,现在用M16L,还是紧张点...有空试试...



http://www.e-midas.cn/Article_Show.asp?ArticleID=140



http://www.dearbook.com.cn/book/viewbook.aspx?pno=TS0027284
-----此内容被hotpower于2005-09-07,23:17:28编辑过

出0入0汤圆

发表于 2005-9-7 22:55:44 | 显示全部楼层
还是ARTX比较好玩

出0入0汤圆

发表于 2005-9-7 23:18:57 | 显示全部楼层
哈哈...确实ARTX好玩...玩时和"真"的一样.

出0入0汤圆

发表于 2005-9-8 02:55:36 | 显示全部楼层
不看文件日期不知道,一看吓一跳啊。最后的版本却是2001年发布的。我们现在才拿来学,唉,我们可真落后啊。

出0入0汤圆

发表于 2007-8-8 17:52:31 | 显示全部楼层
真是好贴阿!!!

出0入0汤圆

发表于 2007-8-8 23:36:08 | 显示全部楼层
avrx(2。6g)在gcc上是不错,但在Iar下能成功编译库,但是程序总是跑飞,lz成功过吗

出0入0汤圆

发表于 2007-8-9 09:52:10 | 显示全部楼层
AVR的RTOS的选择:

AVR的RTOS很多,网络上比较常见的包含:

AvrX

http://www.barello.net/avrx/

AvrX是一个实时多任务的内核,支持多任务。用汇编编写



EtherNut - Nut/OS

http://www.ethernut.de/en/



FreeRTOS :

http://www.freertos.org/

FreeRTOS是一个开源的小型RTOS,用C语言编写



Salvo:

http://www.pumpkininc.com/



COMATOS:

http://www.nbb.cornell.edu/neurobio/land/STUDENTPROJ/2000to2001/greenblattCOMATOS/index.html



TinyOS:

http://webs.cs.berkeley.edu/tos/





Contiki:

http://www.sics.se/~adam/contiki/



XMK - eXtreme Minimal Kernel

http://sourceforge.net/projects/xmk



pico OS

http://picoos.sourceforge.net/



uSmartX

http://usmartx.sourceforge.net/



请问,这些RTOS哪些是免费的,开源,可移植的?

出0入0汤圆

发表于 2007-10-31 22:19:27 | 显示全部楼层
ok

出0入0汤圆

发表于 2007-11-1 14:25:48 | 显示全部楼层

出0入0汤圆

发表于 2009-3-20 11:43:41 | 显示全部楼层
楼主? 那个【AVRX】 Make GCC工具是怎么配置的?

出0入0汤圆

发表于 2009-3-20 21:35:51 | 显示全部楼层
楼上请看
http://www.ouravr.com/bbs/bbs_content.jsp?bbs_sn=705861&bbs_page_no=1&search_mode=3&search_text=ml07077&bbs_id=9999

出0入0汤圆

发表于 2009-5-8 17:00:49 | 显示全部楼层

出0入0汤圆

发表于 2009-5-9 09:08:25 | 显示全部楼层
mark , 还没研究过os..

出0入0汤圆

发表于 2010-6-29 14:17:43 | 显示全部楼层
MARK

出5入8汤圆

发表于 2010-7-18 19:20:20 | 显示全部楼层
mark,回头研究

出0入0汤圆

发表于 2010-7-22 10:05:28 | 显示全部楼层
mark'

出0入0汤圆

发表于 2010-7-24 11:49:59 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-1-30 13:44:38 | 显示全部楼层
thank you!!!

出0入0汤圆

发表于 2011-1-30 20:01:48 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-6-12 00:33:32 | 显示全部楼层
mark

出0入0汤圆

发表于 2013-5-15 12:49:42 | 显示全部楼层
very interesting !!!
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-6 05:24

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表