回想起当初学习AT89S52的日子还近在眼前:毕业后的第一年呆在亲戚公司做了10个月设备管理.乏味的工作和繁杂的琐事让我郁闷不已.思考很久后终于辞职.投奔我的同学去了,开始并不曾想到要进入工控行业,知识想找一份电子类技术职业,至于什么职业我根本没有目标可言.经过两个多月的挫折后我静下来思考,并上网查询一些前辈经验,又经过快2周的考虑我决定先自学单片机,毕竟电子信息专业的,有一点基础.于是买来了开发板(我还在这个论坛上发过小程序呢),下来了大量的资料,几乎很多是从本论坛下载的,我还是得感觉这么多的前辈啊,他们的经验让新人少走了很多弯路.我说下我的学习过程,每个人有每个人的学习方法,希望至少能给刚进入的朋友们一点信心吧.

语言选择:  在买来开发板前我其实已经看过3遍C语言教程了(潭浩强的).但是我选择了重头学习汇编指令.我花了1周熟悉汇编指令,在这一周里我先看透了开发板的原理图,不认识的芯片从网上下了资料,大概的了解芯片的功能.

实验:我买了本<C51开发宝典>,根据别人的例子开始了实验.我记得我做第一个流水灯花了我2天时间.我按照别人例程完成后,又自己思考下能不能用别的方法实现,那时我自己又想了几种方法,虽然现在看来不足以称为好方法,但至少也算自己独立思考的了.这里我要说下我做实验并未按照开发板提供的实验去做,我是自己看完电路图然后自己订了个实现功能实验,实验如下:

第一个实验: 流水灯(开始一遍是参考例子,主要为了熟悉汇编语言的写法),然后自己用定时器再实现一遍,接着再自己整些花哨的流水花样.

第二个实验: 秒表.从0秒运行到24小时,按键可以停止,继续,复位.这个实验其实分为了点亮数码管--动态显示数码管--秒表计时三部分.我自己在实现了从1~9的计数后卡在了10之后的自动计数,无奈之下参考了前辈的10进制的程序,经过1周的努力完成了这第二个实验.

第三个实验S1820B测温. 从开始的打印出前辈的液晶程序看了有1周多,大概了解了
1602液晶模块的驱动程序后又花了1周时间熟悉DS1820B的时序.在这个过程中几次痛苦的想放弃了,
程序根本吃不透.最后我总算是将前辈的程序看了差不多,自己做这个实验时也仅仅是将显示的内容和位置作了修改,其他内容认为看懂了就偷懒没自己写.当看到程序跑起来后还是蛮开心的.

在开始的自学2个多月里我根本不懂IIC,SPI,和RS232,485等串行通信,每个芯片我都根据芯片手册的时序图来痛苦的吃读写指令/.后来进入公司后才发现之前自学的好多芯片是通过以上几种通信方式来通信的.
自学了2个多月后我也终于找到了我人生中的第二份工作可能也是很重要的一次转折的工作.在工作中我暂时还是以学习为主,需要学习的太多了,也是工作后我开始改用C语言写代码.在这里回头看看,我只想告诉新的朋友们:多上网看看前辈的经验,可以少走很多弯路.还有就是基础的知识还是必须自己去吃吃的.完!

转载于:https://blog.51cto.com/14355585/2407627

