老弟,看了你的经历,感觉你的水平,相当于一个大四的学生吧,其实你不缺基础的知识了,而是缺经验,你做的东西还很浅,要不断深入,把项目做大,做精。
1,就单片机来说,只要熟悉一种CPU,其他的都容易上手,ARM和其他平台也容易入行。
2,软件设计的核心,不在乎会写几百条指令和几千行C代码,在于一个好的算法,要将一个实际需求转换成工程设计,用程式和逻辑设计去满足产品的功能需求。
有没有想过,程序如何编写才能节约程序执行时间和空间,消耗的内存如何?执行效率如何?程序够简洁吗??结构严谨?
逻辑正确?是否有漏洞和BUGS,程序检测到异常时又改如何处理?设计的电路可靠性和稳定性如何?抗干扰能力?电路出现问题,你该从哪里入手进行检修??
写一个流水灯,也可以用移位的思想,也可以用查表的方法去实现,这两者的优缺点在哪里???如果让你去驱动几千或几万个流水灯,在一瞬间要实现亮度变,颜色也变,红,绿,蓝,三种颜色组合成任意一种颜色,你怎么去做?
给你几百个灯,让你显示几个汉字,你该如何实现?如何实现文字的动画效果?呈现彩色文字。
如何设计一个显示汉字的LED显示屏??? 如何设计个显示图片的LED显示屏?如何让LED显示和LCD上一样的即时播放效果?
这个时候,你得考虑你的CPU的速度和ROM,RAM空间了。更为复杂的驱动电路。
3,很多东西都要靠经验的,比如做温度控制,自然要引入PID控制算法。做LED驱动,自然是恒流源而不是恒压源。如果你刚开始接触这些东西,对很多东西可能是盲目的。做单片机开发,并不要求对单片机有多深入的了解,更重要的是对系统外围特性的了解,单片机只是一种手段而已。
[ 本帖最后由 jxb01033016 于 2010-2-23 11:05 编辑 ] |