分享

学习单片机八大步骤

 昵称29273511 2015-12-01


转http://user.qzone.qq.com/447657890/blog/1443681851:学习单片机八大步骤


学习使用单片机就是理解单片机硬件结构,在汇编或C语言中学会各种功能的初始化设置,以及实现各种功能的程序编制。

第一步:数字I/O的使用

使用按钮输入信号,发光二极管显示输出电平,就可以学习引脚的数字I/O功能,在按下某个按钮后,某发光二极管发亮,这就是数字电路中组合逻辑的功能,虽然很简单,但是可以学习一般的单片机编程思想,例如,必须设置很多寄存器对引脚进行初始化处理,才能使引脚具备有数字输入和输出输出功能。每使用单片机的一个功能,就要对控制该功能的寄存器进行设置,这就是单片机编程的特点,千万不要怕麻烦,所有的单片机都是这样。

第二步:定时器的使用

学会定时器的使用,就可以用单片机实现时序电路,时序电路的功能是强大的,在工业、家用电气设备的控制中有很多应用,例如,可以用单片机实现一个具有一个按钮的楼道灯开关,该开关在按钮按下一次后,灯亮3分钟后自动灭,当按钮连续按下两次后,灯常亮不灭,当按钮按下时间超过2s,则灯灭。数字集成电路可以实现时序电路,可编程逻辑器件(PLD)可以实现时序电路,可编程控制器(PLC)也可以实现时序电路,但是只有单片机实现起来最简单,成本最低。

定时器的使用是非常重要的,逻辑加时间控制是单片机使用的基础。

第三步:中断

单片机的特点是一段程序反复执行,程序中的每个指令的执行都需要一定的执行时间,如果程序没有执行到某指令,则该指令的动作就不会发生,这样就会耽误很多快速发生的事情,例如,按钮按下时的下降沿。要使单片机在程序正常运行过程中,对快速动作做出反应,就必须使用单片机的中断功能,该功能就是在快速动作发生后,单片机中断正常运行的程序,处理快速发生的动作,处理完成后,在返回执行正常的程序。中断功能使用中的困难是需要精确地知道什么时候不允许中断发生(屏蔽中断)、什么时候允许中断发生(开中断),需要设置哪些寄存器才能使某

种中断起作用,中断开始时,程序应该干什么,中断完成后,程序应该干什么等等。

中断学会后,就可以编制更复杂结构的程序,这样的程序可以干着一件事,监视着一件事,一旦监视的事情发生,就中断正在干的事情,处理监视的事情,当然也可以监视多个事情,形象的比喻,中断功能使单片机具有吃着碗里的,看着锅里的功能。

以上三步学会,就相当于降龙十八掌武功,会了三掌了,可以勉强护身。

第四步:与PC机进行RS232通信

单片机都有USART接口,特别是MSP430系列中很多型号,都具有两个USART接口。USART接口不能直接与PC机的RS232接口连接,它们之间的逻辑电平不同,需要使用一个MAX3232芯片进行电平转换。

USART接口的使用是非常重要的,通过该接口,可以使单片机与PC机之间交换信息,虽然RS232通信并不先进,但是对于接口的学习是非常重要的。正确使用USART接口,需要学习通信协议,PC机的RS232接口编程等等知识。试想,单片机实验板上的数据显示在PC机监视器上,而PC机的键盘信号可以在单片机实验板上得到显示,将是多么有意思的事情啊!

第五步:学会A/D转换

MAP430单片机带有多通道12位A/D转换器,通过这些A/D转换器可以使单片机操作模拟量,显示和检测电压、电流等信号。学习时注意模拟地与数字地、参考电压、采样时间,转换速率,转换误差等概念。

使用A/D转换功能的简单的例子是设计一个电压表。

第六步:学会PCI、I2C接口和液晶显示器接口

这些接口的使用可以使单片机更容易连接外部设备,在扩展单片机功能方面非常重要。

第七步:学会比较、捕捉、PWM功能

这些功能可以使单片机能够控制电机,检测转速信号,实现电机调速器等控制起功能。

