OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5489|回复: 49

算是给新人的建议吧

[复制链接]

1

主题

43

帖子

0

精华

初级会员

Rank: 2

积分
152
金钱
152
注册时间
2015-10-8
在线时间
32 小时
发表于 2016-10-21 00:34:21 | 显示全部楼层 |阅读模式
从来都是潜水, 不怎么发帖子. 今天突然来兴趣,  想到什么 就写什么, 算是给新人一点建议吧.
作为已经编程差不多十来年的老码农.  从51到各种各样的单片机, 然后是arm7 arm9 到dsp,  随着 M3的流行,  现在做项目 基本都用这芯片了.

我一直觉得,  用什么芯片 仅仅是工具而已.  根本就不需要学.  或者说,  压根就不需要  花大精力去学.     STM32的芯片的 外设  时钟 等等,这些 做过一个项目 就会了.  或者 用到的时候,再去看 芯片说明书就行了.   

这里很多 都是 学生, 看论坛,   提的问题, 都是 一些  很基础的芯片使用问题,  当然 从论坛角度,  是该去问 去交流, 但是 我认为, 从学习角度,   太基础的东西,不要来问.  有问题,  看书去.自己去解决.  如果 这么 基础的问题
都不会, 说明你的基础很成问题.

前几年,也作为 面试官,面试过 不少 应届的毕业生.  一看简历,  会用什么什么芯片之类,作为什么什么项目,  其实  我压根不看简历.    会什么芯片,这种东西,  1个芯片,  基础好的人,   1个礼拜 半个月就会了.


我说的很乱.  想说什么呢,   其实我想表达,  作为学生, 先把 基础学好.   尤其我们这个专业的.   什么是基础,   那就是C语言, 和 模拟电路 数字电路.     磨刀不误砍柴工,  你基础没问题, 会对你的学习新东西 和工作 带来很大的便捷和效率.

面试的时候,  我会要求给 对方提这样的问题.   SPI 4线协议,  任一种方式,  我要发送 0x55的数据  .   请画出 4线的时序图, 并解释.  或者 提问  C语言中的 各个符号的 优先级排列.  又或者  变量的几大属性分别是什么 并举例解释说明  等等

所有 所有这些基础的问题,  书上 全部有.   全部是作为基础的细节问题.      

C语言 博大精深, 看一本够了?  远远不够,  几本名著 都是要看的. 学了C语言, 只是相当于给你做菜的原料而已,  至于菜好吃不好吃, 又是另外一回事了 .   编程原理,软件构架,面向对象,还有 细化点的, 对于你自己编写的程度, 那一段的代码 带宽高,哪一段带宽低,又或者怎么写占用MCU的计算资源多,怎么写,可以占用少点,  自己写的代码功能性没问题,但是 稳定性呢还有性能呢 等等, 这些也需要学习进化.   


写50K的只能自己看懂的乱七八糟的代码,  还不如  去看人家 大牛的编写的10K的代码.   看人家 实现功能,是如何构架的,如果处理的 等等.

会STM32F103 算什么?  工作的时候,  用什么芯片不是你决定的,  换芯片怎么办?  换飞思尔卡  英飞凌  呢?  
工作的时候,  一个通信不行, 这个时候, 只能自己去用示波器 自己去看引脚的时序图,   这些 都是基础,  在工作中,  老是问别人 基础的东西, 别人会烦 也不会教你,   实习期 老是问这样的问题,   用人单位 会 怀疑你的能力.  相比较 你会很多芯片,但是基础马马虎虎,  我宁可寻找 基础牛逼, 但是 芯片只会一种的人. 哪怕只是会 51单片机.


连一个 简单的数据冒泡排序写法, 都还要 百度的人,  简直基础 一塌糊涂.
连一个 C语言文件,编译的时候,相互之间调用关系都搞不清楚的人,  简直基础一塌糊涂.
连一个简单的PWM转模拟输入 或者转 模拟输出电路 都看不懂的人,  简直 基础一塌糊涂.
.....

我曾经面试过一个应届生,话说 做过 什么什么小车 什么什么听起来很牛逼的项目的人,   结果 我给了一个 电路图,  就问他,  A引脚输出  高电平  还是低电平 ,  电路的那端  输出有效了.      其实 就是一些NPN 和PNP 三极管 之类的电路图而已.

还有 给你一个电路.   运放电路,  让你计算  采样端和 芯片引脚之间,  电压放大还是缩小了,  放大几倍或者 缩小了多少,   那人 直接懵逼.  不知道.   

你说,如果你是面试官,  这样的基础的人,  你会采用么?

论坛很多的帖子, 答案都在 书上,  又或者 都在芯片说明书上, 自己为什么不去找呢,   学这个专业的, 尤其不能浮躁,  书一页一页看, 仔细的看, 急不得.

学弟学妹们,一句话,  基础很重要!!!!!

别太沉迷于学习芯片, 芯片是最不重要的.   

C语言不过关, 连看 STM32F1的 官方库, 都会卡主.  不知道人家 的库是 怎么构建的.
C语言不过关,连编译出现的各种 警告 都会看不懂, 也不知道  怎么去解决
C语言不过关,看大一点的程序, 都搞不清楚 程序的流程了..
看起来,好像 都是 你学习STM32F1过程中 出现的问题,   其实这锅 不应该STM32F1来背, 是你的基础 太马马虎虎了...
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

