找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 7834|回复: 36
收起左侧

别让你的单片机学习停留在流水灯水平——一个受害者的感悟

  [复制链接]
ID:145657 发表于 2017-3-7 17:35 | 显示全部楼层 |阅读模式
本人还是学生,现在大三,接触单片机一年多以来,从最基础的51开始,到更高级

点的MSP430,一直到现在刚开始上手的STM32,编过的程序不算多,但加起来怎么

也有上百个了,做过的东西仔细数数,能拿出手来算算的上是个样的也不下十个,

算是小有所成吧。
但今天,我却发现,这一年我一直在走一条歪路。
先说一下情况吧,是这样的,最近同学几个合伙做个小项目,不算复杂,跟市面上

的工程项目完全没法比,用难再需要使用的一个芯片是老师给的,从没用过,没有

历程,至于一份电子版的数据手册,一切的一切都只能是从头开始,从底层开始,

我们几个斌开始从最底层的逻辑时序、寄存器操作开始,但经过几天的研究,确实

毫无效果可言。
为此,我们几个郁闷了好长时间,开始疯狂的上网搜资料,拷代码,却终究是不得

而返,还让老师骂了一顿,因为这个项目是我们主动要求老师放给我们的,结果却

耽误了工期。
               我次我们几个人很受打击,最终决定大家一起静下心来分析分析

,到底我们败在了什么地方?
最后总经过两天的思考、讨论、总结、检讨···,我们发现了问题的所在,想来

想去,这估计是很大一部分初学者正在面临的一个“瓶颈问题”,所以,由我净这

个讨论的结果发布出来,希望与更多的人交流、分享、提高、共勉。
              下面先总结一下我们失败的几点原因:
       1、“都是开发板惹的祸”,可以说从开始学习单片机,哪怕是最基础的51

、以致后来的MSP430、ARM,我没从未离开过开发板,而且这长达一年多的时间,

养成了我们对开发板极大的依赖,尽管自己焊过51最小系统、绘制过430最小系统

板,但都是参考的别人已有的电路图,连最基本的电路基本都没分析过,为什么要

在这几个电阻,该加个多大的,不加会怎么样,太大了/太小了会有什么后果,等等

此类问题,我们从未分析过,全是COPY、COPY、再COPY,以致自己做过的东西不少

,能力却未曾提高。
       2、“全是例程误导我”,我们买来的开发板,往往都会带有丰富的例程,

通常这也是卖家吹嘘、比拼的地方,但就是这些附带的历程,让我们与底层的开发

绝缘了,有了例程,我们不用再一个代码一个代码地敲键盘,不用再去研究那些器

件的数据手册、通信接口、寄存器、内部原理、以及很多商家没给我们加进去的功

能,哪怕是将这些程序改到别的地方,我们也不过是在宏定义里改两个引脚配置而

已,从未尝试过从底层写驱动、敲代码、写函数,从未尝试过快平台移植代码,开

发呢些没用过的功能等等。
        3、“现实环境太无奈”,这跟上面两个说的是不同的方面,我们都是大

学生,大学里现在吵得火热的“大学生就业难”、“你是考研还是就业”、“你报

XXX培训班了吗”“你考四六级证了吗”等等,好像上大学就是为了干这些,似乎

没有这些,你就会陷入“毕业即失业”的困境。面对这些外来的干扰,越来越多的

学生坐不住了,我们这些人也一样,尽管一直在学习自己的爱好,但当被人问得多

了的时候,心里也难免会发毛、会害怕,从而导致一年来真正静下心来学这些东西

的时间越来越少。

      大体也就总结怎么多吧,经过这次失败,也算是教训深刻吧,现在才大三,

到大四毕业,还有近两年的时间,还不算太晚,再说将来的路还长,现在发现这些

,应该不算晚吧。
      对我们来说,革命尚未成功,同志仍需努力啊!
      开这贴,一为总结这次失败、而为自己立志改变、三为警示后来的同学、四

为大家齐言献计。
      大家有遇到同样问题的、要类似迷茫的、要好的建议意见的,欢迎回帖交流

,大家一起共勉。



评分

参与人数 1黑币 +8 收起 理由
zhaok2013 + 8 很给力!我们该为楼主高兴有了真正的成长!.

查看全部评分

回复

使用道具 举报