如果以上七步都学会,就可以设计一般的应用系统,相当于学会十招降龙十八掌,可以出手攻击了。

第八步:学习USB接口、TCP/IP接口、各种工业总线的硬件与软件设计

学习USB接口、TCP/IP接口、各种工业总线的硬件与软件设计是非常重要的,因为这是当前产品开发的发展方向。


1、C开发经验

条件:linux(这都有吧)

方法:随便,主要是掌握ansiC编程(不包括gtk,qt等图形可视化开发)

2、网络、操作系统、体系结构

条件:linux,各种书,算法、例程。

方法:通过C编程实现简单的网络等知识的算法和过程。

3、嵌入式系统概念

条件:各个嵌入式网站,讨论组,书籍

方法:少提问(尤其是等着天上掉馅饼,这主要是防止增长惰性,也解决不了实际问题),多思考。

4、嵌入式开发实践

条件:各种嵌入式系统开发工具的demo版(或者D版,如果有的话),包括编译器,仿真器。可以找高手们要,也可以下载。

方法:这里有两个分支,一个是基于mcu/dsp的嵌入式系统开发,一个是象palmos,wince,ucos等rtos下的应用软件开发。对硬件感兴趣,想成为真正高手的由第一个分支入手,以后进入第二个分支;如果十分厌烦硬件,只想停留在软件开发上的,可以只由第二个分支入手,以后就和pc上的开发没有什么本质上的区别了,找份不错的工作应该没问题,可以不用进行下面的步骤了,感兴趣可以参考第6条。

5、硬件开发

条件:各种嵌入式芯片、存储器等电路器件,protel99等电路设计软件,电路板制作。

方法:这时候该有开发条件了,最起码是51系列,这个比较方便。电路的设计内容较多,不过看起来吓人,实际上比软件要简单的多。只要下功夫,实践会告诉你一切。

6、硬件工程/软件工程/项目管理

条件:各个芯片详细资料和使用经验,软件工程知识,项目管理知识,培训,大型项目参与经验

方法:已经是高手了,但是学无止境,沾沾自喜于已有的知识是致命的。那个下一步。。。,你该是管理者了。

补充几点.

要想成为高手中的高手,最好从钻研如下领域修炼:

1,分析一种RTOS的源代码--UCOS最容易;

2,分析一种通讯协议栈的实现方式--TCP/IP最实用;

3,精通一种DSP的开发集成环境--TI CCS2.1最优秀,精华在其内带的RTOS;

4,精通一种单片机的开发集成环境--keil C最经典;

5,精通一种MCU的开发集成环境--ADS 1.2最流行;

要想成为大师级人物再从如下领域开始修炼:

1,精通一种系统建模语言和工具--Telelogic tau SDL/UML suit最经典;

2,精通一种算法仿真工具--Matlab simulink 最便宜;

要想检验一下自己是否到达了至尊级人物,可以做如下的事:

动手搭建一套红外或者蓝牙通讯原型系统,模拟前端可以用现成的,基带用DSP,主控用个32BMCU,DSP和协议软件自己写。当然不可能做全,做个子集就可以了

C语言编程方法

[ 2006-9-15 11:22:20 | Author: bug ]

1、选择合适的算法和数据结构

应该熟悉算法语言,知道各种算法的优缺点,具体资料请参见相应的参考资料,有很多计算机书籍上都有介绍。将比较慢的顺序查找法用较快的二分查找或乱序查找法代替,插入排序或冒泡排序法用快速排序、合并排序或根排序代替,都可以大大提高程序执行的效率。.选择一种合适的数据结构也很重要,比如你在一堆随机存放的数中使用了大量的插入和删除指令,那使用链表要快得多。数组与指针语句具有十分密切的关系,一般来说,指针比较灵活简洁,而数组则比较直观,容易理解。对于大部分的编译器,使用指针比使用数组生成的代码更短,执行效率更高。但是在Keil中则相反,使用数组比使用的指针生成的代码更短。

2、使用尽量小的数据类型