头像被屏蔽

2

主题

164

帖子

1

精华

禁止访问

积分
1316
金钱
1316
注册时间
2012-5-13
在线时间
127 小时
发表于 2016-10-21 08:32:00 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 4 反对 0

使用道具 举报

44

主题

298

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
209
金钱
209
注册时间
2016-9-9
在线时间
84 小时
发表于 2016-10-21 09:56:22 | 显示全部楼层
本帖最后由 dreamARM 于 2016-10-21 10:20 编辑

鄙人不才,因为工作需要,从学习到应用整过51 AVR PIC LPC2148 到去年做的ARM92440硬件层,驱动层及当时所做的QT界面.这些吧。 用十分钟时间打字,也想和您讨教些心得,其实我是特别不同意你的观点:

1:其实先期这就是因为卖学习板既而设立的群,跟郭天祥的群论坛是一个道理,这里也就是学生学习的地方,像一本活的教科书。跟21IC初衷还是有区别的。


2:你让人家写出SPI的时序图,我就呵呵了,我要面试你,你是十年的大牛了,现在让你写出一个TIP/IP协议的发送时序图,你写用一张纸画清并表述明白吗?
还有,问你最简单的,51单片机的几个中断函数优先级是怎么设定的,你能记得住吗?但我因为这两个问题回答的不好,给你打0分,你出门后会不会说我呢?


3:C语言基础不好来问结构体或指针的活用,都是没有问题的,因为当初就算好好学过C语言,会输出“小星星”或“金字塔”,也未必会对应硬件处理问题,就像当初我学傅里叶变换,考试自己答的80多分,但我工作好久时候都不知道FFT,能解决什么实际问题。

像我现在,你猛然说,IIC 时序是啥,起泡法排序怎么写,我一下也想不起来了,但是我一看书或资料就知道了,没什么啊? 拿过来就用呗,不在乎什么程序和特定的MCU。
自己更多的时间用在他们代码和电路的整合上,就像众多的API函数,你需要综合调用他们联合运算及工作。
最后,你有一点说对了,我觉得,像 WHILE IF SWITCH 这些,和放大电路及串并联基础,应该会的。毕竟这些都是上学学的普通应用,也印证上学的时候是否听课了,
鄙人除了数模电路以外,包括单片机都是毕业以后完全自学的,因为上学学的是汇编,完全无法应用。


我觉得现在作为大一大二的学生就能来买开发板学习的,以后都会先别人一步找到工作(鄙师兄的建议和真实心得),而且先人两天年开始懂应用,工作或读研以后更是前途无量!
至少我上学的时候就不知道买开发板,也很少,当时毕业时候刚出,郭天祥的TX-1C和什么天狼星。。。



回复 支持 3 反对 0

使用道具 举报

1

主题

43

帖子

0

精华

初级会员

Rank: 2

积分
152
金钱
152
注册时间
2015-10-8
在线时间
32 小时
 楼主| 发表于 2016-10-22 14:10:49 | 显示全部楼层
基础很重要, 而这个 基础  不仅仅是 你知道.     我说的  不浮躁,  其实 就是说  细节为王.    大学时代,  我们这个专业的,   基础 就那么 几门.   C语言  单片机  模拟数字电路,     汇编   差不多 核心 就这几本书.   

就这么 几本书,   就这么几本!!!    5本吧.   最基础的.     那里面的东西,  你起码得熟悉  得理解了吧.

大家都是 大学时代过来的,  当初 怎么学的,怎么考试的?   其实 都差不多吧.    全是 忽悠 混过来的.   编程考试   连"<<include "stdio.h>>"  都是背出来的...至于为什么写这么一句,  谁知道...
   楼上 有兄弟 说的对,   知道就行 ,  经验是慢慢积累的,    可以说  你们 说的 都对.

那难道,我们 做了 这么多年,  难道  就没认识到,  当初 我们就没吃过  基础不好的亏?    一个很赶很急的项目,  卡在 小细节上, 而这个细节 最后 就是基础的东西.   

虽然有点 孔乙己,但是很多新人 只知道  for(X=0;X<100;X++)确看不懂,for(;Y=X,fun();FunB())

作为半个老人,告诫学弟学妹,  学好基础.  然后 就是 不浮躁.   苦心专业,    太基础的东西 ,不懂的时候, 自己去查书  查百度 自己 去弄懂.   学习阶段  哪怕一个细节的东西,  卡三天,绕了大远路 转而才弄明白,  也是值得的.

别一碰问题,就 问别人,  一碰问题 ,就问别人,   太浮躁.   问多了,   别人 真懒的回答你.   

基础的东西, 还是 自己去抓好
回复 支持 1 反对 0

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165516
金钱
165516
注册时间
2010-12-1
在线时间
2116 小时
发表于 2016-10-22 11:34:15 | 显示全部楼层
现在论坛初学者,乱问的真是太多了,什么都不找,不查,哇哇哇哇,就来问了。
所以,建议还是很中肯的,确实应该自己多找找,再来问,百度都不找一下,论坛搜索也不搜一下,就图个爽快,殊不知,提这种问题,只会让人鄙视。
鄙视的多了,别人就懒得理你了,给别人的映像就是,这家伙就一成天乱问的,对于这家伙的问题,已经无力吐槽了,也就懒得看了。。。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 1 反对 0