大虾对51单片机入门的经验总结相关推荐

  1. 想学单片机怎么入手?51单片机入门自学最佳指南

    曾经我是自学单片机然后跨行成功,今天来分享下自己的经验. 在网上看了很多文章,很多人说现在51单片机已经过时了,建议从STM32开始学习. 或者单片机没有钱途,直接搞ARM+Linux. 我的建议是从 ...

  2. 51单片机入门教程(6)——外部中断

    51单片机入门教程(6)--外部中断 一.外部中断 1.1 中断 1.2 外部中断 二.中断优先级 一.外部中断 1.1 中断 关于中断的概念在上一篇博客中已经提到了.(传送门:51单片机入门教程(5 ...

  3. 51单片机入门教程(5)——定时器中断

    51单片机入门教程(5)--定时器中断 一.中断的概念 二.定时器中断 2.1 软件延时的不足 2.2 中断寄存器 2.2.1 中断允许控制寄存器 IE 2.2.2 定时器工作方式寄存器 TMOD 2 ...

  4. 51单片机入门教程(1)——点亮一个LED灯

    51单片机入门教程(1)--点亮一个LED灯 一.什么是单片机 单片机(Microcontrollers)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU.随机存储器 ...

  5. 51单片机入门学习小结(流水灯与数码管)

    51单片机入门学习小结(流水灯与数码管) 对原理图的分析 以下是我所用单片机的原理图 这块51单片机一共有4个I/O口(意思为input/output),也代表着如果我们后续都要用到这四个的话那么功能 ...

  6. 51单片机入门模板(STC89C52RC)

    该模板适用于51单片机入门,比较易于理解,包含定时器和串口的操作. 可以在定时器T0中断服务函数和主循环中实现主要功能,在UART中断服务函数(T1定时器)中实现简单的串口通信接收命令的功能. 注:本 ...

  7. 51单片机入门指南系列:一、前期准备

    51单片机入门指南系列:一.前期准备 51单片机学习步骤 为什么我用的是52单片机,大家也说它是51? 编译环境 单片机入门书籍 购买实物开发板 51单片机学习步骤 51单片机是嵌入式学习的入门级芯片 ...

  8. 51单片机入门——16路抢答器

    文章目录 设计要求 电路原理图 硬件原理 时钟信号(晶振) 矩阵按键与独立按键 代码解析 设计要求 同时为16支参赛队提供抢答功能,抢答成功后应能通过数码管显示出参赛队号数,同时点亮发光二极管示意抢答 ...

  9. 51单片机入门基础介绍

    51单片机入门基础介绍 文章目录 51单片机入门基础介绍 前言 常用元器件 发光二极管 数码管 LED数码管的显示方式 按键 定时计数器 串行口控制寄存器SCON 中断系统 中断源及中断请求 中断允许 ...

最新文章

  1. iOS动画开发之五——炫酷的粒子效果
  2. Windows核心编程 第五章 作业(上)
  3. 文件保存到服务器失败,Office 2010在服务器共享文件夹中保存文件失败
  4. FireBug命令行命令介绍
  5. GloVe: Global Vectors for Word Representation-学习笔记
  6. WMI使用技巧集 C#
  7. [Editor][003][Emacs] 从零到高级的进阶 - 实践开发 - emacs tutorial的使用和基本导航键
  8. python有什么优秀功能_Python都有什么强大的功能
  9. 通过Windows Live Writer发布日志到各大博客
  10. 判断平面内两直线平行c语言,5.2 平行线及其判定教学设计模板
  11. 千锋web前端教学知识点记录及个人理解2
  12. 《Cocos Creator游戏实战》在游戏中显示弹幕
  13. R shiny 交互式表格
  14. STM32USB鼠标+键盘串口控制
  15. 作为一名测试工程师,如何保证软件的质量?
  16. 微信公众平台卡券API接口开发指南
  17. 真正的好老板,都是高层次的“给予者”
  18. scratch和python怎么读_Python如何像scratch一样朗读文字?|python3教程|python入门|python教程...
  19. Three.js - 使用 ThreeBSP 对模型进行布尔运算
  20. 2021年焊工(初级)考试及焊工(初级)免费试题

热门文章

  1. 国家开放大学计算机应用模块3客观题答案,国家开放大学《计算机应用基础》考试与答案形考任务模块3模块3Excel2010电子表格系统—客观题答案.pdf...
  2. Python Hello World入门 - Python零基础入门教程
  3. jq之$(“tr:odd“).css(“background-color“,“red“);
  4. oracle昨日时间,。。今日,昨日,上周,本月,本年,按时间统计总金额
  5. linux云服务器状态上报解决方案:外发个人邮箱
  6. linux udhcpc指令,dhcpclient和udhcpc区别和用法
  7. arcgis的python接口_arcgis-Python的ArcGIS API-Esri Screenshots
  8. php 拼接wav,将两个Wav文件合并为一个 | 学步园
  9. html5边框闪烁,HTML – CSS框阴影动画像素艺术闪烁
  10. linux将日期和日历信息追加到文件中_Linux常用指令