能够使用字符型(char)定义的变量,就不要使用整型(int)变量来定义;能够使用整型变量定义的变量就不要用长整型(long int),能不使用浮点型(float)变量就不要使用浮点型变量。当然,在定义变量后不要超过变量的作用范围,如果超过变量的范围赋值,C编译器并不报错,但程序运行结果却错了,而且这样的错误很难发现。在ICCAVR中,可以在Options中设定使用printf参数,尽量使用基本型参数(%c、%d、%x、%X、%u和%s格式说明符),少用长整型参数(%ld、%lu、%lx和%lX格式说明符),至于浮点型的参数(%f)则尽量不要使用,其它C编译器也一样。在其它条件不变的情况下,使用%f参数,会使生成的代码的数量增加很多,执行速度降低。

3、使用自加、自减指令

通常使用自加、自减指令和复合赋值表达式(如a-=1及a+=1等)都能够生成高质量的程序代码,编译器通常都能够生成inc和dec之类的指令,而使用a=a+1或a=a-1之类的指令,有很多C编译器都会生成二到三个字节的指令。在AVR单片适用的ICCAVR、GCCAVR、IAR等C编译器以上几种书写方式生成的代码是一样的,也能够生成高质量的inc和dec之类的的代码。

4、减少运算的强度

可以使用运算量小但功能相同的表达式替换原来复杂的的表达式。如下:

(1)、求余运算。

a=a%8;

可以改为:

a=a&7;

说明:位操作只需一个指令周期即可完成,而大部分的C编译器的“%”运算均是调用子程序来完成,代码长、执行速度慢。通常,只要求是求2n方的余数,均可使用位操作的方法来代替。

(2)、平方运算

a=pow(a,2.0);

可以改为:

a=a*a;

说明:在有内置硬件乘法器的单片机中(如51系列),乘法运算比求平方运算快得多,因为浮点数的求平方是通过调用子程序来实现的,在自带硬件乘法器的AVR单片机中,如ATMega163中,乘法运算只需2个时钟周期就可以完成。既使是在没有内置硬件乘法器的AVR单片机中,乘法运算的子程序比平方运算的子程序代码短,执行速度快。

如果是求3次方,如:

a=pow(a,3.0);

更改为:

a=a*a*a;

则效率的改善更明显。

(3)、用移位实现乘除法运算

a=a*4;

b=b/4;

可以改为:

a=a<<2;

b=b>>2;

说明:通常如果需要乘以或除以2n,都可以用移位的方法代替。在ICCAVR中,如果乘以2n,都可以生成左移的代码,而乘以其它的整数或除以任何数,均调用乘除法子程序。用移位的方法得到代码比调用乘除法子程序生成的代码效率高。实际上,只要是乘以或除以一个整数,均可以用移位的方法得到结果,如:

a=a*9

可以改为:

a=(a<<3)+a

5、循环

(1)、循环语

对于一些不需要循环变量参加运算的任务可以把它们放到循环外面,这里的任务包括表达式、函数的调用、指针运算、数组访问等,应该将没有必要执行多次的操作全部集合在一起,放到一个init的初始化程序中进行。

(2)、延时函数:

通常使用的延时函数均采用自加的形式:

void delay (void)

{

unsigned int i;

for (i=0;i<1000;i++)

;

}

将其改为自减延时函数:

void delay (void)

{

unsigned int i;

for (i=1000;i>0;i--)

;

}

两个函数的延时效果相似,但几乎所有的C编译对后一种函数生成的代码均比前一种代码少1~3个字节,因为几乎所有的MCU均有为0转移的指令,采用后一种方式能够生成这类指令。在使用while循环时也一样,使用自减指令控制循环会比使用自加指令控制循环生成的代码更少1~3个字母。但是在循环中有通过循环变量“i”读写数组的指令时,使用预减循环时有可能使数组超界,要引起注意。

(3)while循环和do…while循环

用while循环时有以下两种循环形式:

unsigned int i;

i=0;

while (i<1000)

{

i++;

//用户程序

}

