推荐一款适合初学者的新型单片机操作系统TreeOS 1.0
使用类似状态机的通用软件架构,带ComLib A1软件构件库,内含数十个C文件,包括各种驱动程序和常用程序模块等。这些模块可自由组合而不冲突,并可方便移植到各种单片机。既可用于51单片机,也可用于STM32等等
。是初学者不可多得的学习材料,也可以帮助单片机工程师极大地提高开发效率。 提供写资料啊 做开发板广告么?? 地址,资料。
优缺点。
说说。 不留种,菊花WRT TreeOS可能是要绑定开发板作为盈利模式,可能不开源。 他的开发板卖280元,开发板只值80元,他的操作系统和固件库200元?但以我的水平无法判断他的操作系统和固件库的优劣,有高手出来给分析一下? 哎...楼主不厚道啊..{:huffy:}{:huffy:}{:huffy:}{:huffy:}{:huffy:} 更详细的资料呢?。。。 抱歉,只是提供信息告诉大家有这回事。具体资料可到官网www.treeos.com.cn仔细查看,新推出的资料可能还不太全。 Excellence 发表于 2013-12-21 11:19
地址,资料。
优缺点。
说说。
www.treeos.com.cn 楼主,广告 本帖最后由 1欧姆 于 2013-12-22 10:52 编辑
TreeOS 1.0源程序例程一 广告水平很高的样子 多些例子和文档 TreeOS 1.0实时操作系统使用指南 手机端链接错误,附件看不到 1欧姆 发表于 2013-12-21 16:12
www.treeos.com.cn
网站打开报错。。。 Excellence 发表于 2013-12-21 20:51
网站打开报错。。。
抱歉。请问用的是何种浏览器? mdcao 发表于 2013-12-21 20:46
手机端链接错误,附件看不到
抱歉。请问用的是何种操作系统的手机? 火狐。
现在可以打开了。正在看看。 看看再说了 本帖最后由 bias 于 2013-12-23 11:22 编辑
不靠谱,价格太贵了,开源还差不多。
而且我感觉这种所谓的简单编程其实不适合学习单片机,速成对学习基本知识来说不好。
可是学好了单片机谁又会去用这个系统呢? bias 发表于 2013-12-23 11:21
不靠谱,价格太贵了,开源还差不多。
而且我感觉这种所谓的简单编程其实不适合学习单片机,速成对学习基本 ...
非常感谢bias发表看法,说明您已花时间去了解了。
这里对您提出的意见发表一下我的看法:
1)价格太贵,是指开发板吧。280元加送大屏12864液晶,也就比其它学习板高几十元而已;
高出的这些钱主要是考虑学员会提出很多问题,需要工程师花很多时间来解答;
2)而且,购买产品考虑的是性价比,而非绝对价格。下图给出了与其它学习板的对比;
进口奶粉那么贵,为何国人还趋之若鹜呢?因为国人深知吃垃圾食品长不出健壮的孩子!
3)顺便说一下,我们有更远大的目标,目前还真不指望从中获些小利;
4)TreeOS 1.0目前是有限开源,这本身就是一种开源;
5)编程简单化、单片机速成确实是我们追求的目标,如果您认为我们做到了,那感谢您的褒奖!
6)不愿意速成也可以。实际上,我们也一直建议学员仔细读懂每一句程序,搞清楚每一个技术细节,这有助于他们打下坚实的基础;
而且,他们从中不仅能学到如何设计软件架构,还可以学会如何编出规范化的软件;
7)学会单片机?我当工程师十几年,还不敢说我完全学会单片机。
因为知识不断更新,如果出现一个新技术,全世界工程师都来抠它,这本身就是一种巨大的浪费,有现成的软件能够用上,为什么不用呢?
8)俗话说得好:“读万卷书不如行万里路,行万里路不如踏着成功者的脚步”
走马观花看了一遍,没发现其核心,也就是调度函数的实现与原理,请问在哪个文件里啊?或者能描述一下提供一下代码不? 说白了,广告嘛就吊人胃口了 kinsno 发表于 2013-12-23 16:34
走马观花看了一遍,没发现其核心,也就是调度函数的实现与原理,请问在哪个文件里啊?或者能描述一下提供一 ...
谢谢关注。看得出大虾对操作系统还是很有研究的。
TreeOS 1.0不同于其它实时内核,它是无核操作系统,所以传统的任务调度、消息管理函数等都没有。关键是为了简单、节省内存,以适用于中低档的单片机。
当这不等于它没有任务调度机制和消息传递机制。简单地说,可以把它理解为顺序调度,消息传递主要是内存共享。这与平时所说的裸奔差别不大。正因如此,对于初学者来说就很容易理解。
那么,很多人会问,没有内核能称为操作系统吗?
能!事实上,之前已有不少操作系统就是无核的。由加州伯克利大学开发的无线传感网操作系统TinyOS也是一个无核的构件化操作系统,它采用的是事件驱动机制。
TreeOS 1.0的亮点就在于无核构件化,无核是是受单片机内存所限,而构件化弥补了这种缺陷,使中低档单片机也能用上操作系统。
构件化技术(更贴切的说是一种新的软件生产方式)被看做是未来二三十年能够颠覆软件行业的最有希望的一门技术。构件化技术也是特别适合嵌入式系统的技术。
TreeOS 1.0把构件化概念引入到中低档MCU领域,在世界上也是首创,并建立了世界上首个MCU软件构件库,顺利解决了中低档单片机操作系统问题。
请到上面楼层下载《TreeOS 1.0实时操作系统使用指南3》,里面有详细介绍。
以上解释,不知是否讲得清楚,欢迎多提意见。 学这个不开源,不如学qpc inkfish321 发表于 2013-12-23 18:39
学这个不开源,不如学qpc
请到14楼下载《TreeOS 1.0l例程》,内含近20个C文件,大半个ComLib A1软件构件库已在其中。ComLib 软件构件库正在不断扩充之中,我们也会不断地开源。因为我们为TreeOS制定的四个开发原则之一就是开源! 1欧姆 发表于 2013-12-23 18:34
谢谢关注。看得出大虾对操作系统还是很有研究的。
TreeOS 1.0不同于其它实时内核,它是无核操作系统,所 ...
你确定tinyOS是无核的?它也是有调度的,只是它的调度方法和普通的OS不一样罢了;
愿你们的系统能助单片机学者们更高一层楼,也祝越来越红火,呵呵:)
这个函数全局任务函数 ScanInWhile() 很是巧妙,把场景分类也很新颖。。。。 辛苦了,看了下,
只不过是分时处理而已,
文档写的挺好 先看看代码 kinsno 发表于 2013-12-23 20:14
你确定tinyOS是无核的?它也是有调度的,只是它的调度方法和普通的OS不一样罢了;
愿你们的系统能助单片 ...
谢谢kinsno。是微内核。无核(zero-kernel)的有DEIMOS、THINK、 JBEOS等。 Excellence 发表于 2013-12-21 11:19
地址,资料。
优缺点。
说说。
www.treeos.com.cn tinyos那个nesc真心坑爹 没听多,我只知道初学者需要的是资料多,遇到问题可以seach到,所以我还是建议那ucos来作为学习 wzd5230 发表于 2013-12-26 20:16
没听多,我只知道初学者需要的是资料多,遇到问题可以seach到,所以我还是建议那ucos来作为学习 ...
学习ucos等实时内核无可非议。
但您是否知道,在STM32出来之前,在单片机领域,ucos等实时内核几无用武之地。
即使在现在,90%以上的单片机项目都是中低档应用,使用ucos等实时内核有杀鸡用牛刀之嫌,而这些领域正是TreeOS 1.0的施展之地。
而且,ucos只是一个实时内核,说通俗点只提供一个软件架构,而占绝大部分工作量的驱动程序及常用程序库都还需要自己编写,而TreeOS 1.0则提供了这样一个软件构件库,这是ucos等所无法比拟的。
另一方面,从稳定性、可靠性、功耗、成本等方面考虑,很多用户并不愿意使用STM32等高配置MCU,那么这时就可以考虑使用免费、开源的TreeOS 1.0了。
所以我们建议初学者,两种操作系统都要学习,他们是互补关系,而非竞争关系。 1欧姆 发表于 2013-12-26 22:28
学习ucos等实时内核无可非议。
但您是否知道,在STM32出来之前,在单片机领域,ucos等实时内核几无用武之 ...
这样的代码还敢说操作系统?按照你的标准,有哪个单片机程序不是操作系统?
连最基本的调度、任务都没有,更别说信号量、互斥量了
你如果对操作系统连一个最基本的认识都没有,那赶紧低调一点,把产品介绍改掉,想卖开发板就老老实实卖,别整这些乱七八糟的东西。
如果你对操作系统概念很清楚,那就更显得你用心险恶了。纯粹是误人子弟,混淆视听
貌似广告贴 STM32_Study 发表于 2013-12-26 23:08
这样的代码还敢说操作系统?按照你的标准,有哪个单片机程序不是操作系统?
连最基本的调度、任务都没有 ...
首先我要感谢STM32_Study提出如此尖锐的质疑。
您是坛子里第一个提出这种质疑的,但显然不是第一个提出的,因为我们之前也征询过一些高手们的意见,已有人提出类似问题。当然,您也不会是最后一个提出这种质疑的。
请相信我们的努力是真诚的。因为从7年前我们设计出软件架构,到今天才发布,这期间我们默默无闻做了100多个单片机开发项目,为的是证实这个系统的可靠性和高效率。
7年时间,我们写一个类似于ucos的内核,应该绰绰有余吧?
7年前,我们就推出单片机学习板,到今天应该可以卖很多了吧?
我们所做的,是要去探索一条新型操作系统之路,不愿意被西方人牵着鼻子走。我们现在很庆幸当初没有选择做实时内核,否则现在只是给人家凑个数而已。
我们采用的软件构件化技术,一种非常适合嵌入式系统的技术,被认为是未来能够颠覆软件行业最有希望的一种技术。无核操作系统不是我们的发明,构件化操作系统也不是我们的发明,我们只是在世界上首次把软件构件化技术引入到MCU领域,并建立了世界上首个MCU软件构件库TreeOS ComLib而已。
构件化的本质是复用,说人话就是,这个驱动我做了,全世界的工程师就可以直接享用了。
至于您提到的“连最基本的调度、任务都没有,更别说信号量、互斥量了”,这个显然不客观。对于调度、任务,我们有一套完整的架构和算法,请到17楼下载《TreeOS 1.0实时操作系统使用指南3》仔细看看。至于“信号量、互斥量”,单片机应用任务数本来就不多,没必要搞得那么复杂,砍掉了。
坛子里大虾很多,可是有几个愿意把多年积累的成果拿出来与菜鸟们分享?网络里充斥着各种老掉牙或似是而非的资料,后生们吃这些垃圾食品能长强壮吗?我们试探着把这些资料规范化,使后来人能轻易享受我们的成果,这就是我们最大的愿望。至于开发板,只是辅助工具之一。我们的软件是开源的,随时发布。
对于我们来说,对TreeOS 1.0提出质疑的人越多,我们反而会越高兴,因为从反面证明我们确实做出了与众不同的产品!
1欧姆 发表于 2013-12-27 10:45
首先我要感谢STM32_Study提出如此尖锐的质疑。
您是坛子里第一个提出这种质疑的,但显然不是第一个提出 ...
做技术的,客观一些,不必说你怎么努力,这跟你的产品是否优秀没有任何关系
首先,你说说,什么是操作系统?你认为TreeOS能称得上是操作系统吗?
我看过你发的例子,就是最简单的分时调用而已,连状态机都没有。这样的具备操作系统的哪一点特征?
你说有任务,有调度,请具体举例,发代码来说明。
另外,你说的软件库,这个也算不上TreeOS的优势,UCOS一样是有库的,另外还有开源的 arduino,更简单,库更多。
arduino是针对执行型号的芯片,才能做到库的基本通用。你宣称可以在不同平台不同芯片上通用,你觉得可能吗?请举例说明。
我看到你贴的图片中,跟你宣传中最基本的硬件层和应用层的分层软件的架构都没有做到(比如RTC,就是一个芯片的C和H文件,比如EEPROM,就是直接一个I2C文件)
这能说是好的架构吗?这样算什么操作系统? STM32_Study 发表于 2013-12-27 11:10
做技术的,客观一些,不必说你怎么努力,这跟你的产品是否优秀没有任何关系
首先,你说说,什么是操作系 ...
敬告各位大虾:
开发TreeOS 1.0最早基于以下两点原因:一是公司开发项目太多,MCU也常变换,尽管对裸奔轻车熟路,但还是颇感不便。于是下决心解决通用性问题,包括软件架构及各种模块;二是对大部分新招来的大学生编的程序实在看不下去(高手毕竟是少数啊),有了这套系统,使他们很快就能上手。
说句玩笑话,TreeOS 1.0就是为懒人们准备的,懒人推动技术进步嘛。
请大家不要以传统的实时内核的眼光来看待TreeOS 1.0,它只专注于中低档单片机应用,它是无核操作系统,它要保护内存容量;
至于能否称为操作系统,这实际并不重要。你称它是平台或是xxx系统都可以,只要能给用户到来实惠就行。在我们看来,操作系统是能够帮助用户更好地应用(或使用)计算机、有完整算法的软件系统。事实上,无核构件化操作系统早已有一些,只是尚未商业化。我们在这方面做了有益的尝试,从我们内部使用情况来看,开发效率提高明显,效果不错。
至于一些网友提出的资料少问题,我们将会不断整理并陆续在网上公布,这些工作只能在8小时之外完成,所以进展较慢,还请见谅。 1欧姆 发表于 2013-12-27 19:07
敬告各位大虾:
开发TreeOS 1.0最早基于以下两点原因:一是公司开发项目太多,MCU也常变换,尽管对裸奔轻 ...
看来你自己也知道你这东西不能称之为操作系统,那为什么还要死撑着混淆视听呢?
工程师不是傻子不是中国大妈,你这样忽悠,除了蒙几个初学者,其他的谁会上你的当?
老老实实发布说你这个是一个软件库,或许还会得到更多的支持。
我这样针对你的作品,你也许很受伤。但我是看不过技术圈子里面的浮夸风,而且希望你在付出那么多精力后,能够得到真正的回报。 STM32_Study 显然是在质疑我的人品,如果不回应就显得我心虚了。
首先我申明一下,我没有说过TreeOS 1.0不是操作系统的话。我只是想说明一个系统叫什么并不重要,重要的是产品,拘泥于叫法本身没有意义。我依然要光明正大地说,TreeOS 1.0就是一个操作系统。
对你的发言,我并没有感到受伤,相反我倒觉得可笑。
从你的字里行间,显然是以高手自居了,那么在这里我要讨教几个问题:
1、你认为我这个系统不能称为操作系统,那么它违反了操作系统定义的哪几条?
2、你说TreeOS 1.0只是一个软件库,那么软件库也是为某个系统服务的吧?就像你说的“UCOS一样是有库的,另外还有开源的 arduino,更简单,库更多。”我总不能说我这个库对什么操作系统都适用吧?!我已经非常清楚地说明,TreeOS ComLib构件库是建立在自己的软件架构之上的,这套软件架构是自成体系,有完整算法的,而且也是经过长期实践验证的。软件架构加上自己的构件库,形成一个完整的系统,为什么不能称为操作系统?
3、操作系统的技术总要发展吧?操作系统的概念总要发展吧?对于一个你不熟悉的新观念,总不能一上来就一棍子把它闷死吧。
无核构件化嵌入式操作系统,这个不是我的发明,你可以参考一下这篇来自北京大学的论文《JBEOS_一种构件化的嵌入式操作系统》,网上可以搜到。
你说你“看不过技术圈子里面的浮夸风”,作为一个搞技术的人,这种心情我可以理解,我也反对这种做法。但是请你不要随便私设道德法庭,假道德之名义,不分青红皂白、随意地给别人扣帽子,这种文革遗风是为人所不齿的。
当然,欢迎你继续就技术问题提出批评和建议!
还不是不懂啊,越看越模糊。 本帖最后由 coleyao 于 2014-1-11 07:19 编辑
我觉得时间触发嵌入式实时os就不错啊,完全c语言编写,源码全开源,可以自行裁剪和扩充,不过就是调试麻烦的,需要对状态机原理比较熟悉,另外硬件应用率稍低了一些,再有就是对强实时的任务同时支持的比较少,不过这些应该大多是实时os的通病吧! 2013-9-20 汽车智能电子表 GL210C51 v1 开发板案例
看了这个,好像就是裸跑吧?
操作系统怎么也实现个多线程吧? 下载一个来看看. 7年时间又变成8个小时 看过了说明,这个东东不能自由的在产品中使用,有版权的. phone 发表于 2014-1-11 10:12
看过了说明,这个东东不能自由的在产品中使用,有版权的.
来说一声就可以自由使用了。 看来大家主要是纠结在开源这个问题上了。毕竟是多年的劳动成果,理解。 很想学习一下,但是实在不想购买280元的那个板子。请问,还有什么途径可以得到TreeOS呢? 提供些资料啊,亲 这东西应该不算操作系统,而算代码库,就像STM32的库一样。 关注,有没有arm的例子啊! 好像很适合入门的样子,抽空研究研究~~ loliweive 发表于 2014-2-10 00:13
好像很适合入门的样子,抽空研究研究~~
非常适合初学者,从软件架构、软件库积累、软件规范、程序的可移植性、健壮性.....,可以学到很多东西。相信你经过仔细的研究,很快就会做项目了。更多信息,请关注www.treeos.com.cn pspice 发表于 2014-1-12 19:35
很想学习一下,但是实在不想购买280元的那个板子。请问,还有什么途径可以得到TreeOS呢? ...
正在加速开发过程中,会有好消息的。请继续关注www.treeos.com.cn 东西在哪里没有看到? 智慧星 发表于 2014-2-27 18:12
东西在哪里没有看到?
请到14楼下载《TreeOS 1.0l例程》,17楼下载说明书。在treeos官网论坛也提供下载。 1欧姆 发表于 2014-2-28 11:13
请到14楼下载《TreeOS 1.0l例程》,17楼下载说明书。在treeos官网论坛也提供下载。 ...
谢谢,看到了。 就一广告 和我想在一起了啊,打算用3年时间完善通用程序架构,以提高开发可靠性,减少开发复杂度。总的来说就是最大程度提高代码复用程度。 zhangshixing 发表于 2014-3-20 11:02
和我想在一起了啊,打算用3年时间完善通用程序架构,以提高开发可靠性,减少开发复杂度。总的来说就是最大 ...
共同努力,加油! {:sweat:}毫无特点的果奔工程罢了....唯一值得肯定的就是有很多现成代码,省了网上搜索... 楼主有这样的精神是很好的,关注中,如果合适可能会学习。等待开源哈哈. jeoo8888 发表于 2014-3-28 16:00
楼主有这样的精神是很好的,关注中,如果合适可能会学习。等待开源哈哈.
谢谢jeoo8888。对于没有做过几个项目的初学着来说,利用TreeOS 1.0可以快速完成前期的经验积累和技术积累。ComLib 软件库不同于一般网上能够轻易获取的资料,它直接取材于实际产品。升级版A2已接近完成,常用构件将会逐步开源,请关注官方网站www.treeos.com.cn。 看看 感觉还不错,是中国人想出来的吗 相见恨晚啊。单片机程序写的多了,就萌生了这种想法。能不能将单片机的软件开发分层,留出移植接口,抽象出通用层,提供应用层接口,降低开发中的无用功。人家这是无上功劳捏,先赞一下……
先不管名字是不是规范。试用下再发言。 以下所称“本软件”包括TreeOS 1.0操作系统所属的设计方法以及成为其组成部分的全部构件软件库,包括TreeOS ComLib A1等版本构件软件库软件,同时也包括各种TreeOS学习板中所含的全部软件。
本软件的著作权归北京光轮电子科技有限公司所有。
未经本软件著作权所有者许可,任何单位或个人不得以任何方式对本软件所提供的所有程序作全部和局部复制、引用和传播。
本软件所提供的所有程序仅供购买者本人作为学习之用,其目的是为了您能更好地学习和理解TreeOS实时操作系统。若您自行把本软件引用到您的产品之中,运行后出现由本软件直接或间接引起的任何不良后果,本软件著作权所有者将不会作出任何赔偿,亦不承担任何法律责任。
若您想在您的产品中直接使用本软件,请与软件著作权所有者联系,进行登记以获取正式授权。
本软件及著作权、免责声明的最终解析权归本软件著作权所有者所有。 鼓励开源! 我很他细的看了一下,原作者花了大量时间,弄这个系统,比较系统,比较难道,非常感谢原作努力,不过说句实话,估计有一定功底的老手看了会多少有点失望,建议作可以参考下,软件界的鬼才写的ptrhread这个调度器,你会受益非浅..... 多謝分享,讚一個 STM32_Study网友对操作系统的定义理解上太死板了,操作系统是使用户更方便使用计算机的一系列软件集合。我觉得treeos完全可以成为操作系统,只要作者愿意!这有什么好争的。
做单片机开发项目多了,深有体会的是提取各种应用的共性,减少重复劳动,提高代码和结构的复用性;而treeos这类软件库(称作os,framework,platform都可以)就是这种需求的
最好实践。现在作者将它分享出来,本来就是一件非常有益的好事啊!大虾们自然有自己长期积累的经验和软件结构,但是无疑treeos对其它大多数人是有帮助的!
仔细看了下,没发现什么有值得研究的东西,无非就是把一些常用模块的驱动列了出来,而完全没有涉及到OS的核心的东西,对刚接触单片机的有一点学习价值吧,OS说白了就是为了实时性而产生的,传统的裸机程序就是一个超级大循环,每个任务要等轮询一周才有机会得到执行,OS应该要设计成基于事件驱动的方式,只要有事件马上会执行相应的事件处理,看了你们的资料,你们的资料当中说 ,对于实时性要求较高的普通任务,可以在任务顺序队列中插入两次或两次以上的运行机会,使任务的实时性要求获得满足,这样子的话程序代码显得冗长,而且丝毫没有体现软件的思想与智慧。
页:
[1]