使用道具 举报

28

主题

288

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1213
金钱
1213
注册时间
2011-4-9
在线时间
97 小时
发表于 2016-10-21 08:37:52 | 显示全部楼层
多谢楼主分享,很是同意您的想法。想干好这个行业,最不能浮躁。
回复 支持 反对

使用道具 举报

72

主题

2711

帖子

2

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3505
金钱
3505
注册时间
2014-8-4
在线时间
696 小时
发表于 2016-10-21 08:40:31 | 显示全部楼层
1.很中肯的建议
2.能认真看完的新人少,能看后照着做的更少,能做到的技术上定有一番跃进
3.谢谢分享
以我资质之鲁钝,当尽平心静气、循序渐进、稳扎稳打之力。
回复 支持 反对

使用道具 举报

0

主题

14

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
328
金钱
328
注册时间
2016-4-7
在线时间
96 小时
发表于 2016-10-21 08:47:25 | 显示全部楼层
楼主说的很对,但是现在能静下来好好看基础的真的不多,对于应届生 大多都希望接触更多的东西来填充简历,接触面是广了,但是都不深入,到了实际项目中就有一大堆问题 还是要把基础打牢才对
回复 支持 反对

使用道具 举报

170

主题

917

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1824
金钱
1824
注册时间
2013-4-13
在线时间
63 小时
发表于 2016-10-21 09:02:26 来自手机 | 显示全部楼层
楼主说的好:磨刀不误砍柴功
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手上路

积分
34
金钱
34
注册时间
2016-8-29
在线时间
6 小时
发表于 2016-10-21 09:23:16 来自手机 | 显示全部楼层
芯片只是一个平台,用来展示所学的东西。
回复 支持 反对

使用道具 举报

11

主题

56

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2015-12-7
在线时间
48 小时
发表于 2016-10-21 09:39:59 | 显示全部楼层
楼主我确实只会stm32和51,别的芯片还没有学的打算,想问问在芯片使用广度上会有比较高的要求吗?另外电路知识和编程基础是都需要比较好吗?因为自己目前编程比电路要好点。还有问问楼主这行业的薪资和技术水平的联系,就是说我要得到多少工资,需要什么样的水平。谢谢楼主指点
回复 支持 反对

使用道具 举报

30

主题

1170

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1993
金钱
1993
注册时间
2016-2-16
在线时间
527 小时
发表于 2016-10-21 10:01:03 | 显示全部楼层

这图太牛逼了,厉害
回复 支持 反对

使用道具 举报

15

主题

184

帖子

0

精华

高级会员

Rank: 4

积分
647
金钱
647
注册时间
2014-4-29
在线时间
299 小时
发表于 2016-10-21 10:15:18 | 显示全部楼层
老哥稳住,时代不一样了,很多人不是从电脑上对着黑框学习c语言,而是直接用单片机学习c语言。对新手不能要求太高
回复 支持 反对

使用道具 举报

48

主题

208

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1371
金钱
1371
注册时间
2015-3-24
在线时间
190 小时
发表于 2016-10-21 10:15:31 | 显示全部楼层
有些赞同有些赞同,赞同就是基础很重要,不赞同的就是我就一直记不得冒泡排序法,我每次都是在我的函数库里直接粘贴,过来,这些不一定要记,只要晓得功能,晓得怎么用,记住它和我粘贴复制有啥子区别,还浪费我的大脑!!
回复 支持 反对

使用道具 举报

28

主题

176

帖子

0

精华

高级会员

Rank: 4

积分
738
金钱
738
注册时间
2014-7-1
在线时间
180 小时
发表于 2016-10-21 11:41:04 | 显示全部楼层
我同意楼主!!!
回复 支持 反对

使用道具 举报

19

主题

702

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3339
金钱
3339
注册时间
2013-7-30
在线时间
708 小时
发表于 2016-10-21 11:54:53 | 显示全部楼层
有些同意有些不同意,学习的思维最重要,不会冒泡不一定基础差
思想很重要,无论做人还是编程!
我的技术公众号【微联智控工作室】
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
9
金钱
9
注册时间
2016-9-14
在线时间
1 小时
发表于 2016-10-21 12:36:34 | 显示全部楼层
作为一个工作近20年的老玩家。除了面试方法,其他都赞同。
面试的方式略主观,技术人面试技巧还是有待于提高,切忌主观思维。
回复 支持 反对

使用道具 举报

6

主题

94

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1581
金钱
1581
注册时间
2016-7-2
在线时间
277 小时
发表于 2016-10-21 13:03:19 | 显示全部楼层

这么多回答我就服你
回复 支持 反对

使用道具 举报

2

主题

60

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
206
金钱
206
注册时间
2016-7-26
在线时间
33 小时
发表于 2016-10-21 13:21:55 | 显示全部楼层
赞同基础很重要。个人意见:
1、做的越久就会发现,你现在进度耽误的时间都是你基础不好欠下的债。
2、但是对于面试来说,考考基础必须的。
3、对于程序时序这些真心没必要。在你第一次学的时候弄懂,写好,基础时序写对就放那。以后用的时候拿来就用。模块化编程的就是为了方便拿来就用。
4、但是硬件必须知道经典电路,因为硬件的改动都是在前辈的教训中得来的。
回复 支持 反对

