4768|13

7815

帖子

55

TA的资源

裸片初长成(中级)

楼主
 

(征文)我的51之路 [复制链接]

        我是在大三的时候正儿八经开始学51单片机。
   
        大二,有了一年焊接各种小电路的经历,对于阻容和二三极管等等器件有了一些粗浅的基础认识以后,我决定迈向一个全新的领域,也是我这一两年经常听说的一个东西——51单片机。
话说回来,那时候,51和单片机对我来说几乎是同义词。

        在我买开发板以前,我先花了几个月的时间自学C语言——这件事情从高中开始到大一,我前后尝试了四五次一次都没走到头,这次因为想学51单片机,终于做成了。
        然后我想自己焊一个下载器,参考网上伟纳SP200的电路图,前后花费了将近2个月时间——唔,这部分跟51没太大关系,我只是想撑这个机会,学习如何画板和用覆铜板做PCB而已。最后功败垂成,也就算了。
        然后没太多废话,110快买了一个开发板,就开始玩了。

        当时新学期有开51这门课,但是讲得太慢,讲得太多余,我基本上是自己上课看书,下课了就回到宿舍在笔记本上用keil写程序。那个阶段,写的是各种基本程序,什么定时器,什么外部中断,当时调试得最麻烦的是一个双51的串口通信程序。

        然后就没什么事了。因为后来我开始准备考研复习,期间参加论坛里一个MAXIM的活动——现在想起来,原来我接触51也是一年多以前的事情。

        去年寒假那段时间,碰巧经宿舍一个同学介绍,一个我们学校其他学院的一个师兄,想找我合作,试着设计一个小产品。当然,这玩意对于51而言就是一个定时器,只是要配合一个简单的传感器,那东西也是我无意做出来的。
        不过这东西现在搁浅,据称他在申请专利,我没多留意,因为觉得不是一个太复杂的东西。

         然后就是论坛里的DIY,自己组织,自己参与,并有了一个多两个月的纠结时间。不过好歹过去了。就是那个LC测量小工具。这个东西最后完成了,但不是很完美,因为我开始打算拿2051做,后来HEX体积太大,就换了8051,为了快,就在开发板上做。前阵子想把东西独立出来,重新做一个,但是,嘿嘿,出了点故障,该死的LM311没起振。
 
         还有就是毕业设计,做的是DS18B20+无线数传,也是基于51做的。
//========================================================================================
作为入门而言,我觉得,首先要做好一些必要的物质准备。

1 厘清几个概念:
  下载器(下载线):
   我们是在电脑上写程序,然后通过软件和电脑接口把代码烧进单片机里去。所以我们需要一条下载线或者下载器。
然后,这个东西不像USB,它不标准,也不是通用的。
51的下载器归51用,AVR的归AVR。很多时候,就是同一个系列,不同型号,它使用的下载方法不一样,下载器也不能简单通用。
比如说,AT89C51和S51就不一样。S51可以支持ISP,C51不行。

 开发板/最小系统
所谓最小系统就是可以让单片机工作的最小电路系统,我可以告诉你一个最简单的最小系统就是一个单片机,一个晶振,若干个电容电阻,组成晶振电路,复位电路。
甚至,有的单片机自带内部振荡器,无须外部复位电路,那么它本身只要接好相关引脚和上电就已经是一个最小系统了。
当然了,我们说的最小系统通常至少带一路LED,可以看状态。
 
 而开发板就是把我们学习到使用到的一些常见的外围模块和单片机做到一起,方便大家学习,让你不会焊接和电路也可以首先编程,体会一下单片机的神奇的学习环境。
绝大多数开发板都已经集成了下载线路(需要配备下载线或者只需一根USB线就OK了)。

这里,要跟大家提一些自己的看法,纯属个人见解,欢迎拍砖,另,本人不卖开发板,有很多时候有人问我要建议,我只是介绍一个途径——做一个开发板对于我等老手来说撑死就是一个下午的事情,但对于新人,这里面经历的折腾足以让他逃跑,所以购买开发板可以减轻入门难度,所以,请不要再说我是在做广告。下面将会吐槽现在卖开发板的——这种不赚钱的活我才不干。)

先写到这里,和朋友约了出去玩,晚上回来接着写。

      
[ 本帖最后由 辛昕 于 2011-10-2 00:05 编辑 ]
查看本帖全部内容,请登录或者注册
此帖出自51单片机论坛

最新回复

写的好,有同感  详情 回复 发表于 2012-2-3 19:59

