zlf667788 发表于 2007-12-4 18:31:05

正式决定使用AVRX了,计划先将系统文件的注解译成中文,先传AVRX_TASKING.S,请高手多指点

由于是使用GCC所以我将能见到的与IAR相关的内容都删掉了,另外将每个文件前面的那段东西也删掉了
我个英文水平十分有限,恳请高手多多指正
也欢迎和我一样刚入门的多多交流
点击此处下载ourdev_185274.rar(文件大小:7K)

zlf667788 发表于 2007-12-4 19:39:24

再传avrx_samephore.s上来
点击此处下载ourdev_185294.rar(文件大小:5K)

ATmega32 发表于 2007-12-4 19:48:10

不错。

AVRX还没认真研究过。主要是全部是汇编,代码不好理解,也不容易移植。

dack 发表于 2007-12-4 21:21:13

我把代码基本上看了一遍,确实是比较优秀。不过还是有一些小bug,虽然基本不影响使用,但还是不够严谨。

scwxb 发表于 2007-12-5 12:25:49

顶,我的英文太差了,希望能看到楼主的中文版。

zlf667788 发表于 2007-12-5 12:28:30

再传avrx_resetsemaphore.s
重传avrx_semaphore.s
点击此处下载ourdev_185474.rar(文件大小:734字节)
点击此处下载ourdev_185475.rar(文件大小:5K)

zlf667788 发表于 2007-12-5 13:51:41

再传avrx_testsemaphore.s
点击此处下载ourdev_185514.rar(文件大小:1K)

zlf667788 发表于 2007-12-5 16:21:44

重传avrx_semaphore.s,已经将系统中原来的avrx_semaphore.s,avrx_testsemaphore.s和avrx_resetsemaphore.s三个文件合在一起了
点击此处下载ourdev_185558.rar(文件大小:6K)

zhonghua_li 发表于 2007-12-5 17:36:48

AVRX的确不错。实时性很好。
就是它的源码是汇编的,不过有很详细的注释。
曾经在一个M16的产品上跑过。

hackerboygn 发表于 2007-12-5 18:35:14

曾经用过,官网上能找到API,用起来更方便些。
隔些日子等我没事了,打算重拾AvrX!

zlf667788 发表于 2007-12-6 08:34:15

重新整理一下,上传三个文件
avrx_tasking.s 将原来的avrx_tasking.s,avrx_suspend.s,avrx_halt.s集中在一起了
avrx_semaphore.s 将原来的avrx_semaphore.s,avrx_testsemaphore.s,avrx_resetsemaphore集中在一起了
avrx_timequeue.s 将原来的avrx_timequeue.s,avrx_timecancel.s集中在一起了
有这些文件应该可以跑一些简单应用了,先用着了,等用到其它的再继续译了
点击此处下载ourdev_185677.rar(文件大小:19K)

zlf667788 发表于 2007-12-6 17:08:05

上传一个编译成功的例子,软件仿真已经正常运行,解压后直接双击项目文件夹中的avrx_test.aps就可以打开了,我是直接在avrstudio13sp1下编译成功的

点击此处下载ourdev_185876.rar(文件大小:99K)

zlf667788 发表于 2007-12-6 23:59:09

再传关于消息的系统文件

yaya001 发表于 2007-12-7 09:29:24

顶哦 请高手继续上传哦。

消息的系统文件

zlf667788 发表于 2007-12-13 23:10:15

这段时间潜在水下又仔细研究了一下,觉得比以前又有所提高再传一份更正过的
点击此处下载ourdev_188289.rar(文件大小:21K)

ning321613 发表于 2007-12-14 09:26:38

楼主能不能写一份入门文档呢?把整个的过程介绍一下,比如说怎么移植内核之类的,对想学AVRX的入门者会少走很多弯路!!!

zlf667788 发表于 2007-12-14 17:19:59

楼上的,不好意思了,我也是刚入门,还没那么高的水平

greencamel 发表于 2007-12-14 20:43:55

好东西啊
踩个脚印先

ccccccc 发表于 2007-12-14 20:46:00

【3楼】 dack
积分:163
派别:
等级:------
来自:
我把代码基本上看了一遍,确实是比较优秀。不过还是有一些小bug,虽然基本不影响使用,但还是不够严谨。
///////////////////

装什么13啊,呸!

leon101010 发表于 2007-12-14 21:12:11

建议阿莫封调不文明的帐号

stevenlu 发表于 2007-12-15 09:40:05

都不知道AVRX怎么玩,希望哪位大虾能写一篇入门类的文章来学习一下。

zlf667788 发表于 2007-12-16 22:25:11

不知道有多少人在用或者是相用AVRX,但我已经是开始用,而且很想同大家多沟通,说句实话,我也不太欣赏3楼的作风,
有想法说出来是对的,但为什么不能说得更清晰一些,
有Bug,但是到底有哪些BUG?
如果能讲清楚的话,我们这些初学者就会少走一些弯路的,
但3楼这样只说一半的话,我弄不清楚是什么意思,难道是怕我们印象不深?

zlf667788 发表于 2007-12-16 22:27:22

另外想说的是,觉得现在坛子里的技术交流的气氛不是很好,当然也可能是我的这个题目没什么意思

doubleforever 发表于 2007-12-16 22:35:29

听别人说挺好的我也准备用,楼主加油啊!

doubleforever 发表于 2007-12-16 22:45:57