或:

unsigned int i;

i=1000;

do

i--;

//用户程序

while (i>0);

在这两种循环中,使用do…while循环编译后生成的代码的长度短于while循环。

6、查表

在程序中一般不进行非常复杂的运算,如浮点数的乘除及开方等,以及一些复杂的数学模型的插补运算,对这些即消耗时间又消费资源的运算,应尽量使用查表的方式,并且将数据表置于程序存储区。如果直接生成所需的表比较困难,也尽量在启了,减少了程序执行过程中重复计算的工作量。

7、其它

比如使用在线汇编及将字符串和一些常量保存在程序存储器中,均有利于优化



一般我们现在用的比较多的是MCS-51的单片机,它的资料比较多,用的人也很多,市场也很大。就我个人的体会怎么样才能更快的学会单片机这门课。单片机这门课是一项非常重视动手实践的科目,不能总是看书,但是学习它首先必须得看书,因为从书中你需要大概了解一下,单片机的各个功能寄存器,而说明白点,我们使用单片机就是用软件去控制单片机的各个功能寄存器,再说明白点,就是控制单片机那些管脚的电平什么时候输出高,什么时候输出低。由这些高低电平的变化来控制你的系统板,实现我们需要的各个功能。至于看书,只需大概了解单片机各管脚都是干什么的?能实现什么样的功能?第一次,第二次你可能看不明白,但这不要紧,因为还缺少实际的感观认识。所以我总是说,学单片机看书看两三天的就够了,看小说你一天能看五六本,看单片机你两三天看两三遍就够了,可以不用仔细的看。大概了解一下书上的内容,然后实践,这是非常关键的,如果说学单片机你不实践那是不可能学会的,关于实践有两种方法你可以选择,一种方法:你自己花钱买一块单片机的学习板,不要求功能太全的,对于初学者来说你买功能非常多的那种板子,上面有很多东西你这辈子都用不着,我建议有流水灯、数码管、独立键盘、矩阵键盘、AD或DA(原理一样)、液晶、蜂鸣器,这就差不多了。如果上面我提到的这些,你能熟练应用,那可以说对于单片机方面的硬件你已经入门了,剩下的就是自己练习设计电路,不断的积累经验。只要过了第一关,后面的路就好走多了,万事开头难,大家可能都听过。方法二:你身边如果有单片机方面的高手,向他求助,让他帮你搭个简单的最小系统板。对于高手来说,做个单片机的最小系统板只需要一分钟的时间,而对于初学者可就难多了,因为只有对硬件了解了,才能熟练运用。而如果你身边没有这样的高手,又找不到可以帮助你的人,那我劝你最好是自己买上一块,毕竟自己有一块要方便的多,以后做单片机类的小实验时都能用得上,还省事。

有了单片机学习板之后你就要多练习,最好是自己有台电脑,一天少看电影,少打游戏,把学习板和电脑连好,打开调试软件坐在电脑前,先学会怎么用调试软件,然后从最简单的流水灯实验做起,等你能让那八个流水灯按照你的意愿随意流动时你已经入门了,你会发现单片机是多么迷人的东西啊,太好玩了,这不是在学习知识,而是在玩,当你编写的程序按你的意愿实现时你比做什么事都开心,你会上瘾的,真的。做电子类的人真的会上瘾。然后让数码管亮起来,这两项会了后,你已经不能自拔了,你已经开始考虑你这辈子要走哪一行了。就是要这样练习,在写程序的时候你肯定会遇到很多问题,而这时你再去翻书找,或是问别人,当得到解答后你会记住一辈子的,知识必须用于现实生活中,解决实际问题,这样才能发挥它的作用,你自己好好想想,上了这么多年大学,天天上课,你在课堂上学到了什么?是不是为了期末考试而忙碌呢?考完得了90分,哈哈哈好高兴啊,下学期开学回来忘的一干二净,是不是?你学到什么了?但是我告诉你单片机一旦学会,永远不会忘了。另外我再说说用汇编和C语言编程的问题。很多同学大一二就开设了C语言的课,我也上过,我知道那时天天就是几乘几,几加几啊,求个阶乘啊。学完了有什么用?让你用C语言编单片机的程序你是不是就傻了?书上的东西我们必须要会运用。单片机编程用C语言或汇编语言都可以,但是我建议用C语言比较好,如果原来有C语言的基础那学起来会更好,如果没有,也可以边学单片机边学C语言,C语言也挺简单,只是一门工具而已,我劝你最好学会,将来肯定用得着,要不你以后也得学,你一点汇编都不会根本无所谓,但你一点C语言都不会那你将来会吃苦头。汇编写程序代码效率高,但相对难度较大,而且很罗嗦,尤其是遇到算法方面的问题时,根本是麻烦的不得了,现在单片机的主频在不断的提高,我们完全不需要那么高效率的代码,因为有高频率的时钟,单片机的ROM也在不断的提高,足够装得下你用C语言写的任何代码,C语言的资料又多又好找,将来可移植性非常好,只需要变一个IO口写个温度传感器的程序在哪里都能用,所以我劝大家用C语言。