ID:151348 发表于 2017-3-8 10:50 | 显示全部楼层
都是楼主的亲身经历,句句发自肺腑,自己也有所感触。我开始学习单片机也是从开发板+例程开始,因为我不是学电子相关的专业,只是个热衷电子电路的DIYer。起步的时候完全不懂,学会烧程序了,看到开发板上出现的效果,顿时自我感觉良好。说实话,一直以来都是把别人的程序拿过修改,但是没有现成的程序,自己就举步维艰,虽然修改了不少程序转达到了自己想要的效果,常见的模块、显示屏神马的都可以驾驭,但是自己没有按照手册编过程序,这为以后DIY带来不小隐患,遂决定从最基础的做起,知其所以然。共勉之!

评分

参与人数 1黑币 +50 收起 理由
admin + 50 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:169016 发表于 2017-3-8 00:26 来自手机 | 显示全部楼层
顶,说的在理
回复

使用道具 举报

ID:168911 发表于 2017-3-8 06:35 | 显示全部楼层
我也是刚刚买了个开发板,想利用空余时间想学习学习,也是这里找程序那里找程序,网上很多程序是不能用的,找了一大堆个8x16俄罗斯方块程序,仿真也不行,后来在两个看似一模一样的程序里比较,最终发现只相差一句代码,终于做出来了,看来自己不懂真不行啊,

评分

参与人数 1黑币 +50 收起 理由
admin + 50 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:66429 发表于 2017-3-8 07:25 | 显示全部楼层
其实说起来,就是动脑加动手。开发板没罪只有,自己动手,制作一个哪怕是简单的四位时钟,你也会发现许多问题。不要复制,自己写一个程序,也会学到不少知识。

评分

参与人数 1黑币 +30 收起 理由
admin + 30 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:105206 发表于 2017-3-8 09:10 | 显示全部楼层
确实如楼主所说。
回复

使用道具 举报

ID:166737 发表于 2017-3-8 09:24 | 显示全部楼层
知其然 还要知其所以然啊
回复

使用道具 举报

ID:163153 发表于 2017-3-8 13:09 | 显示全部楼层
很有道理
回复

使用道具 举报

ID:85726 发表于 2017-3-8 13:34 | 显示全部楼层
可以的!领悟的很深!
回复

使用道具 举报

ID:169144 发表于 2017-3-8 16:14 | 显示全部楼层
确实如此
回复

使用道具 举报

ID:169208 发表于 2017-3-8 20:33 | 显示全部楼层
这个问题其实特别常见,就跟我学java一样,习惯了使用各种编辑工具,然后打开个记事本可能就不会了。主要是这个大环境浮躁了,身边人都是这样,没有明师,自鸣自得久了。现在醒悟还很早的。
回复

使用道具 举报

ID:169133 发表于 2017-3-9 08:53 | 显示全部楼层
其实不然,没有开发板,从一开始就学习底层,很多人就会止步了,因为难,枯燥。从开发板上手学,简单易懂,见效快,可以提高学习的兴趣,有一定基础了,再回头来学底层的东西,也就没那么难了……
回复

使用道具 举报

ID:169133 发表于 2017-3-9 08:54 | 显示全部楼层
其实不然,没有开发板,从一开始就学习底层,很多人就会止步了,因为难,枯燥。从开发板上手学,简单易懂,见效快,可以提高学习的兴趣,有一定基础了,再回头来学底层的东西,也就没那么难了……
回复

使用道具 举报

ID:165046 发表于 2017-3-9 15:01 | 显示全部楼层
hdance 发表于 2017-3-9 08:54
其实不然,没有开发板,从一开始就学习底层,很多人就会止步了,因为难,枯燥。从开发板上手学,简单易懂, ...

楼主的意思我想不是怪用了开发板,而是反思自己没有去深究器件的底层原理,学习的不够深刻!
回复

使用道具 举报

ID:169945 发表于 2017-3-12 12:59 | 显示全部楼层
看了楼主的话,颇有同感,我也是一名大二的学生,大二才开始看单片机,买了个开发板,照着跟着的视屏学习,各种例子都是自己敲得,感觉学的还可以,可是一遇到例子没有讲到的东西,比如最近遇到的问题,例子上只讲了红外控制,而我遇到的问题是红外感应人体,就不会了,所以现在看来,我需要放下例子,从底层学起了,从最小系统,一个一个的加模块,不能盲目的跟着例子走
回复

使用道具 举报

ID:96881 发表于 2017-3-13 15:55 | 显示全部楼层
刺激我了,我就卡在流水灯了,,,,,,
回复

使用道具 举报

ID:125275 发表于 2017-3-14 08:45 | 显示全部楼层
如果没有底层代码 还怎么学好单片机呢 学不学习关键还是在于个人 当你工作需要的时候自然会有所得
回复

使用道具 举报

ID:160697 发表于 2017-3-14 19:11 | 显示全部楼层
所有我都是买最小系统,买模块,自己搭
回复