赞赏

9

查看全部赞赏

点赞 关注
个人签名

强者为尊,弱者,死无葬身之地

 

回复
举报

1727

帖子

0

TA的资源

五彩晶圆(初级)

沙发
 
版主继续啊!嘻嘻!
此帖出自51单片机论坛
 
 
 

回复

1180

帖子

0

TA的资源

五彩晶圆(初级)

板凳
 
51改变了我的世界观!
此帖出自51单片机论坛
 
 
 

回复

7815

帖子

55

TA的资源

裸片初长成(中级)

4
 

前面说到学习51单片机需要开发板,下面简单说一下我对现在常见的这些开发板的个人见解,如有不对之处,恳请赐教,如有冒犯还请见谅。
        现在网上卖的开发板,便宜的几十块到100多,贵的可以去到两三百,甚至更贵。
       依我的看法,这些开发板无论便宜或者贵,好的好不到哪里去,坏的坏不到哪里去。
       为什么呢?
       也许你现在还看不懂,认为这板子很神奇,但是当你慢慢的玩久了,跟我一样看出一些门道了,你就会知道,天下电路一家抄,更别说这种“已经落后了很多年”的51单片机(正确的说,很成熟,现在满中国搞电子年轻的一代,几乎没多少个是不懂51的)
       这些板子,按照我的看法,根本就是搭配着在卖元件。
       淘宝上,某些51单片机网上,一些我认识的卖这玩意的人,据我所知,大多数都是生活中卖元器件的小商家。
       所以,你别看什么说得很先进,很齐全,那其实就是在搭着卖他的元器件。
       但是,这些东西,你可能根本用不上,比如我自己——我买的板子只用了110,算是轻量级的,但上面的时钟DS1302和存储器(好像是什么AT2904C?
,想起来了,是AT2404C?)
       我从来都没用过它。

       而反过来说,当你真正能够使用这些东西了,你根本不需要去依靠他搭着在上边卖的那个DS1302.
       你随时可以自己买一块,然后自己焊接电路,自己定义管脚,模拟或者移植例程,完成你要的功能。

       这里简单重申一下我的观点:
       开发板就是一个让你在没有任何基础的情况下,拥有一个较为稳定成熟的方便的调试开发平台。
       我们做一件事情以前,由于对其缺乏认识,我们根本不知道往下我们会做到什么程度,走得多远,所以这种时候不加节制地投资,是很不理性的行为。

       另外,假如你只能对着做好的硬件写程序——而据我所知,很多人那根本就不叫写程序,他只不过是把别人提供的例程简单修改,就声称自己学会了操作某某外设。
       于是就有了很多所谓“搞了几年,还不会写程序”的人。有的人,甚至连改都不会改。
       关于这一点,学习单片机,在入门后,在体会到它的用途以后,我们该怎么往下走,如何规划自己的未来方向,关于这一点,我将在另一篇文章中写一下我自己的看法。这里表过就不提了。
(完)

[ 本帖最后由 辛昕 于 2011-10-2 01:15 编辑 ]
此帖出自51单片机论坛
 
个人签名

强者为尊,弱者,死无葬身之地

 
 

回复

7815

帖子

55

TA的资源

裸片初长成(中级)

5
 

忘了总结,新手指南

1 当你决定了你要学习51,而不是AVR PIC或者ARM。
才往下走,不然的话,感谢阅读,我们后会有期——
       曾经我也认同很多人的观点,学习单片机和嵌入式最好是有51单片机的基础,当然我自己就是,并且,51给我打下的基础的确发挥了不小的作用,但是从我自己一上班就直接掉进ARM和LINUX的经历来看,我修正了自己的观点:
假如你认为ARM对你有用,那么你尽可直接从ARM开始,ARM7?ARM9?甚至当前最新的A8 A9,玩吧。
       因为我自己就是直接从51一路进入了A8.
       我们的时间精力并不是太多,如果你打算把8位机16位机再到满世界都说的ARM32位处理器的话,那么,兄弟,你还有多少时间考虑处理器以外的东西?