总结上面,只要你有信心,做事能坚持到底,有不成功不放弃的强烈意志,那学个单片机来说就是件非常容易的事。



学习并不是一件容易的事,有时要经过不断地琢磨、探讨、钻研,才能弄懂一个问题。这就要靠坚持不懈的决心。有疑难时,可以将问题搁置一下,但决不能碰到困难就放弃不干。失败乃成功之母。在失败中也有重要的经验可汲取。成功贵在坚持。贵在坚持不懈的信心和毅力,要有屡败屡战的韧性。

有人说:“所谓英雄,并不比普通人更有运气,只是比普通人更具有延续最后5分钟的勇气”。这句话说得很有道理,也就是坚持到最后才能看见胜利。

现在,社会进步了,知识普及了,学习电子技术就更加有条件了。有一位学习电子技术的技校学生,刚到企业时对电子电路很感兴趣,学习进步也较快,后来,渐渐地兴趣索然了。为什么呢?用他的话说:看见这一大块线路板就头晕。这就是在工作中遭遇困唯时,产生畏难情绪了。不进则退,这是学习的大忌。而另一位大专生,喜欢抢着参加电路装配和电路实验,对一些实验的电路,他主动帮着焊接、测试数据,并对于不了解的电路原理,能够勤问、勤学习。因此,他进步很快,不到两年,就掌握了许多自动控制方面的技术。

我认为学习电子制作要注意几点:

1.根据实际情况扎实地学习好电子电路的基础知识。比如:模拟电路方面的运放电路使用知识;常用电路基础知识(如三极管的常用电路知识等);常用模拟电路的使用知识(如555时基电路);数字电路方面的ttl电路使用常识;coms电路使用常识等。这些电路并不能在几个月内就会很好地掌握,而是需要掌握先用先学,急用先学,常用先学的原则。并要坚持系统地学习。

2.要勤动手。要对感兴趣的电路进行实验制作。学习电子电路的特点是:只有动手制作才能真正学会电子技术。如果单纯理论学习,不动手实践,就是学习一辈子也只能“纸上谈兵”,不会得到真才实学。因为,只有在实践制作中才会碰到各式各样的问题,而解决问题的能力,便是电子技术的精髓所在。一张设计得再好的线路图,如果没有进行实际制作和实验,就无法知道电路的性能优劣。因此,勤学苦练是学习电子制作的至关重要。

3.要注意学习的方法和实践的难易程度。学习应该先易后难,步步深入,不能妄想一口吃成个大胖子。要多读电子书刊。肯于为购买图书投点资。另外,要尽量扩展知识面,以获举一反三的借鉴之功。实践时要根据自己的条件来决定,不要做自己根本不能完成的事情。只有力所能及才能不至于影响到自己进一步学习的兴趣。其实,再复杂的电路也是由一个个小电路组成的。我们只要掌握了常用电路的特性,就能灵活地组成各种复杂的电路。

