第一篇:想参加一个好点的嵌入式开发培训班
想参加一个好点的嵌入式开发培训班,费用大概多少?
对于很多想通过参加嵌入式开发培训学习嵌入式开发的朋友来说,尤其是应届大学生群体,费用成为大家关注的对象之一。毕竟,目前由于嵌入式开发目前在国内是属于一个新兴的高端IT行业,所以培训的费用相对较高。有网友咨询:想参加一个好点的嵌入式开发培训班,费用大概多少?下面是笔者给出的回答:由于笔者从事嵌入式开发培训行业多年,据我了解,如果想参加一个好点的嵌入式开发培训班,费用一般至少13000以上,因为大多数这种价位的培训班多是脱产班或者就业班,培训的周期至少4个月,当然绝不是市场上那种几千块钱的业余班。由于目前不同培训机构的课程特色有所不同,笔者也不能明确的列出具体的培训是多少。但笔者的意思并不是说培训费用越高越好,笔者只是为大家提供一个针对好点的嵌入式开发培训班的费用参考值。至于最后选择哪家,还是需要大家自己多了解和对比,货比三家才能大概的了解各家的优势。
建议大家对于培训费用的问题要多方面考虑,并不是费用越高越好,也不是因为费用越低越不好,还是要看整体培训课程的性价比。同时也要提醒大家对于培训机构的挑选,费用只是一个方面,更重要的是多方面综合考虑,实地考察,试听等。对于嵌入式培训机构的挑选,可参考笔者之前写的“选择嵌入式培训机构时最关键的几点”,希望对大家有所帮助。
第二篇:嵌入式开发工程师
任职要求:
1、大学本科及以上学历,2年以上工作经验,计算机电子通讯类专业毕业;
2、能够熟练使用POWER PCB或PROTEL或ORCAD等电路设计软件进行PCB设计;
3、熟悉电子元器件,能独立设计数字及模拟电路,拥有单片机开发工作经验,懂得RF433无线及红外遥控等相关知识;
4、熟练使用C语言,有嵌入式开发工作开发及智能家居防盗报警产品经验者优先。
岗位职责:
1、新产品项目设计开发工作;
2、为相关部门及项目提供技术支持;
3、产品售后返修分析,品质不断提升性能改进;
4、组织对新研发产品的制样、验证、试产、量产等工作的确认与审核。
第三篇:嵌入式Linux开发流程
嵌入式Linux开发流程
嵌入式 linux开发,根据应用需求的不同有不同的配置开发方法,但是一般都经过以下过程:
建立开发环境。操作系统一般 REDHAT-LINUX,版本 7 到9 都可以,选择定制安装或全部安装,通过网络下载相应的 GCC 交叉编译器进行安装(比如 arm-linux-gcc、arm-uclibc-gcc),或者安装产品厂家提供的交叉编译器。
配置开发主机。配置 MINICOM,一般参数为115200,数据位 8位,停止位 1,无奇偶校验,软硬件控制流设为无。在 WINDOWS 下的超级终端的配置也是这样。MINICOM软件的作用是作为调试嵌入式开发板信息输出的监视器和键盘输入的工具;配置网络,主要是配置 NFS 网络文件系统,需要关闭防火墙,简化嵌入式网络调试环境设置过程。
建立引导装载程序BOOTLOADER,从网络上下载一些公开源代码的BOOTLOADER,如 U-BOOT、BLOB、VIVI、LILO、ARM-BOOT、RED-BOOT等,根据自己具体芯片进行移植修改。有些芯片没有内置引导装载程序,比如三星的 ARM7、ARM9 系列芯片,这样就需要编写烧写开发板上 flash 的烧写程序,网络上有免费下载的 WINDOWS 下通过JTAG并口简易仿真器烧写 ARM 外围 flash 芯片的程序。也有 LINUX 下公开源代码的J-FLASH 程序。如果不能烧写自己的开发板,就需要根据自己的具体电路进行源代码修改。这是让系统可以正常运行的第一步。如果你购买了厂商提供的仿真器,当然比较容易烧写flash了,但是其中的核心技术是无法了解的。这对于需要迅速开发应用的人来说可以极大地提高开发速度。
下载别人已经移植好的 LINUX 操作系统,如 UCLINUX、ARM-LINUX、PPC-LINUX等,如果有专门针对你所使用的CPU移植好的 LINUX 操作系统那是再好不过,下载后再添加自己的特定硬件的驱动程序,进行调试修改,对于带 MMU的 CPU可以使用模块方式调试驱动,对于 UCLINUX 这样的系统好像只能编译进内核进行调试。
建立根文件系统,从下载使用 BUSYBOX 软件进行功能裁减,产生一个最基本的根文件系统,再根据自己的应用需要添加其他的程序。默认的启动脚本一般都不会符合应用的需要,所以就要修改根文件系统中的启动脚本,它的存放位置位于 /etc目录下,包括:/etc/init.d/rc.S、/etc/profile、/etc/.profile 等,自动挂装文件系统的配置文件/etc/fstab,具体情况会随系统不同而不同。根文件系统在嵌入式系统中一般设为只读,需要使用 mkcramfs、genromfs 等工具产生烧写映象文件。
建立应用程序的 flash 磁盘分区,一般使用JFFS2 或 YAFFS 文件系统,这需要在内核中提供这些文件系统的驱动,有的系统使用一个线性 flash(NOR 型)512K-32M,有的系统使用非线性 flash(NAND型)8-512M,有的两个同时使用,需要根据应用规划 flash的分区方案。
开发应用程序,可以下载到根文件系统中,也可以放入 YAFFS、JFFS2 文件系统中,有的应用程序不使用根文件系统,而是直接将应用程序和内核设计在一起,这有点类似于UCOS-II 的方式。
烧写内核、根文件系统、应用程序。
发布产品。
第四篇:嵌入式开发工程师-简历
【个人信息】姓名:
身高:
性别:
学历:
籍贯:
专业:电子信息工程
联系电话:
E-mail:
【求职意向】 嵌入式开发工程师或相关工作,对LINUX驱动开发极感兴趣
【工作经验】 2009.3----2010.3中山长宝GPS卫星导航有限公司
2009.1----2009.3中山世博游艺有限公司
【教育背景】 2010.3——2010.7广州粤嵌通信科技股份有限公司(简称粤嵌教育)ARM+Linux培训
2005.9——2009.6广州大学松田学院电子信息工程工学学士
【项目经验】
GPS车载终端,GPS个人定位器(从事一年相关工作)基于ARM9的嵌入式智能家居系统(QT图像界面,应用程序,驱动等)基于ARM9的嵌入式视频点播系统(包括本地播放,网络播放)ARM9(S3C2440)的嵌入式系统移植(Uboot,Kernel,Rootfs,Driver)LINUX简单聊天工具
【相关技能】
英语水平: 四 级 掌握C、C++编程,有良好的编程风格 了解Linux内核机制,熟悉Linux驱动开发 熟练使用单片机(如STC系列,SST系列,INTEL系列)熟悉ARM9的硬件结构 熟悉Linux操作系统、交叉编译环境,掌握常用脚本编写 熟悉BootLoader制作,内核的剪裁,驱动及根文件系统的移植 熟悉QT编程 , TCP/IP协议,掌握Linux应用编程 了解SQL基础知识 熟悉GSM.GPS的使用
【语言水平】 粤语/国语流利;英语已通过CET-4,可阅读专业相关资料
项目简介
GPS车载终端,GPS个人定位器
软件环境: KEIL 51
硬件环境: BENQ M23,M33 通信模块,51单片机,和GPS模块
项目描述: 通过MCU把GPS采集的数据处理后,通过串过发送AT指令使GSM
拨通GPRS网络,再把采集的GPS数据,按照定义好的协议上存到监
控平台
ARM9(S3C2440)LED流水灯、LCD文字及图片显示设计
软件环境: ADS1.2
硬件环境:ARM9(2440)开发板
项目描述: 将设计的程序移植到ARM9上,并成功驱动LED、LCD,完成LED
流水灯、LCD文字及图片显示项目
ARM9(S3C2440)嵌入式系统移植
软件环境: Linux2.6.24,U-boot,Qtopia
硬件环境: ARM9(2440)开发板
项目描述: 在2440上成功完成了U-boot移植,Linux内核的剪裁与移植,根文
件系统的制作,并完成了LED、LCD等驱动的移植。
基于ARM9的VOD点播系统
软件环境: Linux2.6.12,U-boot,Qtopia
硬件环境: GEC2440开发板
项目描述: 培训实战项目,完成了S3C2440嵌入式系统的整体移植,它基于
QT图形界面,移植了MPlayer播放器,实现了VOD(本地和网络)
多媒体点播, ARM9(S3C2440)嵌入式智能家居系统
软件环境: Linux2.6.12,U-boot,Qtopia
硬件环境: ARM9(2440)开发板
项目描述: 本系统主要实现温度检测,红外检测,蜂鸣器报警,步进机转动(模拟控
制家电),GSM短信通知等驱动,QT图形界面显示和应用编程.把温
度传感器和红外线采集的数据,传给应用程序,应用程序把数据显示
在QT界面,当应用程序检测到温度过高或有人闯进时,应用程序就调
用蜂鸣器报警驱动,并发短信通知主人,主人也可以下发短信控制步
进机转动
本人做的LINUX驱动简介
ds18b20温度传感器Linux驱动
该驱动为字符型驱动程序,能从ds18b20芯片读取温度信息.ds18b20芯片采用了独特的1-wire bus技术,只用一根数据线即可实现与cpu芯片的连接(利用了cpu gpio本身的弱上拉电阻)。本驱动程序的重点是实现字符驱动的读函数接口。由于硬件连线简单,对ds18b20的软件操作较为繁琐,每一个操作都要要经过以下三个步骤:(1)芯片初始化(2)芯片选择(因为一线总线上可挂载多个ds18b20, 所以必须通过一定的机制指明操作的对象)(3)发送功能命令(例如,温度查询命令)和读取数据。在初始化的步骤中,cpu拉低数据线,然后释放数
据线,经过一定时间读取数据线上的值,如为低电平,则表明数据上挂载了ds18b20,否则初始化失败。在芯片选择的步骤中,由于只挂载了一片ds18b20, 所以只需发送skip rom命令即可。在发送功能命令的步骤中,首先发送温度查询命令(convert t), 然后在数据线上读取两个字节的温度数据,温度数据按由低位低字节向高位高字节的顺序发送,余下的为温度无关数据,可忽略。温度数据的0-10位为数值位(最小单位为0.0625), 11-15位为扩展符号位。该驱动使用linux的udelay函数来实现时序操作所要求的延时操作。
使用内存模拟块设备并挂载ext2文件系统(简单块设备驱动)
本驱动程序使用kmalloc分配出一块内存区域来模拟块设备,并在该块设备上挂载ext2文件系统。本驱动程序同时实现了字符设备和块设备驱动接口。块设备的内容通过字符驱动的写函数由用户空间写入。块设备接口实现的重点是其初始化函数和request函数的实现。在初始化函数中完成以下操作:注册块设备主设备号(register_blkdev),注册request函数的实现并获取与之关联的request_queue,设置request_queue的一些参数(例如,blk_queue_hardsect_size和blk_queue_max_sectors),分配(alloc_disk)和设置块设备结构体gendisk,注册gendisk。在request函数的实现中完成以下操作:获取request_queue中的第一个request结构体(elv_next_request), 遍历该request结构体中每一个bio(rq_for_each_bio)中的每一个segment(bio_for_each_segment),在循环体中将每个segment的数据发送到块设备控制器(或从块设备控制器中读入segment中)。遍历完成后,从request_queue中移除该request结构体(end_that_request_first),重复以上操作,直到request_queue为空,最后调用end_that_request_last做一些收尾工作。可以看到,块设备的驱动格式较为固定,不像字符驱动那样灵活。文件系统通过以下方法制作:首先建立一个2M大小的“空白”文件(dd),然后格式化该文件(mkfs.ext2),最后通过mount命令进行挂载,并创建文件系统内容。制作好的文件系统通过字符驱动的写接口写入驱动内存(cat), 最后挂载块设备。
蜂鸣器驱动
本驱动程序属于字符型驱动,由于该蜂鸣器物理硬件连接的是定时器的TOUT1管脚,只要实现定时器1的PWM功能即可,实现PWM功能,我们需要设置定时器的频率,也就是蜂鸣器的频率,并设置占空比.蜂鸣器启动的代码在IOCTL系统调用里实现,并把蜂鸣器的响应时间,以参数形式传给IOCTL这自己定义的函数.驱动蜂鸣器。
红外感应驱动
本驱动程序属于字符型驱动,红外感应的原理,简单的描述就是当有人靠近时,该模块相应的管脚会产生高电平,没人靠近时,该管脚为低电平.此工作原理,相当于一个外部中断,所以只要住一个带有外部中断的字符驱动即可
GSM驱动(即串口驱动)
本驱动程序属于字符型驱动,首先用ioremap申请串口相关控制寄存器,再编写串口接受和发送的中断程序,当寄存器UTRSTAT的第0位为真,表示接受到收据,当寄存器UTRSTART第2位为1时,表示可以发送寄存器为空,可以发送数据
【求职感言】 我对嵌入式计算机行业抱有热情,有强烈的求知欲和对新技术和新方法的热
忱,希望能得到一个良好的平台和起点,得到锻炼和提升的机会
【业余爱好】
● 看书,篮球,足球,魔兽争霸
【自我评价】●具备吃苦、耐劳的能力,敢于面对错误和承担责任。
第五篇:关于嵌入式开发的一点建议
CSDN:很多人都讲嵌入式开发很难,能不能就你学习和工作经验与大家分享下嵌入式开发如何开始和深入?作为嵌入式研发工程师,你认为其应具备哪些知识结构和实战能力? 卜茂霞:说到嵌入式开发如何开始和深入,其实我也没有特别的方法,在这里仅谈下我的个人见解吧。做嵌入式开发必须具备良好的C语言功底,汇编虽然不是必须,但懂点更好。其次可以到网上找一个比较流行的MCU开发板,比如STM32做为学习开发板,参照示例代码,自己动手编译烧录跑程序,比如跑马灯的程序,深刻了解整个开发过程。接下来可以学习小型的实时操作系统,比如UC/OS和RT-Thread等,如果C语言比较好的话可以尝试了解这个实时操作系统的原理部分,尝试阅读其源码,掌握其使用技巧。而接下来最好是能参与具体的开发项目,负责几个模块,写写驱动,或做应用。
需要强调的是,每个过程一定要自己尝试动手,不要停留在书本或官方提供的开发手册上,一定要通过自己的实践去验证自己想法,在这个过程中通过不断思考与验证,有问题找经验丰富的同事或在网上找答案,另外最好能将心得记录下来(比如说写CSDN博客),并不断总结。这样持之以恒,不知不觉你就会发现已经进入资深嵌入式开发工程师的行列了。个人认为嵌入式开发工程师应具备:1.良好的C语言功底。2.至少熟悉一款MCU,其它的技能可以在具体项目中不断学习来补充。