正式决定使用AVRX了,计划先将系统文件的注解译成中文,先传AVRX_TASKING.S,请高手多指点
由于是使用GCC所以我将能见到的与IAR相关的内容都删掉了,另外将每个文件前面的那段东西也删掉了我个英文水平十分有限,恳请高手多多指正
也欢迎和我一样刚入门的多多交流
点击此处下载ourdev_185274.rar(文件大小:7K) 再传avrx_samephore.s上来
点击此处下载ourdev_185294.rar(文件大小:5K) 不错。
AVRX还没认真研究过。主要是全部是汇编,代码不好理解,也不容易移植。 我把代码基本上看了一遍,确实是比较优秀。不过还是有一些小bug,虽然基本不影响使用,但还是不够严谨。 顶,我的英文太差了,希望能看到楼主的中文版。 再传avrx_resetsemaphore.s
重传avrx_semaphore.s
点击此处下载ourdev_185474.rar(文件大小:734字节)
点击此处下载ourdev_185475.rar(文件大小:5K) 再传avrx_testsemaphore.s
点击此处下载ourdev_185514.rar(文件大小:1K) 重传avrx_semaphore.s,已经将系统中原来的avrx_semaphore.s,avrx_testsemaphore.s和avrx_resetsemaphore.s三个文件合在一起了
点击此处下载ourdev_185558.rar(文件大小:6K) AVRX的确不错。实时性很好。
就是它的源码是汇编的,不过有很详细的注释。
曾经在一个M16的产品上跑过。 曾经用过,官网上能找到API,用起来更方便些。
隔些日子等我没事了,打算重拾AvrX! 重新整理一下,上传三个文件
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) 上传一个编译成功的例子,软件仿真已经正常运行,解压后直接双击项目文件夹中的avrx_test.aps就可以打开了,我是直接在avrstudio13sp1下编译成功的
点击此处下载ourdev_185876.rar(文件大小:99K) 再传关于消息的系统文件 顶哦 请高手继续上传哦。
消息的系统文件 这段时间潜在水下又仔细研究了一下,觉得比以前又有所提高再传一份更正过的
点击此处下载ourdev_188289.rar(文件大小:21K) 楼主能不能写一份入门文档呢?把整个的过程介绍一下,比如说怎么移植内核之类的,对想学AVRX的入门者会少走很多弯路!!! 楼上的,不好意思了,我也是刚入门,还没那么高的水平 好东西啊
踩个脚印先 【3楼】 dack
积分:163
派别:
等级:------
来自:
我把代码基本上看了一遍,确实是比较优秀。不过还是有一些小bug,虽然基本不影响使用,但还是不够严谨。
///////////////////
装什么13啊,呸! 建议阿莫封调不文明的帐号 都不知道AVRX怎么玩,希望哪位大虾能写一篇入门类的文章来学习一下。 不知道有多少人在用或者是相用AVRX,但我已经是开始用,而且很想同大家多沟通,说句实话,我也不太欣赏3楼的作风,
有想法说出来是对的,但为什么不能说得更清晰一些,
有Bug,但是到底有哪些BUG?
如果能讲清楚的话,我们这些初学者就会少走一些弯路的,
但3楼这样只说一半的话,我弄不清楚是什么意思,难道是怕我们印象不深? 另外想说的是,觉得现在坛子里的技术交流的气氛不是很好,当然也可能是我的这个题目没什么意思 听别人说挺好的我也准备用,楼主加油啊! 再问个弱弱的问题,这都是汇编,怎么移植啊?
怎么和C一起编译啊! 再传
这次将关于定时器消息的两个文件也加入进来了,不过我将原来的avrx_starttimermessage.s和avrx_canceltimermessage.s合成了一个文件avrx_timermessage.s另外将avrx.h也加入进来了
顺带说一下,因为我在使用时一直是将系统文件和我的应用文件同时编译的,发现这们将系统文件合并后,没有用到的系统函数也会被编译,所以如果想精简的话就要将没用到的系统函数注释掉才成.
不知道有没有人是先将系统编译成库来用的?那样会不会出这种问题?
今天太晚了,明天我自己也先编译成库试一下
楼上的可以试下我在11楼上传的例子,看对你是不是有帮助
点击此处下载ourdev_189353.rar(文件大小:28K) 我已经在成功的跑了几个例程了,看到很多跟我一样刚入门的好像还有很多困惑的地方,很想写一点东西出来,但我个人的能力实在有限,不知道从何写起,希望更多的高手能够参与进来,大家共同写一点能够对想入门的人有些指导性的东西出来 竟然有人骂我,那我就解释一下。
我也是新手,不够资格装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上搜搜更是大把。什么东西都要求别人嚼烂了喂还那么理直气壮真是不可思议。
当然不是说楼主,楼主通读代码,翻译注释,造福坛友确实值得钦佩。 很高兴楼上的能够讲出一些东西,你所讲的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表示歉意 多少年没人留脚印了! mark啦 回复【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)是否就知道了?如何获得它?谢谢。 我也在用Avrx,感觉还是挺不错的一个系统。目前正在使用M64。FLASH,RAM已经不太够用了,正准备向M1281或其他大容量的单片机移植,希望可以共同交流进步。
页:
[1]