使用道具 举报

2

主题

60

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
206
金钱
206
注册时间
2016-7-26
在线时间
33 小时
发表于 2016-10-21 13:22:52 | 显示全部楼层

牛逼的我无话可说
回复 支持 反对

使用道具 举报

24

主题

107

帖子

0

精华

初级会员

Rank: 2

积分
141
金钱
141
注册时间
2014-3-29
在线时间
63 小时
发表于 2016-10-21 13:31:37 | 显示全部楼层
像我这种靠忽悠吃饭的技术人员怎么活???好不容易重拾编程信心,楼主一句话吓得我冷气直冒,都快怀疑人生了
回复 支持 反对

使用道具 举报

84

主题

766

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2775
金钱
2775
注册时间
2015-6-1
在线时间
394 小时
发表于 2016-10-21 13:36:40 | 显示全部楼层
做为新手,好想来一层,同意基础重要,但有些东西真的不是大学时代能够做到的。
曾经配过好些个使用IIC的片子,我就想当然的以为IIC有多么简单,一个破时序可看可不看,芯片照样用着无误,终于有一天找不到错误的原因,前辈问我时序配对了么,我才意识到时序是个什么东西。再接着又自以为时序都懂了也没啥难的了,终于又有一天买到一个新片子,一看IIC so easy,报了个半天的计划,结果咔咔咔搞了三天,竟然时好时坏,完全不会用。最终找到了人家的例程抄过来才解决。
有点儿乱,我想说的就是我同意楼主也不同意楼主,不懂IIC的时序不行,但看了书懂了之后呢还是完全不行,大学时代没有人要求你用必须什么芯片用什么功能,自然是能简则简,很难潜下心往深研究,只有真正遇到了并栽了跟头才知道谨慎,个人感觉对新人可以严格但不能根据一道面试题判断能力,临时性的学习能力也很重要,遇到问题知道怎么找答案,在哪里询问靠谱。
大学时的院长教课时所有代码都不自己敲,他教学生要怎么上网搜再怎么改才能实现功能,把别人的东西拿过来,摘吧摘吧就变成了自己的。就算是大牛也得学会如何借鉴别人吧。
自在随心
回复 支持 反对

使用道具 举报

44

主题

298

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
209
金钱
209
注册时间
2016-9-9
在线时间
84 小时
发表于 2016-10-21 14:43:25 | 显示全部楼层
本帖最后由 dreamARM 于 2016-10-21 14:45 编辑
yuzeyuan1 发表于 2016-10-21 13:36
做为新手,好想来一层,同意基础重要,但有些东西真的不是大学时代能够做到的。
曾经配过好些个使用IIC的 ...

你的意思很简单,相比每一件事情都了熟于心,知道怎么去弄懂是更重要。
怎么才能学会,知道怎么去弄的能力呢?

好吧,就拿总线配置来说,就是自己做一次或几种,总结方法,然后你就可以忘记当初做那几次的具体时序了,也没关系。因为你已经会知道怎么去查时序编程了。

我相信有工作经历的人都是这样的,包括楼主自己也是这样的,只不过他为了写文章驳斥新人,说基础不扎实没有例证,用了不恰当的例证这个而已,话说太多的东西,太多的算法和控制方式,他也忘得一干二净了,不过我相信他曾经做过的项目,如果还需要,他能找出来重新看一下就懂了。

他的例证就不用看了,他的观点还是可以学习一下的,就是好多事情,还是要亲自去试下。否则好使不知道怎么好使的,不好使也不知道为啥不好使。这终不是长计
回复 支持 反对

使用道具 举报

13

主题

314

帖子

0

精华

高级会员

Rank: 4

积分
713
金钱
713
注册时间
2012-7-20
在线时间
102 小时
发表于 2016-10-21 14:55:18 | 显示全部楼层
""面试的时候,  我会要求给 对方提这样的问题.   SPI 4线协议,  任一种方式,  我要发送 0x55的数据  .   请画出 4线的时序图, 并解释.  或者 提问  C语言中的 各个符号的 优先级排列.  又或者  变量的几大属性分别是什么 并举例解释说明  等等""

单着一项,面试的时候不翻书,不搜索,坛子里有几个能答出来的?
互联网,智能设备爱好者,欢迎讨论任何有意思的想法。
回复 支持 反对

使用道具 举报

3

主题

47

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
431
金钱
431
注册时间
2016-10-20
在线时间
147 小时
发表于 2016-10-21 15:09:24 | 显示全部楼层
基础确实很重要,基础确实很重要,基础确实很重要
we can't stop
回复 支持 反对

使用道具 举报

4

主题

211

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2600
金钱
2600
注册时间
2016-7-6
在线时间
546 小时
发表于 2016-10-21 18:10:22 | 显示全部楼层
顶一下!~~~~
把复杂的事,做简单!
回复 支持 反对

使用道具 举报

1

主题

43

帖子

0

精华

初级会员

Rank: 2

积分
152
金钱
152
注册时间
2015-10-8
在线时间
32 小时
 楼主| 发表于 2016-10-21 18:34:41 | 显示全部楼层