再问个弱弱的问题,这都是汇编,怎么移植啊?

怎么和C一起编译啊!

zlf667788 发表于 2007-12-17 00:14:33

再传
这次将关于定时器消息的两个文件也加入进来了,不过我将原来的avrx_starttimermessage.s和avrx_canceltimermessage.s合成了一个文件avrx_timermessage.s另外将avrx.h也加入进来了

顺带说一下,因为我在使用时一直是将系统文件和我的应用文件同时编译的,发现这们将系统文件合并后,没有用到的系统函数也会被编译,所以如果想精简的话就要将没用到的系统函数注释掉才成.

不知道有没有人是先将系统编译成库来用的?那样会不会出这种问题?

今天太晚了,明天我自己也先编译成库试一下

楼上的可以试下我在11楼上传的例子,看对你是不是有帮助

点击此处下载ourdev_189353.rar(文件大小:28K)

zlf667788 发表于 2007-12-17 00:18:00

我已经在成功的跑了几个例程了,看到很多跟我一样刚入门的好像还有很多困惑的地方,很想写一点东西出来,但我个人的能力实在有限,不知道从何写起,希望更多的高手能够参与进来,大家共同写一点能够对想入门的人有些指导性的东西出来

dack 发表于 2007-12-17 09:35:04

竟然有人骂我,那我就解释一下。
我也是新手,不够资格装x,关于那个bug我在论坛里发过,比较旧了,我一时也想不起来,要贴出链接我也要搜索。我想一般人也不会想一而再地写一些相同的东西,何况有一段时间没用,我要写也需要时间去重新看代码。
既然大家都是新手,我想是不是应该在论坛里先搜索搜索,看看有什么资料。反正我是这样做的,avrx官方论坛我也大概看了一下,虽然很多都看不懂,还用我那初中水平破得不能再破的英语问了两个问题。
我还是贴出那个bug的链接吧,省得有人又骂我装X。(也许算不上bug,但会造成误解,我用的是f版的,新版的不知道有没有改过)
http://www.ouravr.com/bbs/bbs_content.jsp?bbs_sn=766862&bbs_page_no=1&search_mode=4&search_text=dack&bbs_id=9999
在5楼。
要学新东西还是自己多研究研究吧,现在网上的资料很多。虽然avrx在这里用的人不算多,但搜搜rtos还是有很多文章的,google上搜搜更是大把。什么东西都要求别人嚼烂了喂还那么理直气壮真是不可思议。

当然不是说楼主,楼主通读代码,翻译注释,造福坛友确实值得钦佩。

zlf667788 发表于 2007-12-17 14:50:26

很高兴楼上的能够讲出一些东西,你所讲的BUG我看了一下,确实存在,要向你表示感谢

//以下是DACK在另一个话题中所提到
粗粗研读了一下avrx的源码,还是有些小bug的。例如avrx.h文件中
INTERFACE void AvrXRunTask(TaskControlBlock *);
INTERFACE unsigned char AvrXInitTask(TaskControlBlock *);
这两个函数声明其实应该是
INTERFACE pProcessID AvrXRunTask(TaskControlBlock *);
INTERFACE pProcessID AvrXInitTask(TaskControlBlock *);
他们都是返回pProcessID类型的,这个返回值在很多函数的参数中会用到,本来我以为只能用AvrXSelf函数取得这个指针。其实没必要。

//以下是在TASKING.S中的相关内容
/*+
; --------------------------------------------------
; *PID AvrXInitProcess(*TaskControlBlock)
; *PID AvrXRunTask(*TaskControlBlock)
AvrXRunTask:
AvrXInitTask:

从这点上看,DACK还是很认真细致的

最后,对我在21楼的说法向DACK表示歉意

Ljay207 发表于 2009-6-27 14:52:45

多少年没人留脚印了!

simond 发表于 2009-6-27 15:29:58

mark啦

xuhaikun 发表于 2010-10-3 15:22:33

回复【28楼】zlf667788
很高兴楼上的能够讲出一些东西,你所讲的bug我看了一下,确实存在,要向你表示感谢
//以下是dack在另一个话题中所提到
粗粗研读了一下avrx的源码,还是有些小bug的。例如avrx.h文件中
interface void avrxruntask(taskcontrolblock *);
interface unsigned char avrxinittask(taskcontrolblock *);
这两个函数声明其实应该是
interface pprocessid avrxruntask(taskcontrolblock *);
interface pprocessid avrxinittask(taskcontrolblock *);
他们都是返回pprocessid类型的,这个返回值在很多函数的参数中会用到,本来我以为只能用avrxself函数取得这个指针。其实没......
-----------------------------------------------------------------------

请问要使用AvrXSuspend(pProcessID)(挂起运行的任务)、AvrXResume(pProcessID)(恢复任务的运行)这些函数,参数(pProcessID)是如何知道的,在定义一个任务的时候(pProcessID)是否就知道了?如何获得它?谢谢。

qqwe13 发表于 2014-2-19 21:32:33

我也在用Avrx,感觉还是挺不错的一个系统。目前正在使用M64。FLASH,RAM已经不太够用了,正准备向M1281或其他大容量的单片机移植,希望可以共同交流进步。
页: [1]
查看完整版本: 正式决定使用AVRX了,计划先将系统文件的注解译成中文,先传AVRX_TASKING.S,请高手多指点