4.要培养自己的浓烈兴趣爱好习惯。兴趣爱好是学习电子技术的动力。有兴趣爱好的人学习电子技术再累也不会觉得累。他会自觉自愿地放弃休息而废寝忘食地进行学习和实验。电子制作对于爱好者来说是一种“娱乐”,是一种“享受”。

5.当掌握了一定的电子技术后,就要努力制作一些对社会,对单位有贡献的电子产品,那怕是改进同类产品也好。开发产品之余,应主动去解决一些生产现场的实际问题,以获得更好学习的支持,为自己的进一步学习和锻炼打下基础。我曾接触过许多刚踏上工作岗位的中专生、大学生,高中生等。一些学习过电子电路、自动化控制的大学生,满怀信心地走上工作岗位,想用自己的知识为企业大干一场。可是,走到企业看到一大堆电子线路板就懵了。这些复杂的电子电路,在书本上没有讲过,有许多元件不认识。这是由于我们的教育脱离实践的一方面表现。教材往往比企业的实用电子技术要晚上几年。因此,即使是学电子的大学生,走上工作岗位后,还是要坚持不懈地进行学习,才能掌握好实用的电子技术。如果在读书时就热爱电子制作,实际接触电子制作,这对将来走上工作岗位后的开展工作会有很大的帮助。这些道理要等到走上工作岗位后才能明白。学习电子制作,文化程度不一定是根本条件,即便是初中以上的文化程度,也能够掌握一定的电子制作技术。关键是你对电子制作技术兴趣的浓烈程度如何。实践证明,有浓烈兴趣的电子爱好者,经过十几年的刻苦勤劳的学习,其掌握电子技术的水平会大大提高,总是会引人注目地成为电子技术上的能手。真正喜爱电子制作的爱好者,大多有坚持不懈的精神。电子技术就是在不断的学习和实验中得到了提高。学习电子技术并不是短期行为,而是要持之以恒,矢志不渝地学习一生的技术。电子技术不断推陈出新的趋势,就是我们电子爱好者不断学习新技术的动力。


本人做过技术开发工作多年,从焊电路板的小工程师逐渐做到项目经理、研发经理,现在做到总工程师,作为工程师有亲身的感受,作为研发主管,对工程师的性格、心理和知识结构有非常深入的了解,现在把自己的一点感悟与大家分享,希望大家批评指正,欢迎补充完善。

有强烈的好奇心。这是成为高手的必要条件,喜欢新生事物,对问题喜欢刨根问底,以钻研为乐趣。那种得过且过,敷衍了事,仅仅把工作当作饭碗的人连熟手都成不了,更何况高手。有好奇心的人,可以为解决一个问题通宵干,躺在床上也在寻思解决方案,这样的人就是高手的胚子!

做事谨慎细致,考虑问题全面。技术工作来不得半点粗心马虎,否则问题多多,后患无穷。甚至给生产、产品品质造成重大影响,给公司造成重大经济损失。马虎的人不可能成为优秀的工程师,只可能当当助手,哪个上司敢把项目交给一个马大哈?改,难呐,本性难移!趁早找个理由炒他鱿鱼!

模拟、数字,高频、低频,软件、硬件,模具、结构,甚至文字功底也必不可少(撰写产品使用手册、工艺指导书等等也可看出一个人的专业水准)具备完善的知识体系。企业中的工程师不是研究学问,也没指望成为科学家,是为企业的产品服务的。因此,全面的知识架构对于迅速完成产品开发任务非常重要,复合型人才更为难得。既然是高手,当然十八般兵器样样精通,否则,难以独挑大梁,只能做配角。没有全面的知识,要上升到项目经理、研发经理层面是不可能的。企业中的工程师必须时刻关注成本、生产工艺、用户需求、测试环境、采购渠道、配套厂家工艺水平等等许多方面,一点不慎后续问题就冒出来了。你的设计再好,工艺性差,车间生产装配调试困难,导致生产成本急剧上升,或者配套厂家工艺水平达不到又有什么用?或者器件采购困难,经常影响按期交货也同样对企业不利。时刻提醒自己,产品是赚钱的工具,自己才能的张扬要服从这一大前提。这里要特别提醒那些学历高,某方面技术精深,但对企业运作、生产工艺、生产流程、物流管理、行销模式、市场调查、用户心理是“二把刀”的人,不要自恃一点dsp皮毛就以为可以天下无敌,谦虚地深入基层,熟悉一切,虚心学习其他方面的知识,才有大为!