谢谢大家的回复.  我都一一看了.   可能我举例有点 不合适.  但是  举例的目的,就是为了 说明 基础能重要.   这个重要 就好像,   好的地基,但是 只是 四层楼,  远比你不好地基. 7层楼来的好.        楼层随时 可以盖,但是地基不好,盖好的楼就不稳,关键就是  我们都有经历,   所有工作学习中 碰到很多奇怪的问题, 一卡 卡几天,而最后查到的问题, 仅仅是一个 很基础很小的问题么?

时序的例子:  工作时候, 硬件部把画好的原理图给你,然后 给你一个 电路板,  就开始让你编程.    而你第一步,肯定是 调通各个电路.    电路板 ,  几百个元器件,不成问题吧.    看原理图, 然后调试  各个芯片.  芯片涉及各个通讯协议.模拟器件 数字器件.       这个时候,   如果一个SPI通讯不行, 再去翻书,再去干嘛的,  然后 才找出问题.  那模拟电路 出问题呢 ,  数字电路出问题呢  等等,           如果 调试一块电路板  都花了  1个礼拜 2个礼拜的,  那项目 还怎么做.

再比如:   很多时候, 变量你明明定义过了,  也包含进去了, 但是 就是 编译出错  说你没定义.      有经验的C基础没问题的,  一看就知道,问题出哪里了.   但是基础不好的.   怎么都解决不了,  少则卡几个小时, 我还见过 卡几天的.   定义过了,说你没定义, 再定义一次,说你  重复定义....

所有这些例子, 我想说的是,   基础真的很重要,   不解决好,  耽误你的学习效率和速度, 也影响你的工作.      

还是那个例子,   C基础好的,   看STM32F 的官方库,  一看 就明白.    不好的, 就搞不清楚  这库怎么和 寄存器联系起来的,  为什么 可以这么写..

本身发这个帖子 就是 给新人看的.    我只是想和他们说,   多注重 自己的基础知识.        刀快了,  砍柴 轻松加愉快....
回复 支持 反对

使用道具 举报

1

主题

43

帖子

0

精华

初级会员

Rank: 2

积分
152
金钱
152
注册时间
2015-10-8
在线时间
32 小时
 楼主| 发表于 2016-10-21 18:54:59 | 显示全部楼层
我一直在想关于 时序图的问题.   
做我们这行的,  接触的不管是什么芯片,   单片机也好  ARM也好  DSP也好,  也不管什么公司的芯片.   芯片的外设无非这几种通讯方式.   复杂的不说.   串口  SPI IIC 这是最基础的吧.   对于一个 基础的不能再基础的东西, 几十年的工作过程 都要用到的东西,   记在脑子里 不过分吧.
有了SPI的时序图在脑子里, 看SDIO的4线时序, 不是秒懂了么,  看LCD的时序图  也不秒懂了么?   
不说  发0x55 让你画出SPI的时序图,  那根据一个 时序图, 看出来,发的是什么数据 总应该知道吧,   而这个  看图就写出数据,  不就是   示波器的调试么?   看示波器调试,  不是 我们 每个做这行的人 基本能力么?

有人说,我看书 查书  也同样可以 解决,能解决就好了.        我不认同, 有些东西  是可以这样.   但是这么基础的东西,  记一下也不难吧.     

我本意 没说,   刀不好,  你砍不了 柴,  而是说  刀块了,  砍柴更快.        

STM32F1  IIC 有问题,   示波器一看,时序就知道问题出哪里了.   软件不行,   自己马上  模拟个IIC出来,  都不用看书  不查任何资料.        十分钟  半小时搞定!,   不是很爽么?
回复 支持 反对

使用道具 举报

30

主题

1170

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1993
金钱
1993
注册时间
2016-2-16
在线时间
527 小时
发表于 2016-10-21 19:03:20 | 显示全部楼层
lavion 发表于 2016-10-21 18:54
我一直在想关于 时序图的问题.   
做我们这行的,  接触的不管是什么芯片,   单片机也好  ARM也好  DSP也 ...

这个时序的确基础,你都知道有时钟线了,再知道在什么边沿采集,就画出来了
回复 支持 反对

使用道具 举报

1

主题

3

帖子

0

精华

新手上路

积分
27
金钱
27
注册时间
2016-10-21
在线时间
5 小时
发表于 2016-10-21 21:41:59 | 显示全部楼层
很多东西是慢慢积累的,不是天生就会的。楼主你不是从0开始的吗?试问你刚开始跟他们一样的时候,你是怎么看待自己的呢?
回复 支持 反对

使用道具 举报

11

主题

25

帖子

0

精华

高级会员

Rank: 4

积分
579
金钱
579
注册时间
2016-4-30
在线时间
55 小时
发表于 2016-10-21 22:07:40 | 显示全部楼层
我觉得原子的视频挺好的,能让我快速上手一些东西,它不仅是讲编程,还讲了一些硬件的知识
回复 支持 反对

使用道具 举报

44

主题

298

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
209
金钱
209
注册时间
2016-9-9
在线时间
84 小时
发表于 2016-10-22 08:33:33 | 显示全部楼层
本帖最后由 dreamARM 于 2016-10-22 09:01 编辑
lavion 发表于 2016-10-21 18:54
我一直在想关于 时序图的问题.   
做我们这行的,  接触的不管是什么芯片,   单片机也好  ARM也好  DSP也 ...

