第一篇:嵌入式心得体会解读
嵌入式心得体会
嵌入式心得体会一:嵌入式学习心得体会
4月10号,为期一个阶段的Linux开发基础培训课程圆满结束,回首这些天所留下的点点滴滴,感触深深,学习上知识点的积累,灵活运用的过程中感受到了Linux操作的快速高效性能,这也是我所追求的效率!
当初初涉培训课程的第一门课程时,都说Linux操作很繁琐复杂,心里总有些顾忌,带着种种不安与些许拼博的决心,开始了自我提升阶段的“充电”,由徐海兵老师教授我们基础课程的培训,我们则像着小学生般认真的记着笔记,仔细听着并学会如何去在实践中运用所学的Linux下的各种强大的命令集。
在Unit 1中,徐老师详细生动的为我们讲述了有关Linux的诞生、初成长以及辉煌的发展至今,今后应用范围则愈来愈广泛,讲解了为Linux这个伟大的OS做出巨大贡献的一位位出色的、伟大的人物,他们那种学习钻研的精神、锲而不舍的信念、勇于把握住难得的机会,从小处着手,踏踏实实的创造出了对人类科技发展做出卓越贡献的Linux(Unix)系统,他们的种种,都值得我们去深刻反省、刻苦学习、传承并永远发展下去。
查看ip地址和重启网络服务是我学的第一个命令: ifconfig eth0、ifconfig eth0 IP地址、service network restart。了解到远程登录软件可用xmanager。
secureCRT是我们常用的,安装好后利用其登录到了Red hat Linux,需要知道Linux主机的ip 地址。徐老师为我们介绍了重要内容:SHELL,即运行程序的程序,如echo $$SHELL可查看SHELL的环境变量是csh还是bash。指令pwd可查看当前所在路径,passwd:更改Linux下的密码,仅限root用户有此权限,当然我们是利用虚拟机VMware程序来运行Linux OS的,懂得了如何设置虚拟机的网卡设置、暂停、恢复、全屏等。
简单的学习后进入Unit 2,命令行的句法让我懂得了用法规则,一系列的命令功能强大:
date 显示当前年月时间星期之类的;
more指令与less重要但不常用;
cat用于查看短小的文件内容,常用!
mkdir命令用于在当前目录下创建新的目录;
ls 显示当前目录下所有文件;cd 更改文件路径,如cd、cd.当前目录;
rmdir 删除空文件夹;
rm指令很强大,用于删除空目录及非空目录下的指定或全部文件;
man 真男人,帮助手册;
history指令用于显示编写过的命令集,以history 序号 可显示序号所指命令;
echo回写命令,很重要,我需要继续学习;
exit 指从多重SHELL退出来;
Linux账号下,可以增加用户、删除用户、设置密码:useradd、userdel、passwd;注:所有的用户的家目录都在/home下面,唯独root的家是在/root.点文件都是些SHELL的脚本程序,也称隐藏文件;环境变量常见的有:HOME PATH PWD,懂得了绝对路径与相对路径的对比概念。
Unit
3、文件与文件处理的学习中,知道了Linux下支持的六种文件类型:普通文件、目录、设备文件、命名管道、符号链接、socket;Linux下文件系统的组织:倒立的树形结构:/ /bin /boot /dev /home /lib /proc等文件目录,ls –l指令很好很强大,显示文件类型与权限、所有者、字节大小、时间及文件名;touch可创建空文件,复制文件用指令 cp,可选-i、-r等;重命名文件使用 mv [-i];du 显示当前目录所占空间大小;wc 命令 显示列表中文件的行数、字数、字符数;追加:cat [文件列表] 》 目标文件;find指令与grep重要,暂未学习,自己在实践中学习,文件访问权限有:r w x;chmod指令可修改访问权限,如 chmod 777-R 文件名。
输入输出重定向 每个命令默认打开三个文件:标准输入stdin,标准输出stdout,标准错误stderr,键盘为标准输入,而控制台则是标准输出,文件描述符分别是0,1,2;最重要最常用的为输出重定向 > 与错误重定向 2>;
echo 添加的内容 >/ 》 文件;
Linux过滤器和管道:管道操作符:|;即将某个命令的输出与某个命令的标准输入相连接,从而实现管道功能,例如 ls –l |wc;管道和重定向操作符可同时用于一个命令行。
Unit 5:Linux/Unix进程 进程为程序运行的一个实例,可用ctrl-z挂起进程,或在命令后加上&符号即可;运行在后台的系统进程是守护进程,它为用户提供各种服务。
ps 指令可显示进程属性,有ps l;ps a;ps aux等
ps –l可显示用户ID、进程ID、优先级、TTY以及STAT
bg、fg 分别将进程放后台、前台运行,jobs则是查询所运行的进程的状态;
& 放于命令间表示可同时运行多个命令;
;表示可顺序执行多个命令
前台程序可用ctrl-c来终止、kill指令
进入Unit 6,神秘的Shell脚本逐渐揭开了她那瑰丽的面纱
环境变量的设置:export MYHOST=IP地址
查询引用 echo $$MYHOST
了
解常用环境变量:HOME,PATH,TERM,PWD以及PS1、2,其中PATH最为重要,保存用冒号分割的目录路径名,vim –r /etc/profile可打开路径并修改PATH。
export 显示当前所有的环境变量;
unset 用于清除环境变量;
执行cp 文件名 /bin 后可直接写并运行文件;
Shell的元字符下有许多字符,如* 匹配0个或多个字符;?匹配单个字符;[]中可加入数字或字母,ls [abc]将查询a、b、c字符的文件。
当看到“Linux网络服务器的搭建”时,内心激动万分,一直听说,但未实践过,很好奇,随后徐老师为我们细心讲解了如何设置与操作,首先我知道了Linux下的文件系统类型多种多样,它支持中虚拟文件系统VFS,因此文件系统扩展性很好。
文件归档这一小节,真的很惭愧,太多的不理解,而且必须尽快解决的。
RPM包的安装与使用:rpm –ivh 所要安装的Linux下的程序名;rpm的查询用:rpm –qa;删除用:rpm –e 程序名
SAMBA服务器搭建:(重点)首先在Linux下创建samba服务器,进行设置,分享指定目录,查出Linux下的IP地址,将windows与Linux下的防火墙关闭,ping指令能否ping通,然后更改共享的文件访问权限:chmod 777 –R 目录名;在Linux命令行下进行挂载点设置:mount /目录名 /挂载目录名。
NFS服务器的搭建:(重要)首先在用户名下创建文件夹,用此命令进行挂载:mount –t nfs localhost:/目录名 /挂载点目录名;与不同机器的系统通信操作时用:mount –t nfs 对方IP地址:/共享目录 /自身目录;前提:文件访问权限的更该,需要在同一网段,并ping通对方IP地址,在根目录下可用umount /目录名 来卸载已经挂载的文件系统。
在程序开发的过程这一单元,主要讲述了编程语言的发展、分类、功能以及程序的编译、解释过程,最主要的为程序编辑器:vim:有两种模式 命令模式与编辑模式,分别用 i和esc键来操作,gcc 文件名。后缀 –o 文件名来编译,进入编辑模式后,可用如下:/搜索、:N、dnd、yny、p、wq来进行不同功能的操作。
源代码编排:通常使用indent –kr 文件名即可。重头戏到来:gcc是Linux下标准编译器,调试工具:gdb;源程序。c首先进行预编译(-E)得到。i文件,经(-S)编译成汇编文件。s,(-c)参数进行。s编译成。o目标代码,链接成ELF文件即可,如:gcc 文件名。后缀 –o 文件名。
gdb调试器:在gcc hello.c –o hello –g 中勿忘 –g,使用gdb 文件名即可进入调试模式,指令r、s、n、b等可以逐步调试出程序的出错点。
Unit 10多模块程序的编译与Makefile:Make是非常强大的实用程序,管理多模块程序的编译与链接,直到生成可执行代码,vim makefile进入,设定Makefile的入口目标,注意的是在编写代码过程中tab键会很重要,回车+Tab切记。简单替换如:CC:=gcc、CC+=-g、在下面的代码需加$$()。Make中的内建变量有:$$@代表当前目标名称、$$
>嵌入式心得体会二:嵌入式实验心得体会>>(854字)
学期开始,我们开始学习《嵌入式系统及应用》,由于初次接触嵌入式系统,感觉蛮难的,所以收获不是很大,很多的概念都比较模糊,等到学期结束开始做嵌入式课程设计时,真是茫然无从下手,自从拿到设计主题后,我就像热锅上的蚂蚁,一个字“急”。最后实在没有办法,逼着自己去学习,查资料,总算对嵌入式有了浅层理解。
嵌入式系统本身是一个相对模糊的定义,一个手持的MP3和一个PC104的微型工业控制计算机都可以认为是嵌入式系统。总体来说,嵌入式系统是“用于控制,监视或者辅助操作机器和设备的装备”。一个典型的桌面Linux系统包括3个主要的软件层---linux内核、C库和应用程序代码。内核是唯一可以完全控制硬件的层,内核驱动程序代表应用程序与硬件之间进行会话。内核之上是C库,负责把POSIX API转换为内核可以识别的形式,然后调用内核,从应用程序向内核传递参数。应用程序依靠驱动内核来完成特定的任务。
在了解了基础知识之后,我开始进行上机操作,当然,其中遇到很多的难题,很多东西都是第一次接触,又没有别人在旁边指导操作,完全凭借自己去摸索练习。其中的困难可想而知。然而坚持就是胜利,牙一咬眼一闭坚持做下去,而通过本次实验,我感觉收获还是蛮多的。可能我对于嵌入式的知识学习的还是不太多,但是这之外的东西收获颇丰。它让我学会了如何通过自己的努力去认知一个新事物,更重要的是端正自己的学习态度,只有真正下功夫去学习,才能有收获,正所谓“一份耕耘,一份收获。”没有付出,何谈回报呢?再者,通过本次实验,我也学会了如何去分析问题,如何找出自己设计中的不足,继而去排除解决问题,这就是一个自我学习的过程。当我们通过实验去学习理论知识时,自己动手得出的结论,不仅能加深我们对嵌入式的理解,更能加深我们对此的记忆。
当然,在这其中,我也发现自己的许多不足之处,由于学期伊始我没有好好学习,才落到如此地步,这也可以说是一个教训吧!我相信在以后的学习工作中,我一定会端正自己的学习态度,一丝不苟的去对待每一件事。只有做好足够的准备,才能事半功倍!
>嵌入式心得体会三:嵌入式学习心得>>(863字)
首先,嵌入式系统是以应用为中心,以计算机技术为基础,且软硬件可裁减,适应应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。嵌入式有如下几个突出的有点1.系统内核小,2专用性强,3系统精简4高实时性OS5嵌入式系统的应用程序可以没有操作系统直接在芯片上运行,6嵌入式系统需要开发工具和环境。
嵌入式系统是近几年才风靡起来的,但是这个概念并非新近才出现。从20世纪七十年代单片机(最早的单片机是Intel公司的 8048,出现在1976年)的出现到今天各式各样的嵌入式微处理器,微控制器的大规模应用,嵌入式系统已经有了近30年的发展历史。经过30年的发展,嵌入式技术已经日趋成熟,在中国嵌入式机一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成,用于实现对其他设备的控制、监视或管理等功能。
其次,嵌入式系统无疑是当前最热门最有发展前途的IT应用领域之一。嵌入式系统用在一些特定专用设备上,通常这些设备的硬件资源(如处理器、存储器等)非常有限,并且对成本很敏感,有时对实时响应要求很高等。特别是随着消费家电的智能化,嵌入式更显重要。
嵌入式系统是软硬结合的学科,通常有两类人会去专研嵌入式:一类是学电子工程、通信工程等偏硬件专业的,另一类是学软件、计算机专业出身的人,主要从事嵌入式操作系统和应用软件的开发。我是软件专业的学习嵌入式,越是智能设备越是复杂系统,软件越起关键作用,而且这是目前的趋势。嵌入式应用在很多方面,具体的可以分为工业控制,交通管理,信息家电,家庭智能管理系统,POS网络及电子商务,环境工程与自然,机器人,机电产品方面应用等方面。其中目前在服务领域,如远程点菜器等已经体现了嵌入式系统的优势。例外还有很多地方用到了嵌入式系统,最近飞利浦和ARM共同推出32位RISC嵌入式控制器,适用于工业控制,采用最先进的0.18微米CMOS嵌入式闪存处理技术,操作电压可以低至1.2伏,它还能降低25%到30%的制造成本,在工业领域中对最终用户而言是一套极具成本效益的解决方案。
>嵌入式心得体会四:嵌入式系统学习心得>>(1328字)
首先我声明,我是基于嵌入式系统平台级设计的,硬件这个方向我相对来讲比较有发言权,如果是其它方面所要具备的基本技能还要和我们培训中心其它专业级讲师沟通。他们的方面上我只能说是知道些,但不是太多,初级的问题也可以问我。
对于硬件来讲有几个方向,就单纯信号来分为数字和模拟,模拟比较难搞,一般需要很长的经验积累,单单一个阻值或容值的精度不够就可能使信号偏差很大。因此年轻人搞的较少,随着技术的发展,出现了模拟电路数字化,比如手机的modem射频模块,都采用成熟的套片,而当年国际上只有两家公司有此技术,自我感觉模拟功能不太强的人,不太适合搞这个,如果真能搞定到手机的射频模块,只要达到一般程度可能月薪都在15k以上。
另一类就是数字部分了,在大方向上又可分为51/arm的单片机类,dsp类,fpga类,国内fpga的工程师大多是在ic设计公司从事ip核的前端验证,这部分不搞到门级,前途不太明朗,即使做个ic前端验证工程师,也要搞上几年才能胜任。dsp硬件接口比较定型,如果不向驱动或是算法上靠拢,前途也不会太大。而arm单片机类的内容就较多,业界产品占用量大,应用人群广,因此就业空间极大,而硬件设计最体现水平和水准的就是接口设计这块,这是各个高级硬件工程师相互pk,判定水平高低的依据。而接口设计这块最关键的是看时序,而不是简单的连接,比如pxa255处理器i2c要求速度在100kbps,如果把一个i2c外围器件,最高还达不到100kbps的与它相接,必然要导致设计的失败。这样的情况有很多,比如51单片机可以在总线接lcd,但为什么这种lcd就不能挂在arm的总线上,还有arm7总线上可以外接个winband的sd卡控制器,但为什么这种控制器接不到arm9或是xscale处理器上,这些都是问题。因此接口并不是一种简单的连接,要看时序,要看参数。一个优秀的硬件工程师应该能够在没有参考方案的前提下设计出一个在成本和性能上更加优秀的产品,靠现有的方案,也要进行适当的可行性裁剪,但不是胡乱的来,我遇到一个工程师把方案中的5v变1.8v的dc芯片,直接更换成ldo,有时就会把cpu烧上几个。前几天还有人希望我帮忙把他们以前基于pxa255平台的手持gps设备做下程序优化,我问了一下情况,地图是存在sd卡中的,而sd卡与pxa255的mmc控制器间采用的spi接口,因此导致地图读取速度十分的慢,这种情况是设计中严重的缺陷,而不是程序的问题,因此我提了几条建议,让他们更新试下再说。因此想成为一个优秀的工程师,需要对系统整体性的把握和对已有电路的理解,换句话说,给你一套电路图你终究能看明白多少,看不明白80%以上的话,说明你离优秀的工程师还差得远哪。其次是电路的调试能力和审图能力,但最最基本的能力还是原理图设计pcb绘制,逻辑设计这块。这是指的硬件设计工程师,从上面的硬件设计工程师中还可以分出ecad工程师,就是专业的画pcb板的工程师,和emc设计工程师,帮人家解决emc的问题。硬件工程师再往上就是板级测试工程师,就是c语功底很好的硬件工程师,在电路板调试过程中能通过自已编写的测试程序对硬件功能进行验证。然后再交给基于操作系统级的驱动开发人员。
>嵌入式心得体会五:嵌入式学习心得>>(3652字)
本人大学学的是电子信息科学与技术专业,其实这个专业和嵌入式没有多大的关系,要说有关系就是简单的讲了下C语言语法,学完之后还不知道什么是C语言,只记住了,char,int,string等占几个字节,if, for, while循环什么的,感觉也就能算一些小学就会的题目,全国计算机等级二级也就糊涂的过了。我这个专业没学过C++,一开始不知道什么是向对象,什么叫面向过程,这可能让大家笑话了。不过这说的是实话,大学的时候比较喜欢动手,喜欢硬件方面的东西,也喜欢看书。在大一的时候就听学长说,单片机很难学,在没事的时候就从图书管借了本关于51的书,一开始还真是不怎么懂,然后硬着头皮去看,当我把51的结构看完了,就不像一开始那样一头雾水了,自己在纸上把51的结构图默画一遍,然后再把各个寄存器功能写一下,各个功能口的结构也画一遍,然后就不觉得51有什么难了。其实有些时候不是这个东西你不会,而是在不会的时候自己先告诉自己这个太难了,自己先放弃了。我们学习51芯片,是为了以后的打基础,知道是怎么通过配置寄存器来实现功能。
大二下学期的时候,我们开了51的课,这个课几乎就没怎么去,因为我认为没有必要去听自己会的东西了。后来听别人说avr的资源会比51的丰富的很多,所以就想试试,看看有什么难的,就从网上买了本马潮老师《AVR单片机嵌入式系统原理与应用实践》,一边看书,一边想自己画一个板了,一开始想实现一个点阵屏,实现滚动效果,后来想想做个板也花不少钱呢,为什么不多加一些功能呢,还能多学到些知识,所以就加了温感,红外,铁电存储器等并把所有的扩展口都扩展了出来,备以后用,那时还挺自豪的呢,同学们都很羡慕,不过现在想想其实也没什么了。
大学也听说过嵌入式这个词,不过不太明白是什么意思,09年的时候从网上找到中嵌视频,有四张DVD(大约13G),下载下来后,从头到尾的看了一遍,没什么印象,只记得讲一些不知所云的函数,然后莫名其妙的讲怎么使用那个44b0的开发板,不过听完了,还是有很大收获的,就有一种想装一个linux的冲动,我是大二下学期才有的自己电脑,不过电脑的配置比较低,1g内存,跑虚拟机就像个蜗牛,所以就想着怎么才能装个linux,自己用XP习惯了,如果全换了又舍不得,那时从书上知道linux的文件系统和windows不一样,只有一个根分区,所以也害怕一装linux全盘就被格式化了,不过最后还是欲望战胜了担心,买了张redhat 9的光盘,小心的装这个系统,里边的英文也不是太难,还是知道大概意思的,所以一步步的装,最后装到我的硬盘的最后空间,重新启动,竟可以选择进入哪一个系统了,从这之后,自己就不害怕怎么装系统了,应了那句言,纸上得来终觉浅,绝知此事要躬行。
所以我认为,买一个开发板是完全有必要的,拿到实物操作一下就不会感觉太抽象了。
后来也想学学arm,但不知道arm是什么东西,所以就买了本《从51到arm》,讲的是关于arm的大体结构,看完后感觉,原来arm就是一个速度更快,接口更丰富的单片机啊。
如果想做linux设备驱动的同学应该对arm硬件有一些了解。如果对驱动不感兴趣,完全没有必要去看。交叉编译器会帮我们做好这些事情,他比我们更了解arm结构。
大三下学期开始准备考研了,所以自己这些兴趣就先放下了,报的北邮的信通学院通信专业,当时就是想一定要上个好学校好专业,也没想太多,结果考了的成绩差了点,没有被录取,也不想调剂一个二流的学校,然后就参加工作了,工作中每天都用的到开发板,当我看到一个小板上还可以跑系统的时候感觉很不可思议,以为要很大工程。后来边工作边学习,每天都要看电脑看到眼发疼,晚上也都差不多十二点时才睡觉。感觉到累,不过也感觉到自己在进步。
闲话有点多了,说了很多都是自己大学那点破事。
听很多的初学者说不知道从哪里开始,学习嵌入都要学哪些东西,从网上搜了一下,一大堆的东西要学,一下就推荐十几本书,说看完这本书怎么怎么样,看完那本书怎么怎么样,一下子就给初学者给吓住了,其实完全没必要把网上的那些东西全部看一遍,那样又费时,又感觉工程太大,让初学者没有信心去把每一种都看完。网上说的些方面都要知道,不一定全部都掌握,我们可以退成求其次,每一个都知道一些,当然会的越多越好。今天学点这个明天学点那,换着样来也不会觉得烦。而且还能感觉到每天都有收获。
下面给嵌入式初学者一些自己的我个人建议。
1嵌入式涉及到很多的基础知识:
c语言,关于C语言要知道基本的语法,什么是结构体,什么是共用体,有什么区别,不用强记一些二级考的东西,因在实际中用的很少。
c++要知道什么是类,怎么定义,继承,接口,要深刻理解,当然基本语法也是必不可少的。
操作系统原理也应该知道基本的原理的,我记得我大学没这个课还是去电信学院蹭别的专业的课呢,后来学习发现很多的东西都是在这个课上学到的。什么时间片啊,任务调度啊,都是在那里知道的。
Linux基本命令的使用(vi编辑器必须会用,因为在终端改文件的时候只能用这个),我们现在很多的人都习惯用鼠标了,很少用到命令,我们学习嵌入linux可要改改这个习惯了,linux用命令操作一是效率高,二是功能非常强大,远非图形界面能比的了的,其实我们用图形界面的操作都要转化为命令传给硬件的。
Linux文件系统的管理要清楚,哪个目录存放是什么东西,有什么用,文件权限管理等
Shell编程也要了解一些,在这给大家推荐一个教程,周朝剑的 shell编程,也就七八讲吧,讲的很全面。初学者看前4讲就可以了。
Linux设备驱动的架构要了解,初学者可以以飞凌的OK6410开发板上的led驱动分析一下,结合原理图和linux设备驱动相关书籍把每一行代码都分析明白。关于驱动给大家推荐一本书《LINUX社备驱动程序》中国电力出版社出版的,很经典的,初学者看可能看不太明白,不过要坚持看,最次也得把前6章看完了。看书不要希望一次就会,一次就明白是什么意思,也不要死记硬背,看不明白也没关系,以后遇到了知道去哪里去找就可以了,以后遇到的多了,也就记住了,遇到的少的,忘记也就忘记了。还有,不要直接阅读linux内核源代码,看一些自己把头撞破也想不明白的事,会打击初学者的积极性,要循序渐进,今天学个做个led,明天做个串口,后天说不定就做硬件编解码了。
3、你可以不接受培训,但是不能不买开发板。
如果你想学习嵌入式一定要买块学习板,现在的开发板很便宜了,给很我们初学者减轻了经济负担。看再多的视频,看再多的书,也不如自己动手试一下,看着很简单的东西,做起来就可能遇到很多的问题,遇到问题找到原因,解决问题,只有这样才能学到东西,记得我第一次写led的驱动,想自己试一下,网上也有人写过相关的代码,可是自己一试,就出了好多的问题,那个led弄了我一天才把led灯点亮。所以不要眼高手低。
还有关于培训,现在的培训机构很多,讲的也不错,老师也很好,但是有一个问题,太集中了,而且学生动手的机会也不太多,记得我们公司还招了一个在北京某个培训机构培训半年的员工呢,花了一万多,来了之后也没感觉有多高,问他都学了什么,也就是我前边说的那些基础知识,很多的东西还是不知道的,照着书弄个helloworld模块驱动两天没搞定。不是培训不好,但我个人见解效果并不是很好。记住:只有自己动手做过的东西才是自己的。
现在买一块开发板很便宜,飞凌的OK6410的开发板就不错,源码完全开放,而且资料也很丰富,完全能满足初学者学习用,有人说友善的板子也不错,我个人觉得友善的板子不 错,但是不适合初学者,因为他的很多的东西是不给代码的,用过友善的板子的同学经常有这样的痛苦,想学一个东西,去找他的代码的时候,却找不到,很多友善提供的代码中很多的都是封装好的,只提供给客户一个库,初学者想要找代码的时候就不知道怎么办了。不要好高骛远,要脚踏实地
对于初学者,还有一点小建议,我们拿到一个开发板,很兴奋也很激动,想法自然也很多,想用开发板实现自己的这个想法,实现那个想法,然后又不知道从何下手,然后就去论坛中发一个贴,“那个什么什么怎么实现啊,哪位大侠能详细说一下啊,跪求!”然后等着别人去回复。见没人回复就抱怨。有想法是好的,我们要实现自己的想法也是有前提的,首先,我们对这部分知识了解吗?如果不了解就去google一下(最好别用百度,不太好用),了解了一些,也就大概知道要怎么做了。如果再遇到问题,再去发贴问,这样也显得咱们有水平。比如自己连串口是什么都不太清楚呢,就问串口通信怎么做啊,就是人家把代码给咱,咱也不明白是怎么回事啊。多看代码,多写代码
见多识广,熟能生巧。多看代码,要从代码中读出代码的意思来。自己平时也要多写代码,多练习(这一点我做的不好,写的少)。
写完已经晚上两点了,思路有些乱,有些也是个人的见解,在有些人看来可能是错误的,每个人有每个人的学习方法,但是我们的目的只有一个——希望我们学到更多的知识。
读书的好处
1、行万里路,读万卷书。
2、书山有路勤为径,学海无涯苦作舟。
3、读书破万卷,下笔如有神。
4、我所学到的任何有价值的知识都是由自学中得来的。——达尔文
5、少壮不努力,老大徒悲伤。
6、黑发不知勤学早,白首方悔读书迟。——颜真卿
7、宝剑锋从磨砺出,梅花香自苦寒来。
8、读书要三到:心到、眼到、口到
9、玉不琢、不成器,人不学、不知义。
10、一日无书,百事荒废。——陈寿
11、书是人类进步的阶梯。
12、一日不读口生,一日不写手生。
13、我扑在书上,就像饥饿的人扑在面包上。——高尔基
14、书到用时方恨少、事非经过不知难。——陆游
15、读一本好书,就如同和一个高尚的人在交谈——歌德
16、读一切好书,就是和许多高尚的人谈话。——笛卡儿
17、学习永远不晚。——高尔基
18、少而好学,如日出之阳;壮而好学,如日中之光;志而好学,如炳烛之光。——刘向
19、学而不思则惘,思而不学则殆。——孔子
20、读书给人以快乐、给人以光彩、给人以才干。——培根
第二篇:嵌入式智能家居解读
摘 要
随着我国经济的快速发展,人们对生活的需求水平也相当的提高,特别是在人们长期居住的地方,对居住舒适程度要求也需求更加的高,所以我国在早期就出现了一些智能家居,本文从嵌入式计算机开始,结合嵌入式系统的特点,依次讨论了嵌入式系统的基本概念、嵌入式在智能家居中的应用、当前的研究现状以及未来的发展趋势。
关键字:嵌入式系统,智能化,智能家居
目 录
1绪论.............................................................................................................................4 2 什么是嵌入式系统....................................................................................................4 2.1 嵌入式系统......................................................................................................4 2.2 嵌入式系统的特点..........................................................................................5 3什么是智能家居.........................................................................................................6
3.1智能家居系统的工作原理...............................................................................6 4嵌入式发展状况及发展趋势.....................................................................................7
4.1 嵌入式在智能家居的现状及技术发展趋势.................................................7 4.2 嵌入式的智能家居解决方案给我们带来的好处..........................................7 5嵌入式技术在智能家居行业的实际应用.................................................................8
5.1功能描述...........................................................................................................8 5.2系统特点...........................................................................................................9 6嵌入式的研究前景...................................................................................................10 总
结..........................................................................................................................11 参考文献......................................................................................................................12 1绪论
随着社会信息化的发展,计算机和网络已经渗透到人们日常生活的每个部分,无线通信技术也成为人们生活中必不可少的一个部分;我们每一个人基本上都拥有大小不
一、形状各异、具有各种功能的、使用嵌入式技术的电子产品,比如M P 3 /MP4、PDA、GPS 导航仪等小型数字化产品、智能家电、网络家电、智能手机等,都可以归类于嵌入式产品中伴随着数字化和信息化的进程,智能化成为不可抵挡的趋势,也是新世纪的发展趋势。智能家居是指将家庭中各种与信息相关的通讯设备、家用电器、家庭安防装置等,通过家庭总线技术连接到一个家庭智能化平台上,进行集中或远程监视、控制和家庭事务管理,并保持这些家庭设施与生活需求和住宅环境的和谐与协调。智能家居可以使人们足不出户就进行网上购物、视频点播、网上医疗诊断,在千里之外就可以对家里电器的进行控制,当家庭发生安全问题,在外的家庭成员可以在接到报警信息后,通过电话和Internet等手段查询和确认家庭的安全状况。什么是嵌入式系统
2.1 嵌入式系统
嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。它一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成,用于实现对其他设备的控制、监视或管理等功能。嵌入式系统一般指非PC 系统,它包括硬件和软件两部分。硬件包括处理器/微处理器、存储器及外设器件和I/O端口、图形控制器等。软件部分包括操作系统软件(O S)和应用程序编程;有时设计人员把这两种软件组合在一起,应用程序控制着系统的运作和行为;而操作系统控制着应用程序编程与硬件的交互作用[1]。嵌入式系统的核心是嵌入式微处理器,嵌入式微处理器一般就具备以下4 个特点:(1)对实时多任务有很强的支持能力,能完成多任务并且有较短的中断响应时间,从而使内部的代码和实时内核心的执行时间减少到最低限度;(2)具有功能很强的存储区保护功能。这是由于嵌入式系统的软件结构已模块化,而为了避免在软件模块之间出现错误的交叉作用,需要设计强大的存储区保护功能,同时也有利于软件诊断;(3)可扩展的处理器结构,以能最迅速地开展出满足应用的最高性能的嵌入式微处理器;(4)嵌入式微处理器必须功耗很低,尤其是用于便携式的无线及移动的计算和通信设备中靠电池供电的嵌入式系统更是如此。2.2 嵌入式系统的特点
嵌入式计算机系统同通用型计算机系统相比具有以下特点:(1)嵌入式系统通常是面向特定应用的:嵌入式CPU 与通用型的最大不同就是嵌入式C P U 大多工作在为特定用户群设计的系统中,它通常都具有低功耗、体积小、集成度高等特点,能够把通用CPU 中许多由板卡完成的任务集成在芯片内部,从而有利于嵌入式系统设计趋于小型化,移动能力大大增强,跟网络的耦合也越来越紧密。(2)嵌入式系统是将先进的计算机技术、半导体技术和电子技术与各个行业的具体应用相结合后的产物,是一个技术密集、资金密集、高度分散、不断创新的知识集成系统。(3)嵌入式系统的硬件和软件都必须高效率地设计,量体裁衣、去除冗余,力争在同样的硅片面积上实现更高的性能。(4)嵌入式系统和具体应用有机地结合在一起,它的升级换代也是和具体产品同步进行,因此嵌入式系统产品一旦进入市场,具有较长的生命周期。(5)为了提高执行速度和系统可靠性,嵌入式系统中的软件一般都固化在存储器芯片或单片机中,而不是存贮于磁盘等载体中。由于嵌入式系统的运算速度和存储容量仍然存在一定程度的限制,另外由于大部分嵌入式系统必须具有较高的实时性,因此对程序的质量,特别是可靠性,有着较高的要求。(6)嵌入式系统本身不具备自举开发能力,即使设计完成以后用户通常也是不能对其中的程序功能进行修改的,必须有一套开发工具和环境才能进行开发。(7)通用计算机的开发人员通常是计算机科学或者计算机工程方面的专业人士,而嵌入式系统开发人员却往往是各个应用领域中的专家,这就要求嵌入式系统所支持的开发工具易学、易用、可靠、高效。目前人类已进入基于Internet的后PC时代,其主要特征为计算机作为组成成份紧密融于消费品和工业品中后PC时代的到来完全依赖于嵌入式技术的诞生与发展,传统的IT设备逐渐转变为嵌入式设备,这是一个大趋势。在这个大趋势中,小到智能卡、手机、水表,大到信息家电、汽车,甚至飞机、宇宙飞船,我们的生活已经被嵌入式软件所包围。嵌入式技术的蓬勃兴起为智能家居行业的发展指明了技术发展趋势,也提供了技术革新的有利武器[2]。
嵌入式系统一般指非PC系统,它包括硬件和软件两部分。硬件包括处理器/微处理器、存储器及外设器件和I/O端口、图形控制器等。软件部分包括操作系统软件(OS)(要求实时和多任务操作)和应用程序编程。应用程序控制着系统的运作和行为;而操作系统控制着资源调度及与硬件的交互作用。
3什么是智能家居
智能家居就是把智能科技融入家居生活中,使家庭生活与信息化结合起来。智能家居还包涵了许多方面的内容 如家庭中传统的水表、电表、煤气表等由原来的各自独立变成小区中央控制,人们不用再为查表或交费而花费时间,计算机中央控制,通过计算机,控制家庭中的所有电器、仪表,并借助有线或无线通讯技术实现异地控制。随着社会全面的信息化、智能化和网络化,智能家居必将成为未来家庭生活潮流发展的新方向[3]。嵌入式Internet技术是近几年发展起来的新技术,它创新性地提出以单片机或微控制器为核心的嵌入式系统,使底层监测设备与Internet的无缝联接有了可行方案,真正做到远程监测,这样构建的监测系统开销少、尺寸小、功能强。采用TCP / IP网络协议标准,系统组网容易、传输数据多、速率快;客户端通过WEB浏览器就可以对设备进行监控,本文在此基础上进行了基于嵌入式WEB 的智能家居远程监控系统的设计[4]。3.1智能家居系统的工作原理
小区管理中心是智能家居系统连接外界的途径,在此建立基于Web服务器的小区管理信息系统,当家庭发生意外情况时,相关传感器会将报警信息自动通过家庭总线系统发向网络终端,终端通过电话接口可以把报警信息直接发向用户的手机,同时还通过小区网络将报警信息发向小区管理中心。
用户可以通过Internet用浏览器直接浏览家庭设备的当前状况,并可以通过web直接控制家庭设备。家庭网络终端可以通过电话接口直接连接到PSTN上,当用户拨打家庭电话对家用设备进行控制时,控制信息通过浏览器提交给Web服务器,然后小区管理中心计算机将控制信息转发给相应的网络终端,终端将控制信息直接转发给相关控制设备,完成控制工作。控制完成后,网络终端再将结果信息反馈回小区管理中心计算机,小区管理中心将其写入数据库,并反馈给发出控制请求的用户。通过电话控制家用电器设置有密码功能,只有密码比较成功后才能够进入控制模块,使操作更加安全。
4嵌入式发展状况及发展趋势
4.1 嵌入式在智能家居的现状及技术发展趋势
中国的智能家居行业刚刚起步,它还显得比较稚嫩。我国尚没有正式颁布相关的行业技术标准,厂家采用各自不同的技术解决方案,这在某种程度上制约了中国智能家居行业的发展,在今后相当长一段时间内技术的整合趋势将形成统一的标准。
就目前而言,智能家居主要有三种技术方案,它代表着中国智能家居行业不同时期的技术特点,它们的关系可以用以下的图1表示。
图1 智能家居的技术特点关系
PC架构的智能控制系统出现于中国智能家居的萌芽阶段,基本上停留在向使用者展示智能家居的概念,实用性不强,属于第一代。目前很多中国智能家居厂商研制的基于单片机架构的智能控制系统在实际技术更加广泛的应用,随着成本的逐步降低,中国的智能家居最终将走向嵌入式。4.2 嵌入式的智能家居解决方案给我们带来的好处
(1)系统的处理能力大大增强,可以给您带来更加逼真的图象以及更加真实的语音等。
(2)根据系统定制的实时操作系统不仅可以最大限度的利用硬件资源而且还避免了过于庞大的系统造成的系统冗余.(3)一般只有一颗主处理芯片,系统架构更加清晰简捷。
(4)软件采用分层设计方便维护和升级,大大提高了代码利用率,缩短开发周期。
(5)因为嵌入式技术是伴随着Internet而生的,所以它具有更加卓越的网络性能,可以增加更多的网络应用。
5嵌入式技术在智能家居行业的实际应用
波创BECHAMP智能家居依靠3C技术,并结合信息家电的发展,为用户提供了一种更加安全、舒适、方便、快捷的智能化和信息化生活空间。其内涵就是“在具有个性化的住宅家庭中,将多元网络信息、多样化的自动化控制以及节能环保等功能,整合到一体化的家庭智能信息管理与自动化监控平台[6] 5.1功能描述
(1)可视对讲:超大屏幕彩色可视对讲。(2)安防主机
提供有线8防区;可以通过无线密钥进行撤布防,也可以通过电话和网络进行布防;触发报警以后除了可以通过网络向保安中心报警,还可以通过拨打用户射定的电话进行报警,还可以通过Internet向在办公室或其它地方的业主报警。(3)信息终端
接收小区管理中心发出的小区公告或新闻;接收小区管理中心发出的商情;接收小区管理中心发出的住户通知;浏览网页;接收邮件;接收手机短信;查询报警信息;查询三表信息。(4)家电、灯光、插座控制
家电、灯光、插座通过网关上的触摸屏进行控制;通过Internet对家里的家电、灯光、插座进行远程网络控制;通过电话对家里家电、灯光、插座进行远程电话控制;通过手机短信对家里家电、灯光、插座进行远程短信控制。(5)自动抄表:自动抄录水表、电表、气表的读数。(6)远程监控:通过Internet远程监控家中的家居环境[5]。5.2系统特点
(1)运行稳定安全可靠
主处理器高度集成,系统结构简洁,信号稳定,采用6层高频板工艺,高速线路采用采用等长设计,双路时钟输入,拒绝一切干扰;操作系统采用开源的Linux操作系统,安全、稳定;采用双电源热备份设计,主用电源为ATX电源,备用电源为带充电电路的锂电池;正常情况下,主电源为系统供电(包括后备电源充电),锂电池处于待命状态并进行必要的充电;在主用电源失效的情况下备用电源自动启用,在主用电源恢复正常后再切换回主用电源,二者之间的切换做到无缝,即二者的切换不会影响到相关软硬件系统正在进行的工作,备用系统电源能持续工作3小时以上,待机24小时以上。(2)高效低耗
其主处理器采用主频高达200MHZ的韩国三星公司的S3C2410(ARM9内核)高效低耗处理器(该处理器主要用于手持设备,其功耗之低可想而知),再配备上海量(相对于传统基于51单片机的解决方案)的Flash和SDRAM,可以轻松处理TCP/IP网络协议栈、音视频处理和一些复杂的桌面应用(如Word, Excel, 图片查看程序,邮件客户端和网络浏览器),这些是基于51单片机的解决方案根本无法想象的,具有不可比性。(3)人机交互界面友好
采用带背光和触摸屏接口的320*240 STN彩屏,色彩达到64K色,并配有快捷按键,所有人机交互界面均采用纯图形的,美观大方。(4)系统可扩展性强
硬件接口丰富,这些接口包括:10M以太网络IC及其接口1个,LCD接口,触摸屏接口,人机交互键盘;串口:485接口1个(用于接485设备),232接口2个,LED指示灯,4个,分别为:工作指示,欠压/充电指示,网络指示,新留言提示;I2S接口,引出 Microphone和立体声Speaker;USB Host和Device接口各一个,可用于连接U盘,数码相机和摄像头等USB设备;SD存储卡接口;JTAG,采用20针接口,方便系统级调试;其他未使用CPU口线,统一引出,以备将来系统扩展。操作系统采用开源的Linux操作系统,开发资源丰富,软件上提供一套标准通用的API二次开发接口,可移植性强。(5)系统升级方便
系统所有软件,包括启动代码,操作系统内核,系统文件,应用程序均基于文件系统,在目标机中以文件的形式存在,均可单独升级,而且是在线升级,给产品的后续升级维护提供了大大的方便,这些是传统的基于51单片机的解决方案无法做到的,具有不可比性。
6嵌入式的研究前景
嵌入式系统概念的受到重视是以计算机和信息技术的发展为基础的。近年来,计算机技术以令人瞠目的速度迅猛发展,其速度之快,势头之猛甚至直接向某些一直被视为金科玉律的常识提出了质疑。例如,按照计算机的体系结构、运算速度、结构规模、适用领域等属性将其分为大型机、中型机、小型机和微计算机,并以此来组织学科和产业分工的分类方法虽然沿袭多年,但由于实际情况产生了根本性的变化,它已经不再适用。最明显的例子就是由70年代末定义的微计算机演变出来的个人计算机(PC)如今已经占据了全球计算机工业的90%市场,其处理速度更是超过了当年大、中型计算机的定义。可见,在日新月异的计算机工业中,在计算机技术和产品对其它行业进行全面渗透的大趋势下,以应用为中心的分类方法变得更为切合实际,也就是需要按计算机的嵌入式应用和非嵌入式应用将其分为嵌入式计算机和通用计算机。通用计算机具有计算机的标准形态,通过装配不同的应用软件,以类同面目出现并应用在社会的各个方面,其典型产品为PC;而嵌入式计算机则是以嵌入式系统的形式隐藏在各种装置、产品和式智能平台,简称EIP。未来几年内,随着信息化,智能化,网络化的发展,由于EIP将三者完美结合的特性,必将获得广阔的发展空间。例如:在通信领域,数字技术正在全面取代模拟技术,美国已开始由模拟电视向数字电视转变,数字音频广播(DAB)进入商品化试播阶段,欧洲的DVB(数字电视广播)技术也已向全球大多数国家推广。在个人领域中,作为个人商用的移动数据处理和通讯设备所必需的手写文字输入、语音拨号上网、收发电子邮件以及彩色图形、图像等功能由于依赖嵌入式设备具有强大亲和力的自然人机交互界面,也离不开EIP技术[8]。
总 结
嵌入式技术的诞生和发展促进了后PC时代的到来,嵌入式系统在通讯产品、家用电器、医疗器械、汽车制造、航空航天等领域的无限应用空间已使其成为促进信息产业发展,加速传统产业改造的最为实用的高新技术。
嵌入式技术在家庭智能控制系统中的应用,使得系统的语音和图像处理能力大大增强,根据系统定制的实时操作系统不仅可以最大限度地利用硬件投入,而且还避免过于庞大的系统造成的资源浪费。由于嵌入式系统一般只有一个核心处理芯片,因此系统的架构更加清晰简捷。系统的软件采用分层设计,不仅方便维护和对系统进行升级,而且大大提高了代码的利用率,缩短了开发周期。此外,由于嵌入式技术是伴随Internet而产生和发展的,因此它具有更加卓越的网络性能,可以增加更多的网络应用。
在当今社会,随着家庭智能化技术的全面快速发展,家居控制系统的重要意义和作用越来越凸显在人们的面前,这也是嵌入式系统家居控制系统的关键所在。因此,我们必须结合实际,坚持以先进的现代科学技术和通信技术为前提与基础,尽力做到以嵌入式系统为技术核心,不断优化家居控制系统的结构与功能,保证其功能全面、性能稳定、耗能低下等特征,促进其全面快速健康发展,更好地为人们提供方便快捷的服务。
参考文献
[1]余永权,嵌入式智能家电的发展现状及趋势[J],电子世界,2003。[2]田泽,嵌入式系统开发与应用[M],北京航空航天大学出版社,2005.1 [3]李小将,樊天晴,胡正国,嵌入式系统在信息家电中的应用[J],西北工业大学学报,2004.4,第28卷第4期。
[4]魏振春,韩江洪,张建军等.智能家居远程控制系统的设计J.合肥工业大学学报(自然科学版),2005,7:751-754。
[5]肖建华,智能家居系统中的家庭网站设计[J],计算机工程,2005,8:206-208。
[6]王凯明.智能家居系统的研究[ D].西安: 西安科技大学, 2005.[7]杨四海, 马利.信息家电嵌入式系统选择方案[J].自动化技术与应用, 2002(21): 66-68.[8]高小平,中国智能家居的现状及发展趋势.低电压器.2005,4:18-21.读书的好处
1、行万里路,读万卷书。
2、书山有路勤为径,学海无涯苦作舟。
3、读书破万卷,下笔如有神。
4、我所学到的任何有价值的知识都是由自学中得来的。——达尔文
5、少壮不努力,老大徒悲伤。
6、黑发不知勤学早,白首方悔读书迟。——颜真卿
7、宝剑锋从磨砺出,梅花香自苦寒来。
8、读书要三到:心到、眼到、口到
9、玉不琢、不成器,人不学、不知义。
10、一日无书,百事荒废。——陈寿
11、书是人类进步的阶梯。
12、一日不读口生,一日不写手生。
13、我扑在书上,就像饥饿的人扑在面包上。——高尔基
14、书到用时方恨少、事非经过不知难。——陆游
15、读一本好书,就如同和一个高尚的人在交谈——歌德
16、读一切好书,就是和许多高尚的人谈话。——笛卡儿
17、学习永远不晚。——高尔基
18、少而好学,如日出之阳;壮而好学,如日中之光;志而好学,如炳烛之光。——刘向
19、学而不思则惘,思而不学则殆。——孔子
20、读书给人以快乐、给人以光彩、给人以才干。——培根
第三篇:嵌入式心得体会
这学期才接触嵌入式系统感觉还称不上入门,我通过学习知道了嵌入式的发展前景很大,各个领域都用到了嵌入式,学好嵌入式不愁没饭吃。
广义上讲,凡是带有微处理器的专用软硬件系统都是嵌入式系统。如各类单片机和DSP系统。从狭义上讲,那些使用嵌入式微处理器构成独立系统,具有自己操作系统,具有特定功能,用于特定场合的专用软硬件系统称为嵌入式系统。嵌入式系统由嵌入式硬件与嵌入式软件组成;嵌入式硬件以芯片、模板、组件、控制器形式埋藏于设备内部。
理解“嵌入”的概念主要从三个方面上来理解。
1、从硬件上,将基于CPU的处围器件,整合到CPU芯片内部,比如早期基于X86体系结构下的计算机,CPU只是有运算器和累加器的功能,一切芯片要造外部桥路来扩展实现,象串口之类的都是靠外部的16C550/2的串口控制器芯片实现,而目前的这种串口控制器芯片早已集成到CPU内部,还有PC机有显卡,而多数嵌入式处理器都带有LCD控制器,但其种意义上就相当于显卡。比较高端的ARM类Intel Xscale架构下的IXP网络处理器CPU内部集成PCI控制器(可配成支持4个PCI从设备或配成自身为CPI从设备);还集成3个NPE网络处理器引擎,其中两个对应于两个MAC地址,可用于网关交换用,而另外一个NPE网络处理器引擎支持DSL,只要外面再加个PHY芯片即可以实现DSL上网功能。IXP系列最高主频可以达到1.8G,支持2G内存,1G×10或10G×1的以太网口或Febre channel的光通道。IXP系列应该是目标基于ARM体系统结构下由intel进行整合后成Xscale内核的最高的处理器了。
2、从软件上前,就是在定制操作系统内核里将应用一并选入,编译后将内核下载到ROM中。而在定制操作系统内核时所选择的应用程序组件就是完成了软件的“嵌入”,比如WinCE在内核定制时,会有相应选择,其中就是wordpad,PDF,MediaPlay等等选择,如果我们选择了,在CE启动后,就可以在界面中找到这些东西,如果是以前PC上将的windows操作系统,多半的东西都需要我们得新再装。
3、把软件内核或应用文件系统等东西烧到嵌入式系统硬件平台中的ROM中就实现了一个真正的“嵌入”。
嵌入式系统分为4层,硬件层、驱动层、操作系统层和应用层
1、硬件层,是整个嵌入式系统的根本,如果现在单片机及接口这块很熟悉,并且能用C和汇编语言来编程的话,从嵌入式系统的硬件层走起来相对容易,硬件层也是驱动层的基础,一个优秀的驱动工程师是要能够看懂硬件的电路图和自行完成CPLD的逻辑设计的,同时还要对操作系统内核及其调度性相当的熟悉的。但硬件平台是基础,增值还要靠软件。硬件层比较适合于,电子、通信、自动化、机电一体、信息工程类专业的人来搞,需要掌握的专业基础知识有,单片机原理及接口技术、微机原理及接口技术、C语言。
2、驱动层,这部分比较难,驱动工程师不仅要能看懂电路图还要能对操作系统内核十分的精通,以便其所写的驱动程序在系统调用时,不会独占操作系统时间片,而导至其它任务不能动行,不懂操作系统内核架构和实时调度性,没有良好的驱动编写风格,按大多数书上所说添加的驱动的方式,很多人都能做到,但可能连个初级的驱动工程师的水平都达不到,这样所写的驱动在应用调用时就如同windows下我们打开一个程序运行后,再打开一个程序时,要不就是中断以前的程序,要不就是等上一会才能运行后来打开的程序。想做个好的驱动人员没有三、四年功底,操作系统内核不研究上几编,不是太容易成功的,但其工资在嵌入式系统四层中可是最高的。
驱动层比较适合于电子、通信、自动化、机电一体、信息工程类专业尤其是计算机偏体系结构类专业的人来搞,除硬件层所具备的基础学科外,还要对数据结构与算法、操作系统原理、编译原理都要十分精通了解。
3、操作系统层,对于操作系统层目前可能只能说是简单的移植,而很少有人来自已写操
作系统,或者写出缺胳膊少腿的操作系统来,这部分工作大都由驱动工程师来完成。操作系统是负责系统任务的调试、磁盘和文件的管理,而嵌入式系统的实时性十分重要。据说,XP操作系统是微软投入300人用两年时间才搞定的,总时工时是600人年,中科院软件所自己的女娲Hopen操作系统估计也得花遇几百人年才能搞定。因此这部分工作相对来讲没有太大意义。
4、应用层,相对来讲较为容易的,如果会在windows下如何进行编程接口函数调用,到操作系统下只是编译和开发环境有相应的变化而已。如果涉及Java方面的编程也是如此的。嵌入式系统中涉及算法的由专业算法的人来处理的,不必归结到嵌入式系统范畴内。但如果涉及嵌入式系统下面嵌入式数据库、基于嵌入式系统的网络编程和基于某此应用层面的协议应用开发(比如基于SIP、H.323、Astrisk)方面又较为复杂,并且有难度了。
通过网上查询我发现目前国内外这方面的人都很稀缺。一方面,是因为这一领域入门门槛较高,不仅要懂较底层软件(例如操作系统级、驱动程序级软件),对软件专业水平要求较高(嵌入式系统对软件设计的时间和空间效率要求较高),而且必须懂得硬件的工作原理,所以非专业IT人员很难切入这一领域;另一方面,是因为这一领域较新,目前发展太快,很多软硬件技术出现时间不长或正在出现(如ARM处理器、嵌入式操作系统等),掌握这些新技术的人当然很少。嵌入式人才稀缺,身价自然就高,越有经验价格就越高。其实嵌入式人才稀少,根本原因可能是大多数人无条件接触,这需要相应的嵌入式开发板和软件,另外需要有经验的人进行指导开发流程。我们软件系的人学习嵌入式,显然应偏重于嵌入式软件,特别是嵌入式操作系统方面。对于搞嵌入式软件的人,最重要的技术显然是掌握主流嵌入式微处理器的结构与原理,必须掌握一个嵌入式操作系统,必须熟悉嵌入式软件开发流程并至少做过一个嵌入式软件项目。
然而我们都没有做过一个嵌入式软件项目,甚至连嵌入式的开发流程我也不清楚,我只了解了使用简单工具做一个简单的实验。只有去专研才能在嵌入式的领域站住脚,只有知道的比别人多才会更有竞争力。通过网上了解,我查询了嵌入式的入门和所需要的知识,其中C语言尤为重要,不管是做嵌入式软件还是硬件开发的人员,对C语言的掌握这个是必需的,特别是对于以后致力于嵌入式软件开发的人,现在绝大部分都是用C语言。其次,应该对操作系统有所了解,这对你对硬件和软件的理解,绝对有很大的帮助。应该把系统的管理理解一下,比如进程、线程,系统如何来分配资源的,系统如何来管理硬件的;知道了c语言和操作系统之后,再来看看嵌入式系统,我们主要学的是ARM,用的是ARM7,深入理解ARM不是件容易的事,只有在知道ARM相关知识之后才能称得上嵌入式已经入门了。与嵌入式有关的知识我也学了不少就是不能够综合在一起运用,组成原理,数据结构,操作系统,C++,这3门与嵌入式密切相关的学科都系统的学了一遍,但由于长时间没用到都有点忘记了,从网上得知嵌入式的学习与这些书有很大关系之后,我把嵌入式与以前学过的知识结合起来发现嵌入式的实验中很多都是共通的,我对嵌入式有了初步的理解。
我以为学习嵌入式应该分为2个部分:软件和硬件。关于硬件方面我接触到了数字电路教材和模拟电路方面的知识,但由于没有嵌入式CPU很难亲自动手来实现嵌入式的相关理论;嵌入式入门则需要不断地实验与分析,我只在实验课时做几个与所给的程序相关的小程序来实现一下;而软件方面则学过C语言,里面通常的语法曾今熟悉过;我通过下列方法来适应C语言在嵌入式中应用:首先重新翻看了下C的教材,看了些常见的语法,接着在编译器的角度来看待C,编译原理我刚学过,其中将高级语言与低级语言的翻译感觉在嵌入式中用到了很多;最后冲硬件的角度来看待C。嵌入式的核心包括嵌入式操作系统,嵌入式软件开发平台及工具以及嵌入式应用软件。这些决定怎样才能开发一个好的嵌入式系统。下面谈谈我了解的嵌入式的相关知识与应用:
首先,嵌入式系统是以应用为中心,以计算机技术为基础,且软硬件可裁减,适应应
用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。嵌入式有如下几个突出的有点1.系统内核小,2专用性强,3系统精简4高实时性OS5嵌入式系统的应用程序可以没有操作系统直接在芯片上运行,6嵌入式系统需要开发工具和环境。
嵌入式系统是近几年才风靡起来的,但是这个概念并非新近才出现。从20世纪七十年代单片机(最早的单片机是Intel公司的 8048,出现在1976年)的出现到今天各式各样的嵌入式微处理器,微控制器的大规模应用,嵌入式系统已经有了近30年的发展历史。经过30年的发展,嵌入式技术已经日趋成熟,在中国嵌入式机一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成,用于实现对其他设备的控制、监视或管理等功能。
其次,嵌入式系统无疑是当前最热门最有发展前途的IT应用领域之一。嵌入式系统用在一些特定专用设备上,通常这些设备的硬件资源(如处理器、存储器等)非常有限,并且对成本很敏感,有时对实时响应要求很高等。特别是随着消费家电的智能化,嵌入式更显重要。嵌入式系统是软硬结合的学科,通常有两类人会去专研嵌入式:一类是学电子工程、通信工程等偏硬件专业的,另一类是学软件、计算机专业出身的人,主要从事嵌入式操作系统和应用软件的开发。我是软件专业的学习嵌入式,越是智能设备越是复杂系统,软件越起关键作用,而且这是目前的趋势。嵌入式应用在很多方面,具体的可以分为工业控制,交通管理,信息家电,家庭智能管理系统,POS网络及电子商务,环境工程与自然,机器人,机电产品方面应用等方面。其中目前在服务领域,如远程点菜器等已经体现了嵌入式系统的优势。例外还有很多地方用到了嵌入式系统,最近飞利浦和ARM共同推出32位RISC嵌入式控制器,适用于工业控制,采用最先进的0.18微米CMOS嵌入式闪存处理技术,操作电压可以低至1.2伏,它还能降低25%到30%的制造成本,在工业领域中对最终用户而言是一套极具成本效益的解决方案。
那么该如何学好嵌入式我觉得应该从以下几点入手:
首先C语言,这个是毋庸置疑的,不管是做嵌入式软件还是硬件开发的人员,对C语言的掌握这个是必需的,特别是对于以后致力于嵌入式软件开发的人,现在绝大部分都是用C语言,你说不掌握它可以吗?至于如何学习C语言,我想这些基础的知识每个人都有自己的方法,关键要去学习,看书也好,网上找些视频看也好。很多人会问,C语言要学到怎么样,我觉得这没有标准的答案。我想至少你在明白了一些基础的概念后,就该写代码了,动手才是最重要的,当你动手了,遇到问题了,再反过来学习,反过来查查课本,那时的收获就不是你死看书能得到的。
其次,应该对操作系统有所了解,这对你对硬件和软件的理解,绝对有很大的帮助。应该把系统的管理理解一下,比如进程、线程,系统如何来分配资源的,系统如何来管理硬件的,当然,不是看书就能把这些理解透,如果不是一时能理解,没关系,多看看,结合以后的项目经验,会有更好的理解的。
还有应该学习下linux或者wince下的编程,这些对以后做应用的编程很有帮助,当然,如果做手机的话,那可以学习MTK、塞班、Android等操作系统,Android是以后发展的趋势,现在很热门,Android也是基于linux系统封装的,所以建议先学习下linux。
还有,应该学习下单片机或者ARM或者MIPS,很多人说我没有单片机的经验,直接学ARM可以吗?我觉得那完全没有问题的,当然如果你学习过单片机,那最好不过了,以后学习ARM就更简单了。
最后如果你把以上的知识都有所了解后,就该去阅读阅读一些优秀的代码,比如结合arm芯片手册学习去学习下UBOOT的源代码,了解下最小的系统开发,那对你整个嵌入式开发的非常有帮助的,可以的话,还可以学习下linux的源代码,当然如果你直接阅读2.6的代码,我想你会很痛苦的,可以先看看linux 代码早期的版本,比如0.12 的代码等等,麻雀虽
小,五脏俱全,如果你全看完了,那我想你就是一名很成功的嵌入式工程师。
以上就是我在本学期学习嵌入式后的心得及感想。
第四篇:嵌入式心得体会
对于电焊,虽然一点都不陌生,但亲手操作的机会却只有几次,因此我很庆幸能够有这样的焊接机会,进行这样的实践。
焊接看似容易,实则需要长时间练习才能掌握。刚开始的时候,手一直在抖,尤其这次焊的还是贴片电容、电阻,原器件比以前焊的小好多,用镊子的手一抖就夹不住了,拿着烙铁的手抖得都不容易将器件焊上,焊出来的焊点也特别难看,在不断尝试,不断挑战自我的过程中,我的手不抖了,也基本能掌握锡的用量了,当焊点终于不再“丑不忍睹”的时候,对焊接也没有当初的恐惧了。对自己的动手能力也有了信心。
在焊接的过程中我学到了许多以前我不知道的东西,比如,以前我只知道有电烙铁,但不知道它还有好多种类,有单用式、两用式、调温式、恒温式、直热式、感应式、内热式和外热式。松香可以将多余的锡弄下来,用酒精可以把板擦的干净些。通过视频和查找资料,知道了在焊不同的器件时用的电烙铁的头不同,比如在焊引脚时要用尖头,焊CPU时要用刀口,为防止锡将焊引脚的小孔堵住,用松香把纸条粘在小孔上,把小孔盖住,把CPU的引脚对齐,用锡先涂满两边,固定好芯片,在焊另外两边,然后用尖头的电烙铁沾着松香将多余的锡弄下来。
本次课程设计的是信号发生器,信号发生器在EDA课程,数字信号处理课程中都曾涉及,所以还是较为熟悉的,在设计之前查阅了一些相关书籍,也从网上查找了一些相关资料,程序代码中运用到了C语言,将程序加入到嵌入式结构框架中,进行定义变量,端口,设定所用的GPIO参数等等。
在焊接的过程中我不仅学到了知识,而且让我深深地体会到一个团队中各成员合作的重要性,要善于团队合作,在进行团队合作的时候,还要耐心听取每个成员的意见,每个人都有长处和短处,只有在包容别人的同时我们才可以取长补短,不断完善和不断进步,交到更多的朋友,学到更多的知识。同时还让我明白:做任何事都要一心一意,严谨认真,反复琢磨,不能畏惧,要有信心和勇气,一定要做好充分的准备。不能盲目去做,要坚持,还要学会反思跟总结,我们不是为了完成任务而完成,这还是一个学习跟提高的过程。
在大学里学的不是知识,而是一种叫做自学的能力。在这个知识爆炸的时代,知识更新太快,靠原有的一点知识肯定不行。以后的工作中肯定会用到一些新的知识对一些电子机器进行开发设计,我们只能在自己以前的基础上努力自学尽快掌握知识。必须在工作中勤于动手慢慢琢磨,不断学习,不断积累。遇到不懂的地方,自己先想方设法解决,实在不行可以虚心请教他人,而没有自学能力的人迟早要被企业和社会所淘汰。
第五篇:嵌入式心得体会
嵌入式心得体会
嵌入式心得体会1
4月10号,为期一个阶段的Linux开发基础培训课程圆满结束,回首这些天所留下的点点滴滴,感触深深,学习上知识点的积累,灵活运用的过程中感受到了Linux操作的快速高效性能,这也是我所追求的效率!
当初初涉培训课程的第一门课程时,都说Linux操作很繁琐复杂,心里总有些顾忌,带着种种不安与些许拼博的决心,开始了自我提升阶段的“充电”,由徐海兵老师教授我们基础课程的培训,我们则像着小学生般认真的记着笔记,仔细听着并学会如何去在实践中运用所学的Linux下的各种强大的命令集。
在Unit 1中,徐老师详细生动的为我们讲述了有关Linux的诞生、初成长以及辉煌的发展至今,今后应用范围则愈来愈广泛,讲解了为Linux这个伟大的OS做出巨大贡献的一位位出色的、伟大的人物,他们那种学习钻研的精神、锲而不舍的信念、勇于把握住难得的机会,从小处着手,踏踏实实的创造出了对人类科技发展做出卓越贡献的Linux(Unix)系统,他们的种种,都值得我们去深刻反省、刻苦学习、传承并永远发展下去。
查看ip地址和重启网络服务是我学的第一个命令: ifconfig eth0、ifconfig eth0 IP地址、service network restart。了解到远程登录软件可用xmanager。
secureCRT是我们常用的,安装好后利用其登录到了Red hat Linux,需要知道Linux主机的ip 地址。徐老师为我们介绍了重要内容:SHELL,即运行程序的程序,如echo $$SHELL可查看SHELL的环境变量是csh还是bash。指令pwd可查看当前所在路径,passwd:更改Linux下的密码,仅限root用户有此权限,当然我们是利用虚拟机VMware程序来运行Linux OS的,懂得了如何设置虚拟机的网卡设置、暂停、恢复、全屏等。
简单的学习后进入Unit 2,命令行的句法让我懂得了用法规则,一系列的命令功能强大:
date 显示当前年月时间星期之类的;
more指令与less重要但不常用;
cat用于查看短小的文件内容,常用!
mkdir命令用于在当前目录下创建新的目录;
ls 显示当前目录下所有文件;cd 更改文件路径,如cd 、cd . 当前目录;
rmdir 删除空文件夹;
rm指令很强大,用于删除空目录及非空目录下的指定或全部文件;
man 真男人,帮助手册;
history指令用于显示编写过的命令集,以history 序号 可显示序号所指命令;
echo回写命令,很重要,我需要继续学习;
exit 指从多重SHELL退出来。
嵌入式心得体会2
就在昨天3月9日,学校规定实习时间已经到期了。从上个月的13日到现在已经近一个月,虽然与公司的实习时间还没有结束,但是为了完成学校交待的任务,在此对这段时间的实习做一个总结。
首先,我先来简单介绍下实习单位。我实习的单位全称——上海宝信软件股份有限公司厦门分公司。其作为上海宝信软件中的重要一员,是宝信软件在全国多网点支持服务的延伸,具备与宝信软件上海总部相同的技术服务能力,并可无限制调用总部专家资源,秉承宝信软件“IT服务,提升信息价值”的经营理念,致力于IT服务,主营业务包括网络安全产品销售、系统集成、运维服务、软件工程等。
其次,向大家介绍是我的实习内容。这里要先介绍我的实习岗位——嵌入式软件开发工程师。实习内容大致分为两块,一是软件测试,二是编码。在我们刚来的前两周,我的实习内容就是软件测试。软件测试的主要内容是UnitTest也就是单元测试。但是,在实习刚开始的阶段,我并没有就马上做测试。而是有前辈给我发了一份我们要做的产品的功能书给我看。功能书文档是日文版的,我要把它看懂,才知道我们这里到底是做什么。后面的测试工作就是做单元测试了。
我们在做测试是有测试环境的,整个单元测试过程是有前人经验的。所以只要按照规则来就没有问题,也相对比较简单。就这样单元测试做了近8天左右,测试了51个c++函数。其实,单元测试比较简单,但是碰到函数的输入输出的值及路径多的时候,特别的烦,会影响测试效率。实习的另一个内容就是编码,其实说的确切一点,是看代码。一个刚来不到3周的新员工,以前又没有经验,公司怎么会放心让你写代码。有前辈给我安装了秀丸和Source Insight软件,然后给了我一代码,让我按上面看,有问题可以问组里的前辈。C++代码是看的懂,但是太多的函数,被调用的关系也不清楚,也不了解决函数的意义,所以感到很无趣。也许是在考验我的耐心或者是让我熟悉代码编写的规范。不管是什么目的,至少自己可以巩固下c++的基础。不过真的要感谢前辈的细心指导,使我大概了解程序的调用关系。
再次,向大学介绍下我的实习阶段的工作过程。每的8小时的上班时间,但是一般会比这个时间长的。早上8点45分到9点15分不等上班,晚上5点30分到6点不等下班,中午11点可以去吃饭、1点之前上班。这个时间还是比较人性化的。当然也有时候也要加班,如有时候日本客户来这里的时候,发现我们的人都很早下班的时候,他就会和我们的上级说,然后我们就得加班。这也是一种非常情况,但是加班是可以调休的。每天的上班时间基本上是跟电脑打交道。
前期实习阶段都是打开电子表格看日语版功能说明书,后面做测试的时间就是各种软件一起用了。每天做单元测试的时候,其实感觉特别烦。有时候一天做7到8个,有时候一天2个做不到。但是整个过程自己还是坚持下来了,虽然很累,自己还是很好强的。后期基本上是学习编程了。由于后面项目已经交互,所以每天都不没有加班了。每天的工作主要就是学习代码规范,如那里怎么缩进、命名之类的事。至于逻辑什么的,还是很不清楚,还需要努力多问多想。
再次,与大家分享下我的实习收获。虽然与原计划5个月的实习还差很远,但自己还是很有收获。其一,对于歌乐Audio项目有一定的了解。具体的表现在,分了几层。我个人是分配到app层,也就是业务应用层。虽然对业务的熟悉不够深,但大概知道,每一天前辈们都在做什么事。其二,日语方面的加强。因为客户方面基本上是日本人,所以加强日语学习是必须的。有了这样的一种压力,自动会转化为一种动力,促使我去学习。我想这样多少可以提高下我的日语能力。还有就是,常常有很多日本客户就做在我的旁边。感情还是很紧张,因为不知道怎么跟他交流。结果每一天他来的时候,我只能和他说声早上好。希望自己在今
后的时间里要多多加强日语学习,争取与日本客户交流,才能提升自己的能力。其三,交流沟通能力的提高。其实自习也一直觉得沟通能力对成功贡献是最大,要把一件做成肯定不是一个人的事情,我们需要与别人沟通。在沟通中互相了解相联系的部分,这样才能够避免摩擦带来不必要时间与精力的浪费。而我自己的沟通能力提高表现在自我意识的提高。当遇到问题的时候,会主动的想想,是哪个具体的点不懂,然后列出问题,再向前辈请教。这样大脑里就会有一个逻辑过程。通过这样就可以把自己的意思清楚的传达给别人。在别人向自己传达信息的时候,我会边思考边听,遇到不了解的地方,讲明白自己的不解之处。这样这个沟通过程就会比较流畅。其四,职场意识的提高。可以说来实习就意味我们提前毕业了,提前进入社会。所以,由学生到社会职业人的过渡期就被实习给填充了。经过一个月实习,我发现自己已经很习惯在公司工作。对于自己能做什么,未来能做什么也有了一定的思考。不管毕业,我还是留在这个公司还是去其他的公司,我想我心中已经有了这份意识,这对我将来的职业生涯都是有帮助的。其五,时间管理。很多人工作的时候就忘记了生活的存在,我们的生活是多彩的,并不是只有工作。其中,有一项转变的比较大,就是很多人不喜欢运动了。对于这些,我都是不太认可的。我还是会抽出时间出去运动一下。我觉得运动可以带给我健康,同时会让我的精神更好,工作更有效率。其实,运动并不会浪费我们时间,而是会给生活带更美好。
最后,与大家分享一下我这个月实习的心得与体会。通过这段时间的学习,从无知到认知,到深入了解,渐渐的我喜欢上这份工作,让我深刻的体会到学习的过程是最美的。在整个实习过程中,我每天都有很多的新的体会,新的想法,想说的很多,我总结下来主要有以下几点:
1、持之以恒
既然选择了自己的这份工作,不管工作本身怎么样,我们都要坚持往下走。因为我相信每一家公司的工作原理都是差不多的。如果你在这家公司做不住的话,我想你在另外一家公司也是做不住的。只有我们改变自己的态度,才可能战胜心中的浮躁。我们新人一来到公司我,一开始都不会立刻给工作我们做,-一般也都是先让我们看看文档或代码,时间短的要几天,时间长的要几周,在这段时间里很多人会觉得很无聊,没事可做,便觉没有发展空间,于是产生想走的念头。恰恰在这个关键的时候更需要我们的坚持,轻易放弃只会让自己后悔。
2、不怕做小事,那是一种考验
我们一来到公司实习的时候,很多组里的前辈多数还是把我们当学生看待。他们不会也不敢让我们直接参考到一个真正的项目中去。在这个其间一般会给我们看一些过去做过项目的文档和代码,其实不可小看这些小事,也许是为了考验我们,也许是让我们先了解业务。作为一人新人,一定要积极面对这些,勇于担当做小事,喜欢做小事。这样公司同事才会更快的接受你,慢慢地才会让你做一些重要的工作。
3 、态度端正,一定要多主动
我们到公司工作以后,要知道自己能否胜任这份工作,关键是看你自己对待工作的态度,态度对了,即使自己以前没学过的知识也可以在工作中逐渐的掌握。态度不好,就算自己有知识基础也不会把工作做好,四多一少就是我的态度,我刚到这个岗位工作,根本不清楚该做些什么,并且这和我在学校读的专业与这里做的东西还是不太一样的,刚开始我觉得很头痛,可经过工作过程中多看别人怎样做,多听别人怎样说,多想自己应该怎样做,然后自己亲自动手去多做,终于在这一个月里对工作有了一个较系统的认识,慢慢的自己也可以完成相关的工作了,光用嘴巴去说是不行的,所以,我们今后不管干什么都要端正自己的态度,这样才能把事情做好。
4.不要报怨
其实在做单元测试的那个时候,有时候觉的特别的烦。有时候做了半天连一个函数都没有把弄出来,那种感觉真的是非常的难受,心中也有委屈。可是这是我的工作,我报怨也没有用。只能一步一个脚印走过来。直到后面把函数测完,心中还是很有成就感的。其实有的人会觉得公司这里不好那里不好,同事也不好相处工作也不如愿,经常埋怨。我觉这样只会影响自己的工作情绪,不但做不好工作,还增加了自己的压力。所以,我们应该少埋怨,要看到公司好的一面,对存在的问题应该想办法去解决而不是去报怨,这样才能保持工作的激情。
5、虚心学习
由于我们是新手,而且又还没有从学校里完全走出来。所以在工作过程中,我们会碰到很多问题,有的问题我们可以有我们所学的解决,有的有很大业务性的问题,我们就无法解决。这个时候不要不懂装懂,应该虚心地向前辈们请教。请不要害怕,因为前辈肯教我们肯定是我们的福气,对我们以后在工作中都有帮助的。同时请教的时候也是一个锻炼沟通的过程。在前辈给我们解惑的时候,我们也应该虚心的接受,不要装着一副不屑的样子。
6、知错能改
做为一名新人,不管在学校有多么的优秀,来到公司,我们顶多就只有点基础,其他什么的都得重新开始。在学习的过程当中,犯错是不可避免的。知错能改是我们唯一的选择。明知自己有错,还理直气壮那是不应该的。我认为这种行为是可耻的。在犯错的时候来铭记于心,不要第二次在犯同样的错了。当前辈或其他人指出我们的错误时,我们要虚心听教,坦诚改错。这样我们才会进步,才会在组里与同事相处融洽。
7、团队合作
重要的不是我,是我们。在一个项目组里,我并不是一个人。我只能说我是组里的一个部分。我们每一人都不是神,我们不可能一个来完成所有的工作,因此,必须分工。但是,分工并不是都很明确的。每个人分到的工作,多多少少都会和别人的工作的有交集。这是因为,作为一个项目的每个部分,最终还是整合形成整体。我们还是需要这些部分与部分交集作为连接点组合起来。因此,每个虽是分工,但更多是合作。我们中的我必须明白这些,要有团队观,做好自己的同时,更重要也要做好与别人的沟通。这样才会避免工作的重复,意见的不同等负能量。
8、沟通能力
在上一点的体会团队合作中,其实我已经说了,团队合作的基础就是沟通。一个有效率的团队,我认为它的成功就在于成员之间良好的沟通能力。因为,人与人的沟通是信息传递的媒介。没有良好的沟通基础,信息在传递的时候就会被曲解。在软件开发的整个过程,团队合作是至关重要。每一环节,都离不开沟通。需求变更带来的问题,尤其需要在沟通中解决问题。所以,让自己把信息传递的正确和有效,提高沟通能力是必不可少的。
9.做人做事讲究原则
其实在公司上下班是一个很大的学问。同事都已经来上班了,你才来。或者是同事还没下班,你人就都先走了。其实要把这些看成一种常态。在公司上班不是比谁先来,也不是比谁晚走的,比得是自己的工作的效率。有时候,我们工作做完,是可以先走。你想想,你走了之后,估计别人也敢走了。从这一点上,可以说你是帮助了大家。当然这只是开玩笑,做人做事要有点原则。工作没完成当然不能跑回去,这是没有责任的表现,以后主管怎么能把事情交给你。工作做完,想先走就走了,不必当担心这担心那的。我相信一个好的主管,不会以一些无所谓的因素来衡量一个人的。只要自己身体正,就不怕别人说。
10.做好职业生涯规划
每个人在来实习之前,肯定会想我来这家公司是做什么。当你想好,并决定来的时候,你已经做了第一步职业生涯规划了。实习也是成了我们检验计划的时候,如果你发现这个工作不适合你,毕业前你还有机会可以做换。如果感觉这个工作适合你,那么你就可以做下一步
的规划了。我当初选择这个工作,是因为嵌入式软件开发在近几年会发展会比较快,而且本人对c++和c比较感兴趣。同时,目前做的工作是对日外包,对于我日语的提高也是很有帮助的。现在实习给我感觉是,不出现什么其他状况,应该毕业后会留在这个公司。至少今后的职业规划以日语和编程提高为主,以管理为辅。
在这里,我要感谢上海宝信软件股份分司给我这次宝贵的实习机会。同时,也要感谢组员对我有直接帮助的前辈。当然还要感谢学校和毕业指导王老师的关心与指导。
总而言之,这次实习是我大学四年来最正式的一次。我想通过这次的实习,我将从学生走向社会职业人的转变。一个月的时间过的太快了,但是我们的实习并没有结束。通过这次的总结,我对这次实习的意义有了深刻地认识。自己在今后的学习与工作中,一定会更加努力做的更好。
嵌入式心得体会3
研究嵌入式系统已经有快两年的时间了。很庆幸自己当初选择了嵌入式系统作为自己的研究和职业方向,可以说它是一种催化剂,让我自身的修养和研究能力都有了很大的提高。
在嵌入式系统的大门前,我只能算是刚刚看到这个大门的台阶,但这段小小的距离让我受益颇多,现将其中心得奉献出来,欢迎高手前辈们指正,以供刚接触的新人参考。
在写之前,想先写一句话,千万不要以为你是天才,所谓天才即胜别人N倍的人,如果你真认为你是天才,请以天才的标准来要求自己,将自己付出和别人的比例以N:1来进行。
(1)学习与生活心态
很多朋友都是在刚步入大学校门开始接触计算机或者其他。大学是一个很让人迷茫颓废的地方,可能你在高中踌躇满志,但在大学的管理机制下却心态渐糜。能够在大学(大一)里找到自己人生之志的同学有多少?目标要明确,不要得过且过,不要追逐热门的东西。
不管在什么时候,心里都要有自己的信念和理想,不要被其他东西左右了自己。要从兴趣和竞争出发,因为这才是你产生动力源的地方。学东西时,要让自己先喜欢上它,要学会享受学习它的时间,喜欢乔XXX的都知道,乔老爷子最常说的一句就是要享受比赛的时间。
因为只有你喜欢上了它,享受了它,才不会被它所产生的压力压倒自己,不要产生一种厌恶的心理。而且心态要调整,不要一味的蛮学,死学,在没有什么兴趣学的时候可以先玩几天,在回过头来,或者用其他的方式来转换。要抱着一种十年方能磨一剑的心理,扎扎实实从基础开始,不要为高速开发的一些现象所迷惑,那些都只是软件的功劳。
我个人认为搞编程,英语和数学很重要,大家一定要时时的抓,至于怎么抓那就是另外一回事了,当然其他的知识也要汲取,可以多接触点天文,地理,人文方面的东西来补充自己。转换的生活方式。要学会生活,在人的一生中,都会遇到一些很不开心的事,或者大大小小的意外,孙子兵法里面一句大意就是说,战场上要会将劣势转成优势,即最大的劣势很可能就是你的优势所在。
一个打击你可以把他变为前进的动力,不必为了一点挫折和捶胸顿足,不必为了一点小事争吵不休。空闲的时候可以躺下来看看天,你就会明白自强不息,厚德载物之理。(看到一些为了失恋或者其他而堕落的人真的很难受和可惜)。
要给人以帮助。别人有困难时或者一些举手之劳在自己解决范围内的尽力帮之,这对自己不会损失什么,相反在对方心里能够树立你的形象和增加好感。记住,给人之恩时也是给你自己铺路,这个世界不是靠你一个人可改变的。
(2)编程语言的选择语言的争论。
很多初学择,老是在学习何种语言上举棋不定,试问,中国牌子有几个不被骂的,试问,世界上哪部影片没人说他坏话的?术业有专攻,各司其职,每个语言的出现肯定都有自己价值和领域的范围,不同的只是价值和领域的高级和大小。
就像高,矮,胖,瘦组成一个“型”。但是技术是进步的,这个进步也是在旧的基础上。放心,技术再飞跃也不会今天奔I,明天扣肉的迅速,在学习的同时也要时时关注整个语言界的走势(貌似哪个伟人说的与时俱进),保持一种同步曲线的前进。语言能干什么?能问这句话,很欣慰。
表明你是从基础学起才会问出这样的话来。但换而言之你一开始对这门语言调查的信息不足。庙算者胜,对自己身边的事物了解是非常重要的,这也能说明说你的教材或者教导你的人不够充分。如果是我对新手交流,我会花足时间让他明白这门语言是什么,能干什么,整个体系等等。
这样在学的时候,对同一条语句上的理解你可能跟别人就不一样了,因为你知道这门语言的体系架构,你可以从更多的特性角度去挖掘使用它。提高自己对语言阅读能力。如何快速的进步?可以告诉你没有一步登天的办法,但是也可以告诉你如何让你快速掌握你所学的技术。多读他人代码,多领悟他人思维,多给自己出难题,多几种方法来解问题,多将语言的思想和身边的事物联系起来。想想你是怎么掌握普通话的,方法就不具体说了。
编程的思维。计算机是充满诱惑的东西,很多人都说热爱计算机,那只是它的表面,你热爱的只是他的一种扩展性的东西。能学计算机我很高兴,因为计算机从某种意义上来说将空间的距离给消除掉了。这里没有流血,没有牺牲。你可以以一种艺术家的思维来塑造它,可以以侦探的逻辑思维来解决它,可以以一种战争狂人的思维来摧毁它。
你可以将你的这种思维体现在代码和整个布局里,不要惊异别人代码思维的异风,你也有自己的思维风格,你也可以,你也可以用自己代码让别人惊异。记住你学东西时更多的要体会他的思维,比如数学,微积分,离散,无数的定理,你学完以后可能永远都用不到,但是你可能有这种感觉,在你碰到某一问题时,这一问题的性质和你学到的东西很类似,但是中间就是差了一点东西,对了,这就是它思维上的一种运用,一种抽象,一种转换。
嵌入式心得体会4
这学期才接触嵌入式系统感觉还称不上入门,我通过学习知道了嵌入式的发展前景很大,各个领域都用到了嵌入式,学好嵌入式不愁没饭吃。
广义上讲,凡是带有微处理器的专用软硬件系统都是嵌入式系统。如各类单片机和DSP系统。从狭义上讲,那些使用嵌入式微处理器构成独立系统,具有自己操作系统,具有特定功能,用于特定场合的专用软硬件系统称为嵌入式系统。嵌入式系统由嵌入式硬件与嵌入式软件组成; 嵌入式硬件以芯片、模板、组件、控制器形式埋藏于设备内部。
理解“嵌入”的概念 主要从三个方面上来理解。
1、从硬件上,将基于CPU的处围器件,整合到CPU芯片内部,比如早期基于X86体系结构下的计算机,CPU只是有运算器和累加器的功能,一切芯片要造外部桥路来扩展实现,象串口之类的都是靠外部的16C550/2的串口控制器芯片实现,而目前的这种串口控制器芯片早已集成到CPU内部,还有PC机有显卡,而多数嵌入式处理器都带有LCD控制器,但其种意义上就相当于显卡。比较高端的ARM类Intel Xscale架构下的IXP网络处理器CPU内部集成PCI控制器(可配成支持4个PCI从设备或配成自身为CPI从设备);还集成3个NPE网络处理器引擎,其中两个对应于两个MAC地址,可用于网关交换用,而另外一个NPE网络处理器引擎支持DSL,只要外面再加个PHY芯片即可以实现DSL上网功能。IXP系列最高主频可以达到1.8G,支持2G内存,1G×10或10G×1的以太网口或Febre channel的光通道。IXP系列应该是目标基于ARM体系统结构下由intel进行整合后成Xscale内核的最高的处理器了。
2、从软件上前,就是在定制操作系统内核里将应用一并选入,编译后将内核下载到ROM中。而在定制操作系统内核时所选择的应用程序组件就是完成了软件的“嵌入”,比如WinCE在内核定制时,会有相应选择,其中就是wordpad,PDF,MediaPlay等等选择,如果我们选择了,在CE启动后,就可以在界面中找到这些东西,如果是以前PC上将的windows操作系统,多半的东西都需要我们得新再装。
3、把软件内核或应用文件系统等东西烧到嵌入式系统硬件平台中的ROM中就实现了一个真正的“嵌入”。。
嵌入式系统分为4层,硬件层、驱动层、操作系统层和应用层
1、硬件层,是整个嵌入式系统的根本,如果现在单片机及接口这块很熟悉,并且能用C和汇编语言来编程的话,从嵌入式系统的硬件层走起来相对容易,硬件层也是驱动层的基础,一个优秀的驱动工程师是要能够看懂硬件的电路图和自行完成CPLD的逻辑设计的,同时还要对操作系统内核及其调度性相当的熟悉的。但硬件平台是基础,增值还要靠软件。 硬件层比较适合于,电子、通信、自动化、机电一体、信息工程类专业的人来搞,需要掌握的专业基础知识有,单片机原理及接口技术、微机原理及接口技术、C语言。
2、驱动层,这部分比较难,驱动工程师不仅要能看懂电路图还要能对操作系统内核十分的精通,以便其所写的驱动程序在系统调用时,不会独占操作系统时间片,而导至其它任务不能动行,不懂操作系统内核架构和实时调度性,没有良好的驱动编写风格,按大多数书上所说添加的驱动的方式,很多人都能做到,但可能连个初级的驱动工程师的水平都达不到,这样所写的驱动在应用调用时就如同windows下我们打开一个程序运行后,再打开一个程序时,要不就是中断以前的程序,要不就是等上一会才能运行后来打开的程序。想做个好的驱动人员没有三、四年功底,操作系统内核不研究上几编,不是太容易成功的,但其工资在嵌入式系统四层中可是最高的。
驱动层比较适合于电子、通信、自动化、机电一体、信息工程类专业尤其是计算机偏体系结构类专业的人来搞,除硬件层所具备的基础学科外,还要对数据结构与算法、操作系统原理、编译原理都要十分精通了解。
3、操作系统层,对于操作系统层目前可能只能说是简单的移植,而很少有人来自已写操
作系统,或者写出缺胳膊少腿的操作系统来,这部分工作大都由驱动工程师来完成。操作系统是负责系统任务的调试、磁盘和文件的管理,而嵌入式系统的实时性十分重要。据说,XP操作系统是微软投入300人用两年时间才搞定的,总时工时是600人年,中科院软件所自己的女娲Hopen操作系统估计也得花遇几百人年才能搞定。因此这部分工作相对来讲没有太大意义。
4、应用层,相对来讲较为容易的,如果会在windows下如何进行编程接口函数调用,到操作系统下只是编译和开发环境有相应的变化而已。如果涉及Java方面的编程也是如此的。嵌入式系统中涉及算法的由专业算法的人来处理的,不必归结到嵌入式系统范畴内。但如果涉及嵌入式系统下面嵌入式数据库、基于嵌入式系统的网络编程和基于某此应用层面的协议应用开发(比如基于SIP、H.323、Astrisk)方面又较为复杂,并且有难度了。
通过网上查询我发现目前国内外这方面的人都很稀缺。一方面,是因为这一领域入门门槛较高,不仅要懂较底层软件(例如操作系统级、驱动程序级软件),对软件专业水平要求较高(嵌入式系统对软件设计的时间和空间效率要求较高),而且必须懂得硬件的工作原理,所以非专业IT人员很难切入这一领域;另一方面,是因为这一领域较新,目前发展太快,很多软硬件技术出现时间不长或正在出现(如ARM处理器、嵌入式操作系统等),掌握这些新技术的人当然很少。嵌入式人才稀缺,身价自然就高,越有经验价格就越高。其实嵌入式人才稀少,根本原因可能是大多数人无条件接触,这需要相应的嵌入式开发板和软件,另外需要有经验的人进行指导开发流程。我们软件系的人学习嵌入式,显然应偏重于嵌入式软件,特别是嵌入式操作系统方面。对于搞嵌入式软件的人,最重要的技术显然是掌握主流嵌入式微处理器的结构与原理,必须掌握一个嵌入式操作系统,必须熟悉嵌入式软件开发流程并至少做过一个嵌入式软件项目。
然而我们都没有做过一个嵌入式软件项目,甚至连嵌入式的开发流程我也不清楚,我只了解了使用简单工具做一个简单的实验。只有去专研才能在嵌入式的领域站住脚,只有知道的比别人多才会更有竞争力。通过网上了解,我查询了嵌入式的入门和所需要的知识,其中C语言尤为重要,不管是做嵌入式软件还是硬件开发的人员,对C语言的掌握这个是必需的,特别是对于以后致力于嵌入式软件开发的人,现在绝大部分都是用C语言。其次,应该对操作系统有所了解,这对你对硬件和软件的理解,绝对有很大的帮助。应该把系统的管理理解一下,比如进程、线程,系统如何来分配资源的,系统如何来管理硬件的;知道了c语言和操作系统之后,再来看看嵌入式系统,我们主要学的是ARM,用的是ARM7, 深入理解ARM不是件容易的事,只有在知道ARM相关知识之后才能称得上嵌入式已经入门了。 与嵌入式有关的知识我也学了不少就是不能够综合在一起运用,组成原理,数据结构,操作系统,C++,这3门与嵌入式密切相关的学科都系统的学了一遍,但由于长时间没用到都有点忘记了,从网上得知嵌入式的学习与这些书有很大关系之后,我把嵌入式与以前学过的知识结合起来发现嵌入式的实验中很多都是共通的,我对嵌入式有了初步的理解。
我以为学习嵌入式应该分为2个部分:软件和硬件。关于硬件方面我接触到了数字电路教材和模拟电路方面的知识,但由于没有嵌入式CPU很难亲自动手来实现嵌入式的相关理论;嵌入式入门则需要不断地实验与分析,我只在实验课时做几个与所给的程序相关的小程序来实现一下;而软件方面则学过C语言,里面通常的语法曾今熟悉过;我通过下列方法来适应C语言在嵌入式中应用:首先重新翻看了下C的教材,看了些常见的语法,接着在编译器的角度来看待C,编译原理我刚学过,其中将高级语言与低级语言的翻译感觉在嵌入式中用到了很多;最后冲硬件的角度来看待C。嵌入式的核心包括嵌入式操作系统,嵌入式软件开发平台及工具以及嵌入式应用软件。这些决定怎样才能开发一个好的嵌入式系统。 下面谈谈我了解的嵌入式的相关知识与应用:
首先,嵌入式系统是以应用为中心,以计算机技术为基础,且软硬件可裁减,适应应
用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。嵌入式有如下几个突出的有点1.系统内核小,2专用性强,3系统精简4高实时性OS5嵌入式系统的应用程序可以没有操作系统直接在芯片上运行,6嵌入式系统需要开发工具和环境。
嵌入式系统是近几年才风靡起来的,但是这个概念并非新近才出现。从20世纪七十年代单片机(最早的单片机是Intel公司的 8048,出现在1976年)的出现到今天各式各样的嵌入式微处理器,微控制器的大规模应用,嵌入式系统已经有了近30年的发展历史。经过30年的发展,嵌入式技术已经日趋成熟,在中国嵌入式机一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成,用于实现对其他设备的控制、监视或管理等功能。
其次,嵌入式系统无疑是当前最热门最有发展前途的IT应用领域之一。嵌入式系统用在一些特定专用设备上,通常这些设备的硬件资源(如处理器、存储器等)非常有限,并且对成本很敏感,有时对实时响应要求很高等。特别是随着消费家电的智能化,嵌入式更显重要。 嵌入式系统是软硬结合的学科,通常有两类人会去专研嵌入式:一类是学电子工程、通信工程等偏硬件专业的,另一类是学软件、计算机专业出身的人,主要从事嵌入式操作系统和应用软件的开发。我是软件专业的学习嵌入式,越是智能设备越是复杂系统,软件越起关键作用,而且这是目前的趋势。嵌入式应用在很多方面,具体的可以分为工业控制,交通管理,信息家电,家庭智能管理系统,POS网络及电子商务,环境工程与自然,机器人,机电产品方面应用等方面。其中目前在服务领域,如远程点菜器等已经体现了嵌入式系统的优势。例外还有很多地方用到了嵌入式系统,最近飞利浦和ARM共同推出32位RISC嵌入式控制器,适用于工业控制,采用最先进的0.18微米CMOS嵌入式闪存处理技术,操作电压可以低至1.2伏,它还能降低25%到30%的制造成本,在工业领域中对最终用户而言是一套极具成本效益的解决方案。
那么该如何学好嵌入式我觉得应该从以下几点入手:
首先C语言,这个是毋庸置疑的,不管是做嵌入式软件还是硬件开发的人员,对C语言的掌握这个是必需的,特别是对于以后致力于嵌入式软件开发的人,现在绝大部分都是用C语言,你说不掌握它可以吗?至于如何学习C语言,我想这些基础的知识每个人都有自己的方法,关键要去学习,看书也好,网上找些视频看也好。很多人会问,C语言要学到怎么样,我觉得这没有标准的答案。我想至少你在明白了一些基础的概念后,就该写代码了,动手才是最重要的,当你动手了,遇到问题了,再反过来学习,反过来查查课本,那时的收获就不是你死看书能得到的。
其次,应该对操作系统有所了解,这对你对硬件和软件的理解,绝对有很大的帮助。应该把系统的管理理解一下,比如进程、线程,系统如何来分配资源的,系统如何来管理硬件的,当然,不是看书就能把这些理解透,如果不是一时能理解,没关系,多看看,结合以后的项目经验,会有更好的理解的。
还有应该学习下linux或者wince下的编程,这些对以后做应用的编程很有帮助,当然,如果做手机的话,那可以学习MTK、塞班、Android等操作系统,Android是以后发展的趋势,现在很热门,Android也是基于linux系统封装的,所以建议先学习下linux。
还有,应该学习下单片机或者ARM或者MIPS,很多人说我没有单片机的经验,直接学ARM可以吗?我觉得那完全没有问题的,当然如果你学习过单片机,那最好不过了,以后学习ARM就更简单了。
最后如果你把以上的知识都有所了解后,就该去阅读阅读一些优秀的代码,比如结合arm芯片手册学习去学习下UBOOT的源代码,了解下最小的系统开发,那对你整个嵌入式开发的非常有帮助的,可以的话,还可以学习下linux的源代码,当然如果你直接阅读2.6的代码,我想你会很痛苦的,可以先看看linux 代码早期的版本,比如0.12 的代码等等,麻雀虽
小,五脏俱全,如果你全看完了,那我想你就是一名很成功的嵌入式工程师。
以上就是我在本学期学习嵌入式后的心得及感想。
嵌入式心得体会5
通过这次实习,在各方面我感觉自己都有了一定的收获。这次实习主要是为了我们今后在工作及业务上能力的提高起到了促进的作用,增强了我们今后的竞争力,为我们能在以后立足增添了一块基石。实习单位的老师也给了我很多机会参与他们的设计是我懂得了很多以前难以解决的问题,将来从事设计工作所要面对的问题,如:前期的策划和后期的制作等等。这次实习丰富了我在这方面的知识,使我向更深的层次迈进,对我在今后的社会当中立足有一定的促进作用,但我也认识到,要想做好这方面的工作单靠这这几天的实习是不行的,还需要我在平时的学习和工作中一点一点的积累,不断丰富自己的经验才行。我面前的路还是很漫长的,需要不断的努力和奋斗才能真正地走好。
大学生活让我对计算机理论知识有了一定的了解,但真正操作起来就没有那么容易.纸上得来终觉浅, 绝知此事要躬行。经过过去两个月的实习,我对自己有了新的认识及前进的方向。
经过过去半个月的实践和实习,我对未来充满了美好的憧憬,在未来的日子,我将努力做到以下几点:
1.继续学习,不断提升理论素养。
在信息时代,学习是不断地汲取新信息,获得事业进步的动力。现在通过实习总感觉自己学的不够,要用到知识时总感觉脑袋是空白的。很后悔自己当时在学校为什么不多学一点,多练习一点。总在后悔也没有用,只能自己去努力学习。为了能更好的适应工作,我利用自己空闲时间去附近的书店去看书,希望能弥补不足。
2.加强信心,坚持下去
虽然在这个公司自己可能是学历水平是最高的,但真的工作起来我的起点却很低。有时候遇到事情总会着急,慌张。平常信心不足,总感觉自己做不好。大家说我很内向,其实只是自己有点自卑,不敢去表达。或许还需要一段时间的磨练吧。只有自己的知识和能力都在提升,相信自己总有一天会很勇敢的表现自己。
上学的时候大家都说,能珍惜现在的日子就好好珍惜。等工作了才真的领悟这句话。每天起早贪黑,忙忙碌碌,做了第一天就想回到学校接着做学生。感觉学生时代真是最美好的时间。可是既然踏出来了就要继续走下去,因为这一天也终究要来到。
对给自己点信心,多给自己点赞赏,多给自己鼓鼓劲。相信总会走出一条宽敞大道的。
3、同事相处
感觉学生时代很美好,不仅仅是不需要去努力工作,而是在学生时代你可以有很好的同学,很好的朋友,大家相互嘘寒问暖,不必勾心斗角。我感觉这里才真的有纯洁的友谊。可踏上了社会,于存在着利益关系,又工作繁忙,就多了份人情世故。老板对你的颐指气使,同事对你的多加防范,就更加想念自己的同学。可能自己还不能适应这样的环境吧。但还是希望以后自己去努力,希望自己可以有个好朋友,希望自己可以有个团结的环境。
实习,是开端也是结束。在书本上学过很多理论,但从未付诸实践过,也许等到真正运用时,才会体会到难度有多大。在今后的工作和生活中,自己需要更加努力的奋斗下去。
实习的同时也让我了解到了自己的不足,我会继续努力,完善自我。对于学校的精心安排和指导老师的用心辅导非常!
嵌入式心得体会6
学期开始,我们开始学习《嵌入式系统及应用》,由于初次接触嵌入式系统,感觉蛮难的,所以收获不是很大,很多的概念都比较模糊,等到学期结束开始做嵌入式课程设计时,真是茫然无从下手,自从拿到设计主题后,我就像热锅上的蚂蚁,一个字“急”。最后实在没有办法,逼着自己去学习,查资料,总算对嵌入式有了浅层理解。
嵌入式系统本身是一个相对模糊的定义,一个手持的Mp3和一个pC104的微型工业控制计算机都可以认为是嵌入式系统。总体来说,嵌入式系统是“用于控制,监视或者辅助操作机器和设备的装备”。
一个典型的桌面Linux系统包括3个主要的软件层———linux内核、C库和应用程序代码。内核是唯一可以完全控制硬件的层,内核驱动程序代表应用程序与硬件之间进行会话。内核之上是C库,负责把pOSIXApI转换为内核可以识别的形式,然后调用内核,从应用程序向内核传递参数。应用程序依靠驱动内核来完成特定的任务。
在了解了基础知识之后,我开始进行上机操作,当然,其中遇到很多的难题,很多东西都是第一次接触,又没有别人在旁边指导操作,完全凭借自己去摸索练习。其中的困难可想而知。
然而坚持就是胜利,牙一咬眼一闭坚持做下去,而通过本次实验,我感觉收获还是蛮多的。可能我对于嵌入式的知识学习的还是不太多,但是这之外的东西收获颇丰。
它让我学会了如何通过自己的努力去认知一个新事物,更重要的是端正自己的学习态度,只有真正下功夫去学习,才能有收获,正所谓“一份耕耘,一份收获。”没有付出,何谈回报呢?
再者,通过本次实验,我也学会了如何去分析问题,如何找出自己设计中的不足,继而去排除解决问题,这就是一个自我学习的过程。当我们通过实验去学习理论知识时,自己动手得出的结论,不仅能加深我们对嵌入式的理解,更能加深我们对此的记忆。
当然,在这其中,我也发现自己的许多不足之处,由于学期伊始我没有好好学习,才落到如此地步,这也可以说是一个教训吧!我相信在以后的学习工作中,我一定会端正自己的学习态度,一丝不苟的去对待每一件事。只有做好足够的准备,才能事半功倍!
嵌入式心得体会7
首先,我们学习的课本是嵌入式系统应用教程。我学习的体会是这样的:开始时,由于是刚刚入门,对老师书的好多东西是好奇的,好多名词也是新鲜的,不过不太懂什么意思。但是慢慢的,了解的深入让我有了更深的感触和体会。
在嵌入式的学习过程中,让我了解了什么是嵌入式系统。它就是以应用为中心,以计算机技术为基础,软硬件可定制,适用于不同应用场合,对功能、可靠性、成本、体积、功耗有严格要求的计算机系统。他一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统、用户应用程序四个部分组成,用于实现对其他设备的控制、监视或管理功能。嵌入式系统已经应用于科学研究、工业控制、军事技术、交通通信、医疗卫生、消费娱乐等领域,人们日常使用的手机、PDA、汽车、智能家电、GPS等均是嵌入式系统的典型代表。
一开始我们就学习嵌入式的系统的基础部分,那很简单,就是一些定义或是介绍之类的。在进入第二章时,就开始学习了嵌入式开发过程中的主要操作系统——linux,在接下来的课程中,我发现嵌入式的学习过程还是蛮有趣的。在对linux的学习中,我们对它有了一点点的了解,接着就是学习一虚拟机的方式安装linux。对我来说有趣的就是安装的过程了,首先我们跟着老师的脚步走,学会了怎么安装,在自己动手进行对它的安装,这个过程是简单而有趣的。这样的开始让我对它充满了兴趣,也对以后的学习充满了信心。
其次就是安装好了之后,老师就更深一步的教我们应用了。在这是老师首先交给我们的是一些简单的命令应用,Linux具有很丰富的命令,绝大多数命令具有大量的参数。
在学习命令的过程中,只要你认真的看着老师操作还有认真听着他讲,你就会发现有些命令的操作还是很简单的,不过在操作的过程中,我也有遇到有些困难,会出现你按照书上学习的例子,将命令输入终端时会出现你不想要的结果,也就是错误的结果。这是问问旁边的同学或是懂的同学就可以解决了。
在对于这部分的学习中,让我知道了命令对于嵌入式的重要性。它是linux的重要内容,linux中所有的功能都是通过命令执行。在实际应用中,为了减少系统开销,经常不使用图形界面,此时,对系统的所有操作都需要以命令方式来执行。在嵌入式系统开发过程中,由于目标机的性能和配置比较低,因此,一般情况下目标机仅具有命令窗口而没有图形界面,对目标机的所有操作都通过命令来实现。
还有的那就是进一步学习与嵌入式系统开发相关的linux的服务,他们的启动、设置等的操作和应用。而在学习之中,我们主要介绍的是嵌入式系统中开发工程使用的TFTP、Telent和NFS服务。第一个实现的事上机位与下机位之间文件的传输、无磁盘网络的设备的启动等功能;第二个实现的事远程登录功能;第三个实现的是网络文件系统功能。
从以上的内容之中,并不难感受到我们的学习过程是由浅入深的,这对于我们的学习也有了较好的帮助。
当然,我们学习的不仅仅是这么几个内容,其中还有相关的实验内容。在我们基础的学习的过程之中,我有了这么一点的感受,总的来说就是概念加专业名词还有介绍加实验。不过你绝对不能小看那些概念和介绍,它对我们有着很重要的指导作用哦!实验那就更不用说了,它提高我们的动手能力,在实验的过程中还能让你更加理解书中的理念,这就是我学习嵌入式的感受。
嵌入式心得体会8
目前最常见的嵌入式LINUX方面,我认为大概3个:
1.嵌入式LINUX上层的应用,包括QT的GUI开发
2.嵌入式的LINUX系统开发
3.嵌入式的驱动开发
学习嵌入式:
第一.C语言要掌握(硬件略懂),C语言是所有编程语言中的强者,单片机,DSP,类似ARM的种种芯片的编程都可以用C语言搞定,因为它可移值性强,编译效率高,运算速度快,便于实现理更复杂的的数据结构。上层应用和数据存储,我推荐使用C++语言。
第二.学习一种嵌入式的处理器架构,个人推荐32位的处理器,像ARM,因为嵌入式
开发8位的处理器显得有点低端,大多数只能用作简单的工控.
第三.学习一种嵌入式操作系统,像LINUX,WINCE等都可以,LINUX更好。
三:ARM是一种微处理器,已遍及工业控制,消费类的电子产品,通信,网络,无线等各类的产品基于
ARM技术的微处理器已占75%以上的市场份额,可见其技术已逐渗入到我们生活中的各个领域,像手机就是用ARM7 ARM9 ARM11的微处理器技术开发的。嵌入式系统最常见的ARM系列,ARM7,ARM9,ARM11,cortex-A8等。
我们都是曾经从大学里走出来的迷茫羊羔,工作以后我才知道,在大学里不是学到了什么,而是学会怎么去学,相信自己,理清自己的思路,根据自己的性格,剖析自我适合往哪方面发展。
嵌入式心得体会9
一、 实习时间
20xx年4月12日-20xx年4月26日
二、 指导教师姓名
陈xx
三、 实习地点
长沙市牛耳服务外包实训基地
四、 实习目的与内容
对于嵌入式项目进行学习培训,掌握嵌入式的主要项目及相关技术
五、 实习收获与体会
一转眼半个月的实习生活过去了,现在我已经回到学校,回想起半个月的实习生活,自己学到了很多,懂得了很多。
真的说不出是什么感觉,伴着时间,就像是在和自己的影子赛跑,不可能从真实的两面去看清它,只是经意不经意的感受着有种东西在过去,也许更适合的只有那句话:时不待我,怎可驻足。原以为实习对于我来说会是很长,但实际却不同。想象收获的东西,真的很多,看看我的工作笔记,一篇又一篇,记别人的事情比自己的还多,也许 实习,并不像我想象中的那样轻松惬意,而是充满了挑战和艰辛。我给自己敲响了警钟:“不要半途而废,做事情切忌三分热度。”我信心十足的回答到:“我一定会坚持到底!”
天下英雄皆我辈,一入江湖立马催。” 从学校到社会的大环境的转变,身边接触的人也完全换了角色,老师变成老板,同学变成同事,相处之道完全不同。在这巨大的转变中,我们可能彷徨,迷茫,无法马上适应新的环境,但在同学、同事的帮助和自己摸索的情况下,我还是完成了这次实习。但我发现,以我们的经验,不学到一定的深度和广度是难以在实际工作中应付自如的。因此反映出学习的还不够,缺点疏漏。需在加以刻苦钻研及学习,不断开拓视野,增强自己的实践操作技能,我们也许看不惯企业之间残酷的竞争,无法忍受同事之间漠不关心的眼神和言语。很多时候觉得自己没有受到领导重用,所干的只是一些无关重要的杂活,自己的提议或工作不能得到老板的肯定。
做不出成绩时,会有来自各方面的压力,老板的眼色同事的嘲讽。而在学校,有同学老师的关心和支持,每日只是上上课,很轻松。常言道:工作一两年胜过十多年的读书。两个月的实习时间虽然不长,但是我从中学到了很多知识,关于做人,做事,做学问。只有拥有自信才能够克服一切,去实现自己的理想,创造自己的人生。
实习是个人综合能力的锻炼。作为一名新时代的新青年更应该把学习作为保持工作积极性的重要途径。像我这种文凭不高的人,心里就有一种很渴望的感觉,明白了自己与社会所需的要求,因为现在毕业求职,更多的时间是社会职业选择自己面试,更多的不是自己去选择职业,这应该就是所谓的先就业再择业吧。所以自己会把心态放正,在公司的时候先全面发展,等过段再看看精于哪个方面,然后向那个方向努力发展。
“在大学里学的不是知识,而是一种叫做自学的能力”。参加工作后才能深刻体会这句话的含义。课本上学的理论知识用到的很少。在这个信息爆炸的时代,知识更新太快,靠原有的一点知识肯定是不行的。我们必须在工作中勤于动手慢慢琢磨,不断学习不断积累。遇到不懂的地方,自己先想方设法解决,实在不行可以虚心请教他人,而没有自学能力的人迟早要被企业和社会所淘汰。所以我们还要继续学习,不断提升理论素养。
在信息时代,学习是不断地汲取新信息,获得事业进步的动力。作为一名年轻同志更应该把学习作为保持工作积极性的重要途径。走上工作岗位后,我积极响应单位号召,结合工作实际,不断学习理论、业务知识和社会知识,用先进的理论武装头脑,用精良的业务知识提升能力,以广博的社会知识拓展视野。
我们还要努力实践,自觉进行角色转化。“理论是灰色的,生活之树常青”,只有将理论付诸于实践才能实现理论自身的价值,也只有将理论付诸于实践才能使理论得以检验。同样,一个人的价值也是通过实践活动来实现的,也只有通过实践才能锻炼人的品质,彰现人的意志。
从学校走向社会,首要面临的问题便是角色转换的问题。从一个学生转化为一个单位人,在思想的层面上,必须认识到二者的社会角色之间存在着较大的差异。学生时代只是单纯的学习知识,而社会实践则意味着继续学习,并将知识应用于实践,学生时代可以自己选择交往的对象,而社会人则更多地被他人所选择。诸此种种的差异。不胜枚举。但仅仅在思想的层面上认识到这一点还是不够的,而是必须在实际的工作和生活中潜心体会,并自觉的进行这种角色的转换。
在今后的工作和生活中,我将继续学习,深入实践,不断提升自我,努力创造业绩,继续在自己的工作领域创造更多的价值。
大学因实习而完整,而大学生活却因实习而精彩。
总之,这次实习,自己确实学到了很多也成长了许多。在实习期间,每日重复单调繁琐的工作,时间久了容易厌倦。但但是工作简单也不能马虎,你一个小小的错误可能会给公司带来巨大的麻烦或损失,还是得认真完成。这段时间,我看到了自己本身存在着许多问题,也会遇到这样那样的问题,当前的时代日趋复杂,不学到一定的深度和广度是难以在实际工作中应付自如的。因此反映出学习的还不够,缺点疏漏。需再加以刻苦钻研及学习,不断开拓视野,增强自己的实践操作技能,为以后的工作存储更多的能力。
以上就是我的实习报告,可能并不是一份多么规范的报告,但确确实实我这工作中的感受。
嵌入式心得体会10
首先,嵌入式系统是以应用为中心,以计算机技术为基础,且软硬件可裁减,适应应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。嵌入式有如下几个突出的有点:
1、系统内核小。
2、专用性强。
3、系统精简。
4、高实时性OS。
5、嵌入式系统的应用程序可以没有操作系统直接在芯片上运行。
6、嵌入式系统需要开发工具和环境。
嵌入式系统是近几年才风靡起来的,但是这个概念并非新近才出现。从20世纪七十年代单片机(最早的单片机是Intel公司的8048,出现在1976年)的出现到今天各式各样的嵌入式微处理器,微控制器的大规模应用,嵌入式系统已经有了近30年的发展历史。经过30年的发展,嵌入式技术已经日趋成熟,在中国嵌入式机一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成,用于实现对其他设备的控制、监视或管理等功能。
其次,嵌入式系统无疑是当前最热门最有发展前途的IT应用领域之一。嵌入式系统用在一些特定专用设备上,通常这些设备的硬件资源(如处理器、存储器等)非常有限,并且对成本很敏感,有时对实时响应要求很高等。特别是随着消费家电的智能化,嵌入式更显重要。
嵌入式系统是软硬结合的学科,通常有两类人会去专研嵌入式:一类是学电子工程、通信工程等偏硬件专业的,另一类是学软件、计算机专业出身的人,主要从事嵌入式操作系统和应用软件的开发。我是软件专业的学习嵌入式,越是智能设备越是复杂系统,软件越起关键作用,而且这是目前的趋势。嵌入式应用在很多方面,具体的可以分为工业控制,交通管理,信息家电,家庭智能管理系统,POS网络及电子商务,环境工程与自然,机器人,机电产品方面应用等方面。其中目前在服务领域,如远程点菜器等已经体现了嵌入式系统的优势。例外还有很多地方用到了嵌入式系统,最近飞利浦和ARM共同推出32位RISC嵌入式控制器,适用于工业控制,采用最先进的0.18微米CMOS嵌入式闪存处理技术,操作电压可以低至1.2伏,它还能降低25%到30%的制造成本,在工业领域中对最终用户而言是一套极具成本效益的解决方案。
嵌入式心得体会11
我们学习的课本是嵌入式系统应用教程。我学习的体会是这样的:
开始时,由于是刚刚入门,对老师说的好多东西很好奇,列如C语言也是新鲜的,不过不太懂什么意思。但是慢慢的,了解深入后让我有了更深的感触和体会。在嵌入式的学习过程中,让我了解了什么是嵌入式系统。它就是以应用为中心,以计算机技术为基础,软硬件可定制,适用于不同应用场合,对功能、可靠性、成本、体积、功耗有严格要求的计算机系统。他一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统、用户应用程序四个部分组成,用于实现对其他设备的控制、监视或管理功能。嵌入式系统已经应用于科学研究、工业控制、军事技术、交通通信、医疗卫生、消费娱乐等领域,人们日常使用的手机、PDA、汽车、智能家电、GPS等均是嵌入式系统的典型代表。
在学习命令的过程中,只要你认真的看着老师操作还有认真听着他讲,你就会发现有些命令的操作还是很简单的,不过在操作的过程中,有时也会遇到困难,有时你按照书上学习的例子,命令输入终端时会出现你不想要的结果,也就是错误的结果。这是问问旁边的同学或是懂得的同学就可以解决了。
在对于这部分的学习中,让我知道了命令对于嵌入式的重要性。它是linux的重要内容,linux中所有的功能都是通过命令执行。在实际应用中,为了减少系统开销,经常不使用图形界面,此时,对系统的所有操作都需要以命令方式来执行。在嵌入式系统开发过程中,由于目标机的性能和配置比较低,因此,一般情况下标机仅具有命令窗口而没有图形界面,对目标机的所有操作都通过命令来实现。还有的那就是进一步学习与嵌入式系统开发相关的linux的服务,他们的启动、设置等的操作和应用。而在学习之中,我们主要介绍的是嵌入式系统中开发工程使用的TFTP、Telent和NFS服务。第一个实现的是上机位与下机位之间文件的传输、无磁盘网络设备的启动等功能;第二个实现的是远程登录功能;第三个实现的是网络文件系统功能。
从以上的内容之中,并不难感受到我们的学习过程是由浅入深的,这对于我们的学习也有了较好的帮助。当然,我们学习的不仅仅是这么几个内容,其中还有相关的实验内容。在我们基础的学习过程之中,我有了这么一点的感受,总的来说就是概念加专业名词还有介绍加实验。不过你绝对不能小看那些概念和介绍,它对我们有着很重要的指导作用哦!实验那就更不用说了,它提高我们的动手能力,在实验的过程中还能让你更加理解书中的理念,这就是我学习嵌入式的感受。
学习是可贵的,培训是精彩的。通过这次可贵而精彩的培训学习,我们向嵌入式迈进了一步。感叹与憧憬之余,我想我们只有靠自己的聪明与才智、努力与勤奋去追求我们的美好生活。
嵌入式心得体会12
嵌入式学习心得体会,4月10号,为期一个阶段的Linux开发基础培训课程圆满结束,回首这些天所留下的点点滴滴,感触深深,学习上知识点的积累,灵活运用的过程中感受到了Linux操作的快速高效性能,这也是我所追求的效率!
当初初涉培训课程的第一门课程时,都说Linux操作很繁琐复杂,心里总有些顾忌,带着种种不安与些许拼博的决心,开始了自我提升阶段的“充电”,由徐海兵老师教授我们基础课程的'培训,我们则像着小学生般认真的记着笔记,仔细听着并学会如何去在实践中运用所学的Linux下的各种强大的命令集。
在Unit 1中,徐老师详细生动的为我们讲述了有关Linux的诞生、初成长以及辉煌的发展至今,今后应用范围则愈来愈广泛,讲解了为Linux这个伟大的OS做出巨大贡献的一位位出色的、伟大的人物,他们那种学习钻研的精神、锲而不舍的信念、勇于把握住难得的机会,从小处着手,踏踏实实的创造出了对人类科技发展做出卓越贡献的Linux(Unix)系统,他们的种种,都值得我们去深刻反省、刻苦学习、传承并永远发展下去。
查看ip地址和重启网络服务是我学的第一个命令:ifconfig eth0、ifconfig eth0 IP地址、service network restart。了解到远程登录软件可用xmanager。secureCRT是我们常用的,安装好后利用其登录到了Red hat Linux,需要知道Linux主机的ip地址。徐老师为我们介绍了重要内容:SHELL,即运行程序的程序,如echo $SHELL可查看SHELL的环境变量是csh还是bash。(学习心得 )指令pwd可查看当前所在路径,passwd:更改Linux下的密码,仅限root用户有此权限,当然我们是利用虚拟机VMware程序来运行Linux OS的,懂得了如何设置虚拟机的网卡设置、暂停、恢复、全屏等。
简单的学习后进入Unit 2,
命令行的句法让我懂得了用法规则,一系列的命令功能强大:date显示当前年月时间星期之类的;more指令与less重要但不常用;cat用于查看短小的文件内容,常用!mkdir命令用于在当前目录下创建新的目录;ls显示当前目录下所有文件;cd更改文件路径,如cd 、cd .当前目录;rmdir删除空文件夹;rm指令很强大,用于删除空目录及非空目录下的指定或全部文件;man真男人,帮助手册;history指令用于显示编写过的命令集,以history序号可显示序号所指命令;echo回写命令,很重要,我需要继续学习;exit指从多重SHELL退出来;Linux账号下,可以增加用户、删除用户、设置密码:useradd、userdel、passwd。
注:所有的用户的家目录都在/home下面,唯独root的家是在/root.点文件都是些SHELL的脚本程序,也称隐藏文件;环境变量常见的有:HOME PATH PWD,懂得了绝对路径与相对路径的对比概念。
最后进入Unit 3、
文件与文件处理的学习中,知道了Linux下支持的六种文件类型:普通文件、目录、设备文件、命名管道、符号链接、socket;Linux下文件系统的组织:倒立的树形结构:/ /bin /boot /dev /home /lib /proc等文件目录,ls –l指令很好很强大,显示文件类型与权限、所有者、字节大小、时间及文件名;touch可创建空文件,复制文件用指令cp,可选-i、-r等;重命名文件使用mv [-i];du显示当前目录所占空间大小;wc命令显示列表中文件的行数、字数、字符数;追加:cat [文件列表] 》目标文件;find指令与grep重要,暂未学习,自己在实践中学习,文件访问权限有:r w x;chmod指令可修改访问权限,如chmod 777 -R文件名。
输入输出重定向每个命令默认打开三个文件:标准输入stdin,标准输出stdout,标准错误stderr,键盘为标准输入,而控制台则是标准输出,文件描述符分别是0,1,2;最重要最常用的为输出重定向>与错误重定向2> ;echo添加的内容>/ 》文件;Linux过滤器和管道:管道操作符:| ;即将某个命令的输出与某个命令的标准输入相连接,从而实现管道功能,例如ls –l |wc;管道和重定向操作符可同时用于一个命令行。
嵌入式心得体会13
这个题目很大,给人一种感觉我好像很成功,其实不然。实际上自己水平不高,甚至很低,但是做过了一些曲折的学习道路,同时把自己真实的学习历程表达出来,希望对后来者有借鉴的意义,甚幸!
工作三年、几成废人!
我XX年毕业于华中地区的一个理工科大学,专业是机械电子,我当时已经签了一家内陆某个省级机关工作,家里八辈是农民,并且很偏远,能够进入这样的地方是祖坟有风水。但在毕业前夕有个进入it的机会,我本想进去的,家里人极力反对,阻力可想而知。同时要交4000元的违约金,对我来说是天文数字。大学里的费用很多是借的,几乎将近一半的费用是在大学勤工俭学挣的,为了省钱,高中一个学期回家一次,大学一年回去一次。并且我个人也有特殊的人生背景(悲景更确切),这里不多说了,写十篇也写不完,同时偏离主题。这样我就参加了工作。一张报纸一杯茶的日子,几乎下班后有种很空虚和恐慌的感觉。在工作中虽然是与自己专业有点关系,但是很少。专业几乎荒废。我自己也思考,如果再不出去,自己将会成废人,只好让国家养了。两年后决定出去,但是几成废人,谁要呢,只好到学校去镀金。这是中国教育和社会的悲哀!
至于专业就改为计算机方面,听说好找工作,我说实话不是很对计算机特别感兴趣,生存第一需要。不要笑我,哈哈!
考研成绩出来,超过了国家线几十分。那个方向要两个,我第三,但是那年非碘,不面试就按分数来排,自然我落选了。其实给我面试机会也不一定要我,哈哈,自己几斤几两很清楚。
最后调剂到另外一个学校,交钱,咬咬牙,交吧!现在仍然债台高筑!
进入学校前夕
为什么要把这段列出,看后就知道了。
单位有网络,经常上网查些英语资料,在那里唯独英语没有丢很多。于是我就在网上查资料,学什么好呢,最后确定学嵌入式把,听说跟硬件相对比较紧密!而我在大学里多少学习了数字电路,单片机等,所以多少也有所利用,不会真的一无所知。当然在这之
前也自学过数据结构,计算机组成原理等。c 语言在大学就学了。哈哈这就是我的家底。
我知道自己的基础差,于是我就拿操作系统,数据库、数据结构、c++来看,机关有这个好处,空余时间多,于是平常就看书,很痛苦,没有人请教。
另外就上网到论坛上去,我就到各个专业的技术论坛,其实是电子论坛和嵌入式论坛。我几乎没有发帖,几乎把几个大型的出名的论坛的帖子翻遍了,虽然有很多重复的,我才知道嵌入式是个什么东东。这些帖子对我以后的学习产生了极大的影响。
最关键两点:
1、嵌入式是什么?
2、嵌入式需要哪些知识?
知道了这两点,好办!我就开始规划学习路线。计算机的基本理论不能丢,于是重点看组成原理,数据机构,操作系统、c++。同时论坛上了解到,实时操作系统ucos是一个很好的嵌入式操作系统,对初学者很好。于是我就买了一本书,但是代码在电脑里调不通,网上也有很多相同的问题,我就看书,分析代码,一遍不行就两遍,三遍,这样才看了入了门,才知道什么是进程。原来看操作系统书时,根本就不知道进程是个什么东西。
在这段时间掌握的东西不多,但是,对我以后的影响很大,我想起了大学时一个同学跟我说过了一句话:大学里最重要的不是学到了什么,最重要的是学会怎么学!大概是这个意思。
进入我的避难所
对我来讲,再次进入大学不再是大学,而是避难所。希望这次进入给我喘气和养精蓄锐的机会和时间。我是这样认为和实践的。
在学校我有三件事:上课,上图书馆,上网。
对于上课,学校开了很多课程,非常好,很多是名人名师讲解,于是很多同学都想学,都去听。我也考虑过,最后放弃。我是这样认为的,时间是有限的,什么都想学,什么都学不成。于是我把我自己学的课进行了分化,一般的课程通过就行,重要的一定好好学。我希望不要什么争论学习课程多和少的问题,这仅仅是我的看法。所以我的成绩应该是很差的。分数低。好在后来的单位没有要我的成绩单,否则就惨了。
我个人感觉是上图书馆的效率比在寝室里高多了,这是我的经验。
嵌入式心得体会14
本人大学学的是电子信息科学与技术专业,其实这个专业和嵌入式没有多大的关系,要说有关系就是简单的讲了下C语言语法,学完之后还不知道什么是C语言,只记住了,char,int,string等占几个字节,if, for, while循环什么的,感觉也就能算一些小学就会的题目,全国计算机等级二级也就糊涂的过了。我这个专业没学过C++,一开始不知道什么是向对象,什么叫面向过程,这可能让大家笑话了。不过这说的是实话,大学的时候比较喜欢动手,喜欢硬件方面的东西,也喜欢看书。在大一的时候就听学长说,单片机很难学,在没事的时候就从图书管借了本关于51的书,一开始还真是不怎么懂,然后硬着头皮去看,当我把51的结构看完了,就不像一开始那样一头雾水了,自己在纸上把51的结构图默画一遍,然后再把各个寄存器功能写一下,各个功能口的结构也画一遍,然后就不觉得51有什么难了。其实有些时候不是这个东西你不会,而是在不会的时候自己先告诉自己这个太难了,自己先放弃了。我们学习51芯片,是为了以后的打基础,知道是怎么通过配置寄存器来实现功能。
大二下学期的时候,我们开了51的课,这个课几乎就没怎么去,因为我认为没有必要去听自己会的东西了。后来听别人说avr的资源会比51的丰富的很多,所以就想试试,看看有什么难的,就从网上买了本马潮老师《AVR单片机嵌入式系统原理与应用实践》,一边看书,一边想自己画一个板了,一开始想实现一个点阵屏,实现滚动效果,后来想想做个板也花不少钱呢,为什么不多加一些功能呢,还能多学到些知识,所以就加了温感,红外,铁电存储器等并把所有的扩展口都扩展了出来,备以后用,那时还挺自豪的呢,同学们都很羡慕,不过现在想想其实也没什么了。
大学也听说过嵌入式这个词,不过不太明白是什么意思,20xx年的时候从网上找到中嵌视频,有四张DVD(大约13G),下载下来后,从头到尾的看了一遍,没什么印象,只记得讲一些不知所云的函数,然后莫名其妙的讲怎么使用那个44b0的开发板,不过听完了,还是有很大收获的,就有一种想装一个linux的冲动,我是大二下学期才有的自己电脑,不过电脑的配置比较低,1g内存,跑虚拟机就像个蜗牛,所以就想着怎么才能装个linux,自己用XP习惯了,如果全换了又舍不得,那时从书上知道linux的文件系统和windows不一样,只有一个根分区,所以也害怕一装linux全盘就被格式化了,不过最后还是欲望战胜了担心,买了张redhat 9的光盘,小心的装这个系统,里边的英文也不是太难,还是知道大概意思的,所以一步步的装,最后装到我的硬盘的最后空间,重新启动,竟可以选择进入哪一个系统了,从这之后,自己就不害怕怎么装系统了,应了那句言,纸上得来终觉浅,绝知此事要躬行。所以我认为,买一个开发板是完全有必要的,拿到实物操作一下就不会感觉太抽象了。后来也想学学arm,但不知道arm是什么东西,所以就买了本《从51到arm》,讲的是关于arm的大体结构,看完后感觉,原来arm就是一个速度更快,接口更丰富的单片机埃如果想做linux设备驱动的同学应该对arm硬件有一些了解。如果对驱动不感兴趣,完全没有必要去看。交叉编译器会帮我们做好这些事情,他比我们更了解arm结构。
大三下学期开始准备考研了,所以自己这些兴趣就先放下了,报的北邮的信通学院通信专业,当时就是想一定要上个好学校好专业,也没想太多,结果考了的成绩差了点,没有被录取,也不想调剂一个二流的学校,然后就参加工作了,工作中每天都用的到开发板,当我看到一个小板上还可以跑系统的时候感觉很不可思议,以为要很大工程。后来边工作边学习,每天都要看电脑看到眼发疼,晚上也都差不多十二点时才睡觉。感觉到累,不过也感觉到自己在进步。
闲话有点多了,说了很多都是自己大学那点破事。
听很多的初学者说不知道从哪里开始,学习嵌入都要学哪些东西,从网上搜了一下,一大堆的东西要学,一下就推荐十几本书,说看完这本书怎么怎么样,看完那本书怎么怎么样,一下子就给初学者给吓住了,其实完全没必要把网上的那些东西全部看一遍,那样又费时,又感觉工程太大,让初学者没有信心去把每一种都看完。网上说的些方面都要知道,不一定全部都掌握,我们可以退成求其次,每一个都知道一些,当然会的越多越好。今天学点这个明天学点那,换着样来也不会觉得烦。而且还能感觉到每天都有收获。
下面给嵌入式初学者一些自己的我个人建议。
1嵌入式涉及到很多的基础知识:
c语言,关于C语言要知道基本的语法,什么是结构体,什么是共用体,有什么区别,不用强记一些二级考的东西,因在实际中用的很少。
c++要知道什么是类,怎么定义,继承,接口,要深刻理解,当然基本语法也是必不可少的。
操作系统原理也应该知道基本的原理的,我记得我大学没这个课还是去电信学院蹭别的专业的课呢,后来学习发现很多的东西都是在这个课上学到的。什么时间片啊,任务调度啊,都是在那里知道的。
Linux基本命令的使用(vi编辑器必须会用,因为在终端改文件的时候只能用这个),我们现在很多的人都习惯用鼠标了,很少用到命令,我们学习嵌入linux可要改改这个习惯了,linux用命令操作一是效率高,二是功能非常强大,远非图形界面能比的了的,其实我们用图形界面的操作都要转化为命令传给硬件的。
Linux文件系统的管理要清楚,哪个目录存放是什么东西,有什么用,文件权限管理等Shell编程也要了解一些,在这给大家推荐一个教程,周朝剑的shell编程,也就七八讲吧,讲的很全面。初学者看前4讲就可以了。
Linux设备驱动的架构要了解,初学者可以以飞凌的OK6410开发板上的led驱动分析一下,结合原理图和linux设备驱动相关书籍把每一行代码都分析明白。关于驱动给大家推荐一本书《LINUX社备驱动程序》中国电力出版社出版的,很经典的,初学者看可能看不太明白,不过要坚持看,最次也得把前6章看完了。
2看书不要希望一次就会,一次就明白是什么意思,也不要死记硬背,看不明白也没关系,以后遇到了知道去哪里去找就可以了,以后遇到的多了,也就记住了,遇到的少的,忘记也就忘记了。还有,不要直接阅读linux内核源代码,看一些自己把头撞破也想不明白的事,会打击初学者的积极性,要循序渐进,今天学个做个led,明天做个串口,后天说不定就做硬件编解码了。
3、你可以不接受培训,但是不能不买开发板。
如果你想学习嵌入式一定要买块学习板,现在的开发板很便宜了,给我们初学者减轻了很多经济负担。看再多的视频,看再多的书,也不如自己动手试一下,看着很简单的东西,做起来就可能遇到很多的问题,遇到问题找到原因,解决问题,只有这样才能学到东西,记得我第一次写led的驱动,想自己试一下,网上也有人写过相关的代码,可是自己一试,就出了好多的问题,那个led弄了我一天才把led灯点亮。所以不要眼高手低。
还有关于培训,现在的培训机构很多,讲的也不错,老师也很好,但是有一个问题,太集中了,而且学生动手的机会也不太多,记得我们公司还招了一个在北京某个培训机构培训半年的员工呢,花了一万多,来了之后也没感觉有多高,问他都学了什么,也就是我前边说的那些基础知识,很多的东西还是不知道的,照着书弄个helloworld模块驱动两天没搞定。不是培训不好,但我个人见解效果并不是很好。记住:只有自己动手做过的东西才是自己的。
现在买一块开发板很便宜,飞凌的OK6410的开发板就不错,源码完全开放,而且资料也很丰富,完全能满足初学者学习用,有人说友善的板子也不错,我个人觉得友善的板子不
错,但是不适合初学者,因为他的很多的东西是不给代码的,用过友善的板子的同学经常有这样的痛苦,想学一个东西,去找他的代码的时候,却找不到,很多友善提供的代码中很多的都是封装好的,只提供给客户一个库,初学者想要找代码的时候就不知道怎么办了。
4不要好高骛远,要脚踏实地
对于初学者,还有一点小建议,我们拿到一个开发板,很兴奋也很激动,想法自然也很多,想用开发板实现自己的这个想法,实现那个想法,然后又不知道从何下手,然后就去论坛中发一个贴,“那个什么什么怎么实现啊,哪位大侠能详细说一下啊,跪求!1然后等着别人去回复。见没人回复就抱怨。有想法是好的,我们要实现自己的想法也是有前提的,首先,我们对这部分知识了解吗?如果不了解就去google一下(最好别用百度,不太好用),了解了一些,也就大概知道要怎么做了。如果再遇到问题,再去发贴问,这样也显得咱们有水平。比如自己连串口是什么都不太清楚呢,就问串口通信怎么做啊,就是人家把代码给咱,咱也不明白是怎么回事埃
5多看代码,多写代码
见多识广,熟能生巧。多看代码,要从代码中读出代码的意思来。自己平时也要多写代码,多练习(这一点我做的不好,写的少)。
写完已经晚上两点了,思路有些乱,有些也是个人的见解,在有些人看来可能是错误的,每个人有每个人的学习方法,但是我们的目的只有一个——希望我们学到更多的知识。
嵌入式心得体会15
现在嵌入式做为计算机发展的一个新的方向越来越得到社会的重视。随之而来的是很多培训班的诞生,但是如何能在琳琅满目的培训机构中找到一个能真正学到东西的培训班呢,这是摆在众多想学嵌入式的人面前的第一个问题。我在了解了众多培训机构并且试听之后,最终选择了Tocore嵌入式培训,之所以选择,是因为我看重老师的实际能力和认真负责的态度。我非常荣幸能够成为Tocore中的一员。
嵌入式开发,做为一个新的计算机发展方向,已经越来越受到社会的重视,社会上的需要也十分巨大,可是真正懂得嵌入式开发的人才缺不是很多,归结去原因主要是一下几个方面:
一:因为它是新兴的一个发展方向,懂得的人自然不多。
二:学习嵌入式需要比较庞杂的知识结构。操作系统、微机原理、C/C++语言、数据结构等。
三:嵌入式学习,上手很困难,不知道从哪里着手去学习。
在刚开始接触的时候,我也是抱着本书,自己摸索,可是越看越迷茫,连很多书里的名词都不知道是什么意思,去网上查也没有得到答案。可是在Tocore我得到了很好的指点,在这里,由于老师都是十分有经验的项目经理,他们懂得如何去学习,从哪里开始入手,这对于我这样的背景知识比较薄弱又接触时间比较短的人来说实在是太有帮助了。
虽然课程还没有完,可是在这段时间的学习中,我按照老师的指导在完善的课程体系下进行系统的学习,已经掌握了U-boot、kernel以及linux移植的基本框架,(我想在今后的学习中一定会对这些知识更加熟悉以至精通!)这对于2个月前什么都不懂的我来说已经是很大的提高了!用得是ARM9的板子,这也是市场上现在比较新的,比较流行的板子,很多公司在实际的产品开发中就用的是ARM9。在课堂上,老师的讲解和我们的练习相结合,理论联系实际。老师除了讲解知识外,还结合了大量的实际案例和操作,这对于我对问题的理解和知识的记忆有很大帮助。
最后谈谈对学习态度的一点看法。嵌入式学习,是比较耗时的,前期需要很多知识做铺垫,有很多人在这个过程中走了不少弯路,于是开始失去耐心、失去信心,以至最终放弃学习。所以我想有必要强调一下问题,在刚开始的时候,自己什么都不懂,可是学习的愿望很强烈,每次上课都希望上完课就能如何如何,可是下来发现自己好像离自己原本的目标还很远,于是心里着急,自己跑到网上搜了很多资料,每天乱看,可是并没有很大的帮助。我想说的是,学习嵌入式一定要有耐心和毅力,不能急躁,按照课程的安排自己多做一些总结和练习,等到知识慢慢的积累下来就会有一种豁然开朗的感觉。
最后希望每个想学习和热爱linux的人都能学有所成!