2 购买开发板。
   请记住网上的板子,贵的好不到哪去,便宜的差不到哪里去,100多块,带个DS18B20 DS1302 流水灯,其实就很OK了。
    购买开发板请特别注意几个细节:
   1 是否配备有下载线,如果没有,要找他买。
    2 配套资料有多少,都是些什么,例程这个东西,给100个跟给1个都没啥区别,要注意问些关键常用的东西,比如开发板的原理图,相关下载线使用的上位机软件和驱动程序。这个东西适用于多少型号的单片机——多少并不是关键,关键的是你用的哪一款至少应该在里面。
    3 有了开发板,安装好驱程,让你的下载线识别到它,然后请下载一个叫keil的软件,据我所知,51IDE它是大主流,满世界的人用的都是它——所以你求救的时候就不会无人可救,这种感觉很可怕,相信我,因为我试过,当然我说的是ARM,而不是51.
    4 51,其实是一个很简单的单片机,当然我说的是51单片机本身,它只有区区111条汇编指令,寄存器就算把半个RAM占满也就128个,何况实际上这个数目还小着呢。
      虽然满世界都在用C语言开发各种微处理器,但是,请接受一个过来者的忠告,请稍微学习一下汇编——因为,它是单片机编程的内功心法,有了它,你会真正懂得单片机到底在干什么,不然当别人(比如我)在拿51调侃,用各种比喻的时候,你会一头雾水。
    5 好了,假如你已经能把例程跑起来。
那么,请你稍微停止 弹指间,大功告成 的愉悦感觉。
请你去看pdf,请你去看原理图,请你去想一下,为什么单片机可以完成这些功能。
请你去看一下你写的C51或者汇编,它们是如何实现这些时序,这些控制功能。
如果你做到了这一步,请你试着做一个完整的小制作,哪怕只是自己从头做一个最小系统,然后你自己从零开始写一个完成的程序——就算你可能是在默写早已滚瓜烂熟的程序,做一个完整的项目文件——哪怕你是照着参考书一步一步往下做。

如果你连这一步都做过了。
那么,接下来,我认为你不需要听我废话连篇了,因为我的本事也就到这里。
这个时候,我非常欢迎与你多多交流。我的QQ:755087287

我想告诉你,我现在在干什么。
我现在在看关于C的和51单片机实用的C51的特性以及一些我们一般没有用上的但是对于提高程序的稳健型,安全性,可移植性等等都具有良好裨益的知识。

我曾经把51单片机和计算机等同起来,领会它们20年前是一家的事实。
              
       就这样吧,好困啊~~
此帖出自51单片机论坛
 
个人签名

强者为尊,弱者,死无葬身之地

 
 

回复

535

帖子

0

TA的资源

五彩晶圆(初级)

6
 
唉!回家没网!不怎么好上论坛!只能用手机看看自己发起得活动得最新动态!看了辛哥得话感觉姜还是老得辣,辛哥写这篇文章是用心了的,哈哈,受教了!
此帖出自51单片机论坛
 
 
 

回复

7815

帖子

55

TA的资源

裸片初长成(中级)

7
 

回复 6楼 小小白 的帖子

嗨嗨,我很老嘛!
别乱说哈,不然找不到媳妇,我跟你急
此帖出自51单片机论坛
 
个人签名

强者为尊,弱者,死无葬身之地

 
 

回复

95

帖子

0

TA的资源

一粒金砂(高级)

8
 

回复 板凳 zhangdaoyu 的帖子

有同感!
此帖出自51单片机论坛
 
个人签名格物致新,厚德泽人
 
 

回复

449

帖子

0

TA的资源

纯净的硅(高级)

9
 
很透彻啊
此帖出自51单片机论坛
 
 
 

回复

384

帖子

0

TA的资源

一粒金砂(中级)

10
 
说的很好啊,必须支持一下
此帖出自51单片机论坛
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

11
 

版主所说都是我学习遇见的很赞同

此帖出自51单片机论坛
 
 
 

回复

12

帖子

0

TA的资源

一粒金砂(初级)

12
 
支持  学习了
此帖出自51单片机论坛
 
 
 

回复

48

帖子

0

TA的资源

一粒金砂(中级)

13
 
   写的不错,支持一下!!
此帖出自51单片机论坛
 
 
 

回复

25

帖子

0

TA的资源

一粒金砂(中级)

14
 
写的好,有同感

此帖出自51单片机论坛
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条
有奖直播报名| TI 面向楼宇和工厂自动化行业的毫米波雷达解决方案
【内容简介】TI 60GHz IWRL6432和 IWRL1432毫米波雷达传感器如何帮助解决楼宇和工厂自动化应用中的感应难题
【直播时间】5月28日(周三)上午10:00
【直播礼品】小米双肩包、contigo水杯、胶囊伞、安克充电器

查看 »

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网 12

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表