请您说现在直接说出IIC和LCD1602的时序是怎样的,时序之间间隔多长时间?
用您的记在脑子里,请勿看书

我觉得楼主特别的主观,认为只有一种类型的存在,是经验和学习的意义。话说你能记住SPI的主从,收发的情形,我几乎可以断定,你去年、今年做了SPI的项目。
比如LCD的时序,哪怕是个12864,如果两年项目中都没有驱动过液晶,你还能记得住吗?

学了越来越多的机制和MCU,我觉得最重要的是掌握方法,有了方法,出问题就查一下,不出问题不用像背书一样,从裸机WHILE,到UCOS,到LINUX驱动,到安卓应用,
让需要我们这些年,学的东西太多太多了。死记某个东西,反而会被限制到一个框里,如果你读研究生或是博士就会知道这个理由。

话说,面试假的东西太多,但是我面试某些人,不用死扣这些概念性和固定性问题问,
我觉得问问他们做过的项目,他是怎么实现的,怎么用单片机实现的。
完全可以问出结果,货水不水一看就知道。也不会因为想不到定时器控制哪一位而被砍掉了。


回复 支持 反对

使用道具 举报

44

主题

298

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
209
金钱
209
注册时间
2016-9-9
在线时间
84 小时
发表于 2016-10-22 08:53:44 | 显示全部楼层
本帖最后由 dreamARM 于 2016-10-22 08:57 编辑

敬告学弟学妹们,有了专业课基础,如果毕业想做设计,认真的学习一个MCU,其实单片机钻研一下各个功能原理,也就几个月吧,就肯定能入门了,
慢慢写的东西越来越多,毕竟咱们不是科学家,各个单片机你会发现学得很快就能供咱们使用,工作几年之后,就可以随心所欲,可以观其大略,用各个器件做控制,比如WIFI,GPRS,陀螺仪什么的,就看一看就能会,
犹如九阳神功护体一般。

回复 支持 反对

使用道具 举报

17

主题

587

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4467
金钱
4467
注册时间
2013-6-27
在线时间
565 小时
发表于 2016-10-22 08:57:59 | 显示全部楼层
单片机不仅要掌握编程还得会外围电路设计,模电数电是非常重要的。
我只知道冒泡大概流程及在实际中怎么用,叫我直接写冒泡程序写不来,面试自然0分(当然能当面写出来的估计都是刚毕业的学生)。
就好比冒泡排列,当你实际要用时,你脑袋里面要有这个东西,而这个东西就是学习的基础。
让我们的思维驾驭在电的速度之上!
回复 支持 反对

使用道具 举报

44

主题

298

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
209
金钱
209
注册时间
2016-9-9
在线时间
84 小时
发表于 2016-10-22 09:03:24 | 显示全部楼层
DongInker 发表于 2016-10-22 08:57
单片机不仅要掌握编程还得会外围电路设计,模电数电是非常重要的。
我只知道冒泡大概流程及在实际中怎么用 ...

对,只记住有这个东西,哪里能找到,而且找到你一看就知道是这个东西就足够了
回复 支持 反对

使用道具 举报

1

主题

43

帖子

0

精华

初级会员

Rank: 2

积分
152
金钱
152
注册时间
2015-10-8
在线时间
32 小时
 楼主| 发表于 2016-10-22 13:55:07 | 显示全部楼层
dreamARM 发表于 2016-10-22 08:33
请您说现在直接说出IIC和LCD1602的时序是怎样的,时序之间间隔多长时间?
用您的记在脑子里,请勿看书
...

你曲解我的意思,  我的本意是 基础很重要.  而SPI的时序, 应该是最基础.   你说的也对,  但是 你就没见过,   相当一部分人,  都太浮躁.    连时序图都看不懂, 也不知道怎么用示波器来调试 对还是错.     基础的都没弄好,  就 开始 好高骛远.    太多的新人,说起来 做过什么什么项目, 一进公司 反而老是 问 最起码的基础问题.    真心,不是老人不耐心,不愿回答...         时序图,别看这么简单的问题, 懂的自然懂,   但是 很多新人,   压根看书  直接略过时序图,    你以为他们肯定知道的,实际上 他们只是 有个印象而已
回复 支持 反对

使用道具 举报

9

主题

53

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
372
金钱
372
注册时间
2016-8-15
在线时间
55 小时
发表于 2016-10-22 14:37:34 | 显示全部楼层
    赞同楼主的大部分意见,也许有些例子举得不太恰当,不过大体意思还是懂的 ;基础真的很重要,像C语言,基本硬件知识,数电模电都要会,这是当然。
不过像楼主说的那样面试时要求画出时序图啊这些细节,好像有点太难了;比如学IIC这种东西的时候,刚开始学的时候知道是什么,怎么模拟着写出来,也知道怎么看,不过过了几天没动估计就忘了,毕竟写程序时还有好多其他的东西要搞,通信协议的算法细节可能没记得那么清楚,不过要是拿过来看一下,马上就能反应过来是什么。。要是真的去楼主的面试,我得gg
    现在要学的东西很多,那些基础必然要会;但有些东西也没必要去刻意背记,感觉会占用大脑写程序时候的负荷,既然会了,也会用,懂的看时序图写程序,也没必要去死记,是吧,楼主?