使用道具 举报

ID:170719 发表于 2017-3-14 20:05 | 显示全部楼层
看来得好好学单片机了
回复

使用道具 举报

ID:170819 发表于 2017-3-15 09:48 | 显示全部楼层
加油
回复

使用道具 举报

ID:145657 发表于 2017-11-3 10:19 | 显示全部楼层
加油
回复

使用道具 举报

ID:424073 发表于 2019-10-14 20:01 | 显示全部楼层
有道理,我也觉得是这样的。分析少了光敲代码没什么进步。
回复

使用道具 举报

ID:651320 发表于 2019-12-7 12:32 来自手机 | 显示全部楼层
玩单片机半年了,现在准备自己开始话电路板
回复

使用道具 举报

ID:247907 发表于 2022-2-10 21:18 | 显示全部楼层
说的很有同感
回复

使用道具 举报

ID:247907 发表于 2022-2-10 21:19 | 显示全部楼层
说的非常在理,很有感触
回复

使用道具 举报

ID:1004571 发表于 2022-2-11 20:31 | 显示全部楼层
顶 我也是刚刚买了个开发板,想利用空余时间想学习学习
回复

使用道具 举报

ID:1004798 发表于 2022-2-12 11:45 | 显示全部楼层
一分耕耘一分收获  努力
回复

使用道具 举报

ID:514317 发表于 2022-8-8 08:01 | 显示全部楼层
至少要自己构建函数    不然你不知道错在那里    复制例程可以   加在一起就没法找问题了
回复

使用道具 举报

ID:499163 发表于 2022-8-8 19:13 | 显示全部楼层
楼主现在怎么样了?应该是个大神了吧,能够意识到缺陷并去改正的。
回复

使用道具 举报

ID:59830 发表于 2022-8-8 21:28 | 显示全部楼层
版主说的没错,学习可以开发板,参考也行;
还是离开开发板以实际项目多从头一点一滴锻炼,培养独立思考及自己动手能力.
说起来简单,做起来挺!!!
回复

使用道具 举报

ID:307766 发表于 2022-8-8 22:25 | 显示全部楼层
看了楼主的感慨感觉是那么回事,资料下载了很多,变成自己的不多,很没效率
回复

使用道具 举报

ID:880148 发表于 2022-8-9 07:50 来自手机 | 显示全部楼层
我也是单片机新手,我以前学过VB ,也是二把刀水平,后来给某企业做一套系统,做的时候才发现问题多多,深感会的东西太少,当解决后,才感觉到,不是没学过,而是基础知识掌握不牢固,不能灵活运用
回复

使用道具 举报

ID:1040470 发表于 2022-8-9 14:54 | 显示全部楼层
感谢楼主的分享,终于知道自己停滞不前的原因了
回复

使用道具 举报

ID:688460 发表于 2022-8-14 10:08 | 显示全部楼层
仁者见仁智者见智!自己的无能不能埋怨别人的开发板和例程,没有例程说不定你现在什么都不是!短短的感言居然错别字一大堆!这算什么玩意啊?这水平就要毕业了。。。。。。实话实说哈
回复

使用道具 举报

ID:1007932 发表于 2022-8-16 13:03 | 显示全部楼层
多少是自身的问题,电路不过关,仪器也不会用,程序都是调出来的,硬件不会你怎么调!不要说copy的问题,没本事写的更好就不要用自己的,但要做到心中有数,出了问题要知道怎么改。现实中哪来那么多时间让你造轮子,不然还要函数库干啥,直接全部寄存器操作得了。关于开发板,不要让他限制了你的想象力,将代码拆分成模块,去掉多余的,加入自己想要的功能,再进行封装,这就相当于一个私人的函数库,这其中不可避免会涉及到底层,却没有直接学习底层的枯燥,而且能更清楚知道哪方面用的更多更重要,哪方面更容易出问题,开发板最大的问题是只会对着例程中的代码和要求编程,而不会对着数据手册和项目编程。总的来说,硬件电路,仪器仪表,数据手册是基础,而编程思想是积累而来的。

ps:解决问题的能力和解决问题的速度是不一样的,有解决问题的能力了再来提高速度,不要想一口吃成个胖子!
回复

使用道具 举报

ID:1040201 发表于 2022-8-17 11:35 | 显示全部楼层
是的 ,要知其然,更要知其所以然。。。
回复

使用道具 举报

ID:331575 发表于 2022-8-19 16:27 | 显示全部楼层
这就好比上学时候老师讲的习题,自以为都会了,但是遇到同类型的题还是会懵,更不用最后的大题了
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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