我现在自学VxWorks,那里可下载到VxWorks开发环境:Tornado II IDE

我现在自学VxWorks,那里可下载到VxWorks开发环境:Tornado II IDE,第1张

到狗狗搜索或者电驴上都有。
建议你从X86开始,因为老旧的电脑到处都是,弄一个就是真机了,比虚拟机上要强多了。
你先能稳当的把x86通过bootrom boot起来再说下面的,这就够你学一阵子的。

vxworks和linux一样,分bootload 和系统镜像两部分,linux还包含文件系统那先不管。bootload负责把硬盘或者flash里的vxworks镜像装到ram里快速的运行,所以,你必须知道启动的过程,然后自己实践一下,由于X86架构比较成熟,你先弄X86下的vxworks比较容易通,可以取得信心,然后再弄其他的东西。

两种 *** 作系统学习完成后的就业分析:
1 学成uc/os后,如果能找到大学老师的工作,则在教学生 *** 作系统时 可用于实验课。其他用途:无。
2 学成VxWorks后,华为、中兴等进行通信设备软件开发工作、军工国企从事装备软件开发工作、培训公司从事培训工作、航天航空从事高端设备开发工作、轨道交通从事动车、高铁、城铁、地铁设备开发工作、电力系统从事电力设备开发工作、核工业从事核工业相关设备开发工作、物联网车联网从事智慧星球相关产业底层终端开发工作

个人理解,仅为建议。

目前我使用的驱动是在usrRoot中加载的,主要是AD,IO这种,所以具体在哪里加载要求不是很高,甚至可以在用户应用程序中加载。

串口的需要更改pch中与串口相关的函数

在BSP里可以看看串口的驱动程序。两个函数一个注册设备,一个是注册open等7个函数。就像上面说的加载一样,调用这两个函数,就等于在 *** 作系统中注册设备,可以使用该设备。不是必须在BSP中调用。

生成xxo文件,添加到镜像中,如果开机启动在usrRoot中调用函数名就可以了。

在usrRoot中添加启动任务,系统运行后自动执行usrRoot函数,就可以执行usrRoot中写的任务了。

sh是调试使用的,实际不会。除非留有调试函数,在必须时使用。

学习嵌入式 *** 作系统,我个人建议还是linux入手比较好,我从事这个电子产品开发和推广领域已经8年了,每年我们公司去招聘会招聘新人的时候,前后左右的公司在嵌入式岗位的要求上9成以上是要求有linux基础,但是正如楼上的仁兄说的 C 是最基础的东西,我们公司的招聘考试题目80%是有关C的题目,呵呵说远了。
linux的资料比较多,虽然学起来比较慢一些,但是懂的人也较多,资料也比较丰富,你可以得到的帮助也比较多。所以还是建议从linux开始吧。
另外你说“听说,linux是免费的,vxworks 是收费的”这个概念是这样,linux的开源是指它的kernel是全开源,而vxworks的kernel是要求缴纳授权金的,公司使用vxworks开发产品是要交钱的,所以才有盗版的出现。但是目前国际经济不景气,非常多的软件公司开始查盗版,然后起诉使用盗版的公司用以获得高额罚金。非常不幸我的部门就被查了1起,刚交了35W,晕死~~

先讲一讲需要掌握的基本技能。

答:

(1)C语言是所有编程语言中的王者(单片机、DSP、类似ARM的种种芯片的编程都可以用C语言搞定),因此必须非常熟练的掌握,大学本科教学中的C语言是远远不够的,有两个非常重要的内容没有讲“文件的 *** 作”和“IO的 *** 作”,其中“IO的 *** 作”是必须掌握的技术。

(2) *** 作系统原理,是必需的,如果你是计算机专业毕业那也就无所谓了,如果是非计算机专业的就必须找一本比较浅显的计算机原理书籍看一看,把啥叫“进程”“线程”“系统调度”等等基本问题搞清楚

(3)计算机原理应该指的是x86的微机原理吧,但是在嵌入式领域x86处理器只是冰山的一小角,还有很多叫做ARM、XScale、SuperH、68K、PowerPC等等等等,无数的其它处理器,有一些我也叫不上名字。但是,X86总规是基础,万变不离其宗,深入学一下还是非常有必要的(尤其对于想要学习Linux的朋友,想要读核的话就必须要深入学习以下x86系统架构)。

如何学习嵌入式开发呢?

答:

大家都知道这个领域人才非常稀缺,但是,学习周期比较长,需要的知识面也比较广,所以不要心急。先看看下面的几个问题,了解一下你现在的知识水平:

(1)你用VC或BC编写过应用程序吗

如果编写过应用程序,那就做好了,如果你没有做过上层应用程序,那么又如何能够去理解更深的更高深的底层程序呢,那就赶快补上这一课吧!

(2)你曾经编写过单片机或者DSP的程序吗

我们把类似51单片机或者DSP上面跑的没有 *** 作系统的程序叫做“代码裸奔”,我们也都曾经编写过裸奔的代码。因为有的时候比如我们编写一个简单的程序,就只需要点几个LED检测几个按钮的状态,那么“代码裸奔”弄一个while(1)的死循环就足够了,杀鸡何必用牛刀。

编写这种裸奔的代码,也是学习嵌入式的必由之路,因为,你将会用C语言去对寄存器写控制字,这就是以后写驱动程序的基础呀。

另外需要说明的是,从概念上说,“代码裸奔”也已经属于嵌入式开发的范畴。

(3)到了最后一个阶段,你就可以开始找一个方向(uCos、Linux、VxWorks、WindowsCE、Palm等等等等),学习有 *** 作系统的嵌入式开发了。

嵌入式 *** 作系统的种类也是无法计数的,有一些我连名字也叫不上来,太多太多了。但是值得庆幸的是,这些 *** 作系统大同小异,相通的。

你正在在读书,建议学习uCos *** 作系统(看邵贝贝的《UC/OS *** 作系统》);如果你不喜欢这么Basic的 *** 作系统,VxWorks也是一个不错的选择,VxWorks进入中国已经好多年了,国内出版的书也都很好,尤其推荐陈智育的《VxWorks程序开发实践》和周启平的《VxWorks下设备驱动程序及BSP开发指南》;Linux简直是恶梦,但是如果你能够走出这个噩梦,你也就成了高手了。

就说这么多吧,路漫漫其修远,祝你成功!


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/10487374.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-09
下一篇2023-05-09

发表评论

登录后才能评论

评论列表(0条)

    保存