祝中国健儿奥运好成绩
回复 支持 反对

使用道具 举报

10

主题

172

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1479
金钱
1479
注册时间
2016-1-25
在线时间
260 小时
发表于 2016-10-22 14:47:16 | 显示全部楼层
刀快了,  砍柴 轻松加愉快....
    这是我看完后比较喜欢的的一句话,轻松诙谐而又幽默,但意思确是不言而喻。我也是个新人,毕业后才开始慢慢的自学,没有基础就像断了腿的凳子,根本就站不稳。所以我也一直在不断的充实自己。
回复 支持 反对

使用道具 举报

5

主题

105

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
419
金钱
419
注册时间
2015-9-16
在线时间
122 小时
发表于 2016-10-22 15:04:27 | 显示全部楼层
工作几年了,啥都记不住(长时间不搞就忘记了),每次有问题,就拿着DATASHEET,一点一点看(还得配个翻译软件),拿着万用表、示波器一点一点查,以前调通的代码,直接拿过来用。楼主提的那几个问题,一下子还真答不上来。我就属于基础比较差的吧。刚开始的时候,也只能照着别人的视频学,也不知道是为什么,反正就知道那么写是对的,没办法一点头绪没有的时候,也只能问,后来自己觉得问的不好意思了,就自己网上查资料。随着项目积累,也有一点自己的理解了。我觉得遇到问题是必然的,如何去解决问题比较重要。先尝试自己独立解决,查资料、看别人的例子,请教别人之前,自己先研究一番,能有自己的想法和见解。
PS:明年想换工作,面试的时候,这些简单回答不上来,会不会很尴尬。。。
回复 支持 反对

使用道具 举报

44

主题

