zf12862177
zf12862177
这家伙很懒,什么也没写!

注册于 15年前

回答
3
文章
0
关注者
0

发布于15年前

不是32位。是16位的。

发布于15年前

中文注释的问题,不敢苟同。
1,英文注释很浅显,看懂这点英文对一个coder是基本素质了,否则遇到几百页上千页的datasheet怎么办。用英文注释中国人外国人都能看懂,用中文注释外国人一定看不懂。
2,中文注释对编辑器,编译器,编译环境,都提出了更高的要求。举几个例子,中文的代码不可能用latin1字符集就表示下来,常用的文件格式gb2312或者utf8都是多字节编码,这样就要求编辑器或者编译器能够正确的识别编码,这在某些非中文语言环境下几乎是不可能的。甚至简繁字符集冲突也会让注释直接乱码掉。 编辑器识别不了是乱码,编译器识别不了就编译不过去了。
3,我印象当中ads大概十几年前的东西了吧,这个对中文支持就很差,中文字虽然有时候能显示出来,但是删除字符的时候可能会出现删一半的现象,一句话只要头一个字删掉一半,后面整句话全乱码。


楼上这位同志,对于你说的能看懂英文注释是对一个coder的基本要求这个我不否认。但是说过。如果想大大在中国推广,那么就一定需要受众广,而受众广的话,必然涉及到各种层次的人,并不是所有用RTOS的就是有一定素质coder,在这里提出用中文注释只是一种建议。
我不知道楼上仁兄所处的行业。但是在我这个行业常常写很多的中文注释是常事,当有些地方涉及到一些很“奇怪”的算法的时候,或者说控制策略的时候不要说英文,就是中文都很晦涩难懂。(当然一切都是为了控制安全),写注释有时候并不是为了维护方便。而是为了后来人学习容易。比如某个系统运行了很久都没出问题。结果就在某一天出了一个问题,”多次论证后深思熟虑“后决定在某一个地方加一个小算法,而这个”小算法“初看细看无论如何都想不通,唯有从整局出发,甚至从千里之外的地方出发才能想通加这个”小算法“的作用的话,那么这个时候我想用英文来表达实在是难之又难,因为用中文表达都是要字字斟酌。
另外,确实我用的code warrior有很久的历史了。不过没办法,人家芯片公司就只提供这么一个编译器,对中文的支持确实不好删字符删除一半。别说我们不想用,就是想用,人家还不把机密部分开放呢。
这几块芯片呢。我是想自己移植下看看。前提是要读懂RTT的运作方式。看能不能适合这些芯片,如果能移植。移植好了的话。我会共享上的

发布于15年前

郁闷了。。google SVN 是干什么的啊。查了半天GOOGLE,百度。硬是没有弄清SVN 是干什么的。再说在SVN 上才能获得源代码那有本网站又有什么意思呢?还有啊。我觉得既然是中国的RTOS,注释之类写中文的话不是更好吗?即使对英文再熟练,但是读英文注释的感觉就是和中文不一样。而且中文注释的话,能使开源的代码在中国的受众更广。用英文虽然外国的朋友能看懂,但是真正会看中国人写的代码的外国人又有多少呢?

  1. 就好比SMALL RTOS,虽然简单但是看起来就给人一种亲切感。而事实上SMALL RTOS的普及还是挺广的。个人觉得一套开源代码要受众广,要发展必然需要一套好的注释方式。其实我们完全没有必要为了让不懂中文的外国人看得懂而写英文注释,除非RTT的目标是尽力在全球范围内普及。

(话说得不好,词有点不达意,还请不要计较,有时候真的是忠言逆耳哈,本人在此绝没有恶意)

另外上面我提到的是两大类芯片。两类芯片都主要用于汽车电子开发。以及其他一些对环境要求较高的场合,两个公司分别是飞思卡尔和英飞凌
要说特别嘛。没什么特别的,就是单片机啦,不过性能稳定。频率一般不高,多在25M-200M之间,ROM在64-512KB之间。内存在1kb-64KB之间。
通常带很多定时器(7-8个算正常,有的定时器高达20个,而且预分频范围广,中断种类多),带很多AD)16-40算正常),带很多PWM,SPWM控制,带很多通讯接口,不过通讯接口多是工业通讯接口比如CAN 总线。而且一带就是几个can接口。lin总线接口等。串口也是很多,SPI,SCI,3-8
个算是正常。这些都是控制需要用到的,他们对操作系统的要求就是稳定稳定再稳定。一旦操作系统挂了。控制的机器跑飞了。那搞不好人命就出来了。

  1. 通常这两大公司的芯片高端产品中CPU还带一个内部DSP协处理器。这些单片机与ARM的区别主要是ROM或者flash不多。ram也不是很多。而且一般不外加RAM,因为外加就意味着干扰。单片化是它们被制造的主要目的。
  2. 这些单片机都有自己特别的内核,即指令集是完全不同的,构架也完全不同于常见的其他处理器(主要是为了抗干扰设计)。所以移植的话通常需要经常接触到的人来移植。
  3. 就我接触的范围来看这些芯片被用到的情况还是很多的。但是大多数情况下都买的vxworks操作系统。因为它支持啊,可是有点贵,大多数时候不需要投入这么多金钱来买vxWorks。有的时候是用的它们公司送的操作系统。但是不的不说公司送的操作系统纯属鸡肋!
  4. 我一般用的编译环境是code warrior ,有的人把他叫做ADS,貌似这个东西的编译器不是GCC吧。
  5. 还有一点。我看RTT源代码的时候看得有点头疼啊。很难一眼就分清,哪些些是变量、哪些是函数、哪些又是数组、哪些是全局变量、哪些是函数局部变量、哪些是文件局部变量,在头文件里面也没有找见关于代码命名法的说明。不得不说这对推广有点障碍啊。不过作者可千万不要生气,我并没有恶意哈。因为一般在我接触的范围内很多时候都有规定严格的命名法,比如函数内局部变量首字母小写,后面的单词首字母大写。函数则全部首字母大写。
  6. 系统全局变量加上相应的系统名简写(大写),文件局部变量加上对应的文件头简写,数组用A大写结尾,结构体用S结尾等等。
  7. 个人愚见,把变量和函数从命名上区分开来很重要,比如一个函数指针,当传递参数的时候,如不能一眼分辨他是函数还是变量,对理解程序结构有点威胁

回到
顶部

发布
问题

投诉
建议