北京招聘程序员(有硬件基础) ( 积分: 100 )

  • 主题发起人 主题发起人 TK128
  • 开始时间 开始时间
我需要熟悉硬件,精通软件的人,行业就是这样的特点,没有办法,红军你偏向于MIS系统
和我们这个行业很不一样
我爱Pascal:
如果你有换环境的计划,给我一个EMAIL,另工资不可能是0.8K
 
熟悉硬件精通软件。。。。。。。。。。
向往中///////////////////////////////////
 
我只能实现上位机软件,看来不行:(
 
能实现上位机软件也行,你有硬件基础吗? 所谓硬件基础不是需要你能够画PCB,也不是需要对比如电磁兼容,电源模块,等这些东西熟悉,所需要的只是逻辑,也就是CPU出来的信号经过什么样的器件,中间有什么逻辑,才能得到所需要的结果。
硬件基础就是知道:CPU是如何工作的,中断是怎么产生的,为什么要上升沿或下降沿中断
为什么要电平中断,市场的常用器件是干什么的,一个电路基本由哪几部分构成,每部分有
什么特点等。
精通软件其实是处于这样一种状态:
对大部分的软件算法都比较了解(也就是数据结构上的算法),知道一个软件是怎么构成的
对自己有种信心,也有这种能力,无论什么样的软件,只要时间允许就能够编出来。
所谓的经验就是,在这些能力和信心的基础上(首先要有信心和能力),能够更快的解决问题,解决了问题后促进信心和能力的提高
如果有以上的这些基础知识,现在可能拿不到那么高的工资,但只要有潜力,很快就可以达到
 
不是要换环境,是没环境,要求低是不懂硬件,只会些DELPHI
汇编知道些概念,中断,总线,IO等,以前看个一本《学装微电脑》讲的是6502CPU
 
6520 是个好 CPU,而且有一批兼容的CPU。
这些概念去分析一个 FC 模拟器刚好了。
 
我爱PASCAL:
我的QQ是25644550,联系一下,给我一个机会,也给自己一个机会
 
《学装微电脑》真是末好书,讲了电阻实现的门电路,又讲由门电路实现存贮器,时钟,高低电平,6502,使我懂了微机的基本原理。
 
嘿嘿,当时俺买了一套《学装微电脑》的散件,自己焊接了6502的单板机,可以当一个EEPROM的烧录器玩,输入程序才叫累哟,没有ASM助记符,边查汇编指令手册边输入,现在这个单板机也送人了——对硬件感兴趣的一个朋友。
TK128 招全才?这些每一个领域深入下去都是无底洞。如果要招单板机开发,上DSP之类硬件论坛找合适点。
而对于软件这一块,重要的是软件工程管理,以及模块化思想,如果没有模块化,每一次都要重新开发,没有代码积累沉淀,我看够呛,天天吐血亡命也不够累。分工合作流水线作业效率才高嘛。对于上位机的程序员了解下类似于ModBus之类的通讯协议就足矣。
 
BaiCi:
你认为这样的人是全才吗, 达到这些条件就算高手吗?
这些条件都只是入门级的,因为有了这些条件并不意味着就已经设计出好的产品了,
只是有设计好产品的基础了, 高手就是跨过这条线,并且也设计出好产品,才能
称得上高手,因为从有这些基础,到能设计出一个好的产品还有很多路要走,已经不是
纯技术的问题了。
你所说的只是在纯软件领域适用,在软硬结合的领域只懂Modbus是远远不够的
 
不知道你们到底是设计什么产品,我想应该不会是设计CPU芯片一级的。
我朋友一家公司是搞工控自动化项目,他做项目管理,一般是一个PM + 若干上位机开发人员 + 单片机开发人员 +文档编制 + 测试,构成,据他说,他不管硬件,只负责调研分析和进度管理,具体工作根据需要分配给不同的人员完成。不过只要不是特别的项目,一般来说,调研完毕,上位机+单片机开发1、2周就OK.
当然如果你们是在为不同的CPU设计开发手机操作系统的,那就的确需要掌握一定程度的硬件知识,不过这里也要分了,搞操作系统核心的开发人员只要熟悉CPU指令(处理指令,IO指令),搞通讯模块的就要熟悉GSM,CDMA之类的硬件知识。也不是一人就全部搞定得了的,人的精力毕竟有限,专一门的人,绝对胜过同时专许多的人。
 
看了楼主及各位的发言,让我增加了一个新的发展方向, 我工作两年了,一直在做MIS,没有接触过这个领域的开发工作。我想和楼主交个朋友,以后想学习学习您现在所从事行业的开发技能,请多多赐教!
 
楼主的话太夸张了
谁说硬件的东西比软件好做阿?
说句不客气的话 一样的板子 不一样的人做 结果就是不一样
有的板子稳定可靠 有的运行特定的程序肯定会死机
这怎么能一样呢?
你所谓的高手必须要还要精通硬件才行
会CPU 选型 外围器件选型 PCB设计 等等
很熟悉它们的引脚及电气和逻辑性能
了解了硬件基础 不等于能用好它们
还要懂市场 会拉关系 谈客户
只懂软件能做得出好的产品吗?
楼主看得出是个高手
不过话还是有点偏颇了...
白河愁, 你说你可以写出一个模拟CPU的软件?
想请教一下原理何在?
如果不参考SKYEYE等开源软件的情况下
你是怎么考虑的?
看样子你也是个高手 呵呵
正好请教一下
 
软件模拟 CPU 太容易了,
首先就是模拟该CPU 所有指令集,
再模拟寄存器和标志位,还有MemoryMAP, 那就基本完成了.
然后把要运行的 BIN 读到内存,一条条指令解释执行就行了。
之前还给别人写了篇毕业论文是关于虚拟机应用于加密上面的研究,
结果那个教授说一定要参考国外别人的什么研究成果,自己原创不算.
翻了半天没找到国外有什么教授研究这方面的。
 
白合愁: 你说的这个方式工作量很大,而且难度也很大,虽然思路很简单
模拟一个CPU不是那么容易的,如果是精简指令集还好,复杂指令集那么就
更麻烦了
不能没有你:
你说的有道理,不一样的人做同样的板子,可能有不一样的结果,这是很自然的
事,但一般嵌入式无非几部分构成: CPU, RAM, ROM,和外围电路,在RAM,ROM,CPU
这部分基本都有数据手册,非常不容易出错,外围电路就复杂一些,有些时候自己的
外围电路要根据自己的特点设计,这就需要经验,比如:485就有很多的设计方式
最可靠的是采用光电隔离的,但在低成本的应用中这种方式太贵,那么就用肖基特
二极管代替,这两种方案的选择,是看产品的应用环境决定的,一个目的可以有不
同的实现方法,这就是经验体现的地方。
而且在产品设计过程中不是不允许犯错误,我们画废的板子很多,但最后出产品就可以弥补
前面的损失了。
技术型的公司,如果没有好的产品,那更不必谈市场了
 
不能没有你:
软件比硬件重要是在我这个行业里,设计嵌入式开发,只有做开发板的(在没有任何参照的情况下)的硬件设计要求要高一些,其他的应用都是买一块开发板,然后看开发板的RAM,ROM接法及串口,网络,USB,CF卡等的接口,照抄,在自己的应用中裁减相关部分
然后画出一块板子,可以这样说: 很多东西都是现成的,只要按照数据手册设计,该上拉的地方上拉,该加电容的地方加电容,就可以了。
但嵌入式软件就不一样了,因为软件是一个积累的过程,不同的应用有不同的设计方式
现在的软件源程序动不动就是几百K,几兆,据分析一个软件人员最适合管理5000行左右的
程序(注意:5000行是完全不同的程序,不是那种相似性很高的模块),一个人的精力始终有限,要掌握这些知识比硬件设计更加的困难,要用好这些知识那就更困难了,所以我认为
在嵌入式系统中,软件比硬件重要得多
 
其实不算太难,以Z80为例,在有全套资料的情况下,2日内可以写出来跑代码了.
 
怎么可能,Z80好像有一百多条指令,每条指令还有好多变种,光看资料都需要一个礼拜了
更不要说编一个程序了,每条指令都需要PC的多条指令甚至一个函数才能相对应,这么多函数2天内怎么可能搞得定,再加上外部中断等的实现,整个程序要编多少? 我估计这样一个
CPU模拟器没有6-8000行程序不可能实现,一天就编3-4000行程序? 那就成了超脑了
 
楼主
我也同意你的看法
软件的确比硬件复杂
尤其现在用户的要求越来越高
我现在正在研究ARM 有些心得了
可惜你的公司不在上海
不然 我宁可降工资 也去试试
 

Similar threads

后退
顶部