298

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
209
金钱
209
注册时间
2016-9-9
在线时间
84 小时
发表于 2016-10-22 15:09:38 | 显示全部楼层
dozm 发表于 2016-10-22 15:04
工作几年了,啥都记不住(长时间不搞就忘记了),每次有问题,就拿着DATASHEET,一点一点看(还得配个翻译 ...

你不差,正常都是这样的。我12年自己写的代码,前几天找出来自己都不知道当时为什么那么写了。简化后的计算,就更别提了。
回复 支持 反对

使用道具 举报

84

主题

766

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2775
金钱
2775
注册时间
2015-6-1
在线时间
394 小时
发表于 2016-10-22 15:35:56 | 显示全部楼层
dreamARM 发表于 2016-10-22 15:09
你不差,正常都是这样的。我12年自己写的代码,前几天找出来自己都不知道当时为什么那么写了。简化后的计 ...

请问你们会招本科生入公司么?我感觉嵌入式工作本身就对新人很不友好啊。
大学时和我一样学嵌入式的有六七十人,最后从事嵌入式工作的恐怕只有我一个。都是因为根本没有公司研发岗要本科生,而我是因为运气好才能入职,威海悠哉小城市也有关,工作后跟有经验的人一比,真心是感觉脑袋里没东西。
自在随心
回复 支持 反对

使用道具 举报

44

主题

298

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
209
金钱
209
注册时间
2016-9-9
在线时间
84 小时
发表于 2016-10-22 15:47:14 | 显示全部楼层
本帖最后由 dreamARM 于 2016-10-22 15:52 编辑
yuzeyuan1 发表于 2016-10-22 15:35
请问你们会招本科生入公司么?我感觉嵌入式工作本身就对新人很不友好啊。
大学时和我一样学嵌入式的有六 ...

咱俩经验差不多,说说我这些年的:上学的时候也不学C语言控制单片机呀,我刚毕业也让我去做工程(就是出差调试),我不甘心,但是得先活下去,就干了。那时候我天天拿个背包,白天调试,晚上看郭天祥的视频和用板子练。
差不多半年吧,有个公司招工程师助理,钱给的跟白干似的。当时我想的是,只要能进研发部,不给钱都去,凭着学郭天祥的51的器件控制,我进去了(估计也是因为招人困难)。说给别人干助理,买元件的事都干了。跟他们学习了一年之后,又跳槽才终于找到一个小公司工程师的职位,终于可以说自己是个单片机工程师了,
又边学边干,两年之后,找到了大点的公司。。。
回复 支持 反对

使用道具 举报

1

主题

43

帖子

0

精华

初级会员

Rank: 2

积分
152
金钱
152
注册时间
2015-10-8
在线时间
32 小时
 楼主| 发表于 2016-10-22 22:49:48 | 显示全部楼层
mjwang 发表于 2016-10-22 14:37
赞同楼主的大部分意见,也许有些例子举得不太恰当,不过大体意思还是懂的 ;基础真的很重要,像C语言, ...

你说的对.       其实我发帖,就是看了论坛里面的帖子,  有些问题, 真的是  自己应该靠自己去解决的.    要么是 基础太差 ,要么是  就想快速获得答案,  太浮躁了.     也培养不出自己的经验和独立解决问题 的能力
回复 支持 反对

使用道具 举报

33

主题

984

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8017
金钱
8017
注册时间
2014-8-13
在线时间
1594 小时
发表于 2016-10-22 23:06:46 | 显示全部楼层
本帖最后由 mack13013 于 2016-10-22 23:09 编辑

其实我不太支持LZ说的SPI4线协议和C语言运算符优先级的。
对于SPI4线协议,如果项目里需要SPI,我更喜欢知道去哪里找资料的人。
C语言运算符优先级问题,我在项目里要求,不管你对这个掌握有多么的明确,一律括号强化,其实是跟加清晰注释一个目的,方便他人阅读代码。
我更希望开发者不把所有知识都掌握,但是需要什么样的开发,大概用哪些知识,开发者要知道如何去找。把所需要的知识弄成一个目录,也就是知识面要广,能够蜻蜓点水,点下 之后还能深挖下去。

有点福尔摩斯的意思:大脑的容量毕竟是有限的。


当然,这么做的基础是有不错的知识基础。

其实还有一条,掌握一定的英文基础,能够适应一定英文环境。毕竟linux、MSDN还有各种数据手册什么的都TM的是英文的。


其实还有一样我是非常看重的,那就是“严谨”。开发级别高了就会知道这个“严谨”的价值了。
回复 支持 反对

使用道具 举报

1

主题

43

帖子

0

精华

初级会员

Rank: 2

积分
152
金钱
152
注册时间
2015-10-8
在线时间
32 小时
 楼主| 发表于 2016-10-23 00:10:02 | 显示全部楼层
mack13013 发表于 2016-10-22 23:06
其实我不太支持LZ说的SPI4线协议和C语言运算符优先级的。
对于SPI4线协议,如果项目里需要SPI,我更喜欢知 ...

严谨  就是细节为王.      在学生阶段 学习阶段,   基础的东西,严谨 就是指 基础 扎实.     
当然你说的,工作之后, 又或者几年之后,  那严谨指的  可能已经 脱离基础方面了.  

那对于 一个 应届生,或者刚入行的人,   你说 要求他严谨,  考察他严谨与否,   难道不是通过 考基础么?
回复 支持 反对

使用道具 举报

1

主题

11

帖子

0

精华

新手上路

积分
31
金钱
31
注册时间
2016-10-20
在线时间
5 小时
发表于 2016-10-23 01:28:37 | 显示全部楼层
楼主的观点明确!思路清晰!!言语中肯!!!但除了你主持面试的做法我不敢苟同外,其他都双手赞成!!
但看了你写的面试策略,我是肯定过不了的哈!!
其实每个人的侧重点是不同的,对于我来说是典型的拿来和实用主义,只要知道基本原理和架构,就来用,出现问题再仔细研究代码。至于楼主看stm32的官方库很简单,楼主确实厉害!!佩服!!!但我根本就不看哈,stm32建库的目的是便于使用的,不是让我们看的。我们写的多好的代码也不如仙人们的库代码哈!!
写了这么多,只想给楼主个建议:不要“求全责备”(这是曾国藩说的哈!),多给新人和年轻人点宽容和机会!否则您将“无人可用”。
回复 支持 反对

使用道具 举报

40

主题

144

帖子

0

精华

高级会员

Rank: 4

积分
513
金钱
513
注册时间
2013-7-26
在线时间
72 小时
发表于 2016-10-23 09:06:31 | 显示全部楼层
回复 支持 反对

使用道具 举报

0

主题

35

帖子

0

精华

初级会员

Rank: 2

积分
92
金钱
92
注册时间
2016-8-11
在线时间
40 小时
发表于 2016-10-23 17:07:22 | 显示全部楼层
模电不好学,你能用分立元件做出一个能用的音响来,说明合格了
回复 支持 反对

使用道具 举报

33

主题

984

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8017
金钱
8017
注册时间
2014-8-13
在线时间
1594 小时
发表于 2016-10-23 17:33:03 | 显示全部楼层
lavion 发表于 2016-10-23 00:10
严谨  就是细节为王.      在学生阶段 学习阶段,   基础的东西,严谨 就是指 基础 扎实.     
当然你说的 ...

嗯,我这里的“严谨”是指性格里的,骨子里的东西。
这个东西有就是有,没有就是没有。

有可能一个五六十的老工程师无法将一张工程图验证闭合,
但是一个二十岁左右的实习生能做到。

其中的价值在于,老工程师反复做几遍之后,会指出工程图中有错误,是无法闭合的。
老工程师在反复的时候,开发周期延长了很多。然后主管就告诉他,让他再验证一下,
然后老工程师又重新花一个月时间进行多次验证,得出同样的无法闭合结论。
于是,主管就认为老工程师是对的,要求供图方验图。


然而,实际上人家是闭合的。


其实,不管给那个老工程师多长时间,他都会得出同一个结论。


这就是我说的,“严谨”这个性格“有”与“没有"的区别,最终结果就是0或者100,没有80或者60这种中间状态的存在。
回复 支持 反对

使用道具 举报

0

主题

35

帖子

0

精华

初级会员

Rank: 2

积分
92
金钱
92
注册时间
2016-8-11
在线时间
40 小时
发表于 2016-10-23 17:51:53 | 显示全部楼层
我现在公司的软件是由20多个软件工程师分工完工成的,分图像组/网络组/显示组/主控组,还有硬件/机械/测试组,总共100来号人,现在软件一个人是做不了的,一个人根本就不可能懂那么多.
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-24 06:36

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表