思路开阔,能从市场、用户和生产工艺角度考虑产品开发。唯技术至上的人,思路狭隘,即使聪明过人,只能扮演一个处理具体问题的小角色。企业的唯一目标是赚钱,能赚钱就是好产品,不能赚钱就等于零。这就能解释为什么很多研究所、大学开发的产品填补了多少多少空白,但在产业化过程中却总赚不到钱,最后落满灰尘。企业的工程师,务必坚持市场第一,用户至上的开发思路,你的工作仅仅是开发出低成本的、工艺性好的、品质稳定的,最关键是满足目标用户需求的产品,不能凭想象发挥,自以为是,要知道,用户永远是对的,你不能让他们服从你的思路,你每天窝在实验室,对市场又了解多少?,对消费心理又知道多少,别自以为聪明,道听途说几句话就轻易下结论!

现实、灵活的开发思路是高手的重要特征。企业的产品开发是和市场紧密联系在一起的,不是国家拨款的基础理论研究。树立市场化的研发策略是高手必备的素质!不要指望你能搞出超英赶美的世界级产品,你现在的实验条件、项目管理水平、人员素质、资金投入、信息交流等等和人家相比差了十万八千里,你凭什么搞出世界级的东西?家电巨头投下数亿元开发手机,高手云集,十余年了,手机的核心技术还是人家的。你做过的电路、编写过的程序千万人做过,你只不过东拼西凑地组合出了一个东西而已,必须要清醒地、谦虚地认识到这一层面。因此,在开发过程中,不要一切都自己开发、研究,大胆地借鉴国外的东西,绝大多数产品人家早已经普及,不妨照搬其中的功能模块,再结合自己实际情况,去搞开发才是高明的做法。再者别人的产品经过现场用户的使用,许多隐患已经消除,水平再高的人做的新产品也会从用户哪里反馈回来一些缺陷,直接模仿别人的产品,即可消除许多缺陷点。同时,可以大大缩短研发周期,减少研发费用,抢先一步推向市场,绝对是上策。当然,受到专利保护的技术要注意,仔细看看相关法律,在法律允许范围内从事,体会一下总还是有办法的!

这里要一再强调,我所指的是“企业里受欢迎的高手!”不是科学院里的专家,不是陈景润!这是截然不同的概念。企业里的高手,不仅仅要了解技术、工艺以及生产方面的知识,团队意识,管理才能,协调沟通能力,系统规划能力,甚至语言表达能力都是很重要的,这些是高手的综合素质的体现。

特别对毕业2-4年的年轻工程师提个醒,要清楚认识自己,知道自己的斤两,不要以为做过2-3个项目就飘飘然,人家也是那样过来的!其实还差得远!等到了二十七、八岁,你会逐渐明白的。学海无涯,除过极个别特殊天才人物,大家都是普通人,互有长短,谦虚谨慎,心态平和是成就大事的基础,总那么浮躁,狂妄,藐视他人,将导致团队合作困难,同事关系紧张,项目的进展必然不顺利,从而延长成为高手的时间,单纯从技术来看,不过在某个狭小领域有小小心得而已,距离经验丰富、技能全面的高手还有八年抗战的历程。一般来讲,毕业5-6年,技术初步达到全面成熟(那些得过且过的人,二十年也成熟不了,现在几十岁来应聘的人也不少,水平还是马马乎乎),再逐渐吸收管理知识、市场知识等其他企业里所涉及的方面的技能,30岁左右基本圆满已经非常不简单了!时刻要有谦和的心态,是在团队中脱颖而出的必须条件。




    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多