书籍详情
《轻松玩51单片机》[32M]百度网盘|亲测有效|pdf下载
  • 轻松玩51单片机

  • 出版社:电子工业出版社
  • 出版时间:2016-06-01
  • 热度:8572
  • 上架时间:2024-06-30 08:52:20
  • 价格:0.0
书籍下载
书籍预览
免责声明

本站支持尊重有效期内的版权/著作权,所有的资源均来自于互联网网友分享或网盘资源,一旦发现资源涉及侵权,将立即删除。希望所有用户一同监督并反馈问题,如有侵权请联系站长或发送邮件到ebook666@outlook.com,本站将立马改正

内容介绍

内容简介
  本书内容共3篇19章,完整展现了一位51单片机工程师成长的经历。51单片机共有21个特殊功能寄存器,而需要重点掌握的只有6个(需要熟练掌握对其位的操作),因此学习单片机其实很简单:学会6个寄存器的使用就学会了51单片机程序设计。这样,如果每天掌握1个寄存器,那么6天就能学会51单片机的使用。
作者简介
  杨百军,笔名老杨,曾就职于中航工业集团,主要研究微控制器、微处理器及嵌入式系统的移植与优化,具有丰富的传感器与检测技术、生物识别技术、远程无线抄表技术及锂电池管理系统(BMS)的开发与教学经验。
目录
前言
入门篇
第1章 走近单片机
第2章 修炼我们的刀和剑:Proteus、Keil C51
第3章 让你的单片机眨眨眼
第4章 让数字显示出来
第5章 用按键告诉单片机你想做什么
第6章 实时控制单片机
第7章 让定时更精确
第8章 单片机与外界的联系——串口通信
第9章 让单片机“响”起来
提高篇
第10章 再说数码管
第11章 按键多了怎么办
第12章 深入串口通信
第13章 I2C总线及其应用
第14章 SPI总线及其应用
第15章 A/D转换器和D/A转换器
第16章 LED点阵和LCD1602
第17章 LCD12864
应用篇
第18章 简易万年历
第19章 智能温度控制系统
附录
附录A AT89C51特殊功能寄存器速查表
附录B 常用字符与ASCII对照表
附录C 相关书籍、网站推荐
附录D delay.c文件、delay.h文件、main.h文件
参考文献
前言
  前言
  编写本书有两个目的,一是为计算机、电子通信相关专业大学生指引一个学习的方向;二是用更为简单易学的方式引导读者走进嵌入式软件开发的大门。
  近两年亲身走近在校大学生,与他们直接接触,感触最深的是优与劣的差距太大,没有方向感、迷茫、沉迷于游戏的大学生太多。之所以出现这种现象,不能说和现在的教育状态无关!大学之前都是填鸭式教学,高中三年是三点一线式生活;大学之后,忽然没人管了,大把的时间是自己的,而大学的教育还停留在教师只讲好自己的课,没人引导人生职业规划的状态。这就造成了很多大学生在大一失去入学时的那股新鲜劲之后,慢慢沉迷于网络、游戏。但也并非都是如此,一些电子通信类专业的学生在大一学过C语言后,暑假就自学了51单片机,大二拿下STM32(Cortex-M3),大三就开始接项目了;当然也有些学生在大四做毕业设计时还读不懂别人写好的源代码,更谈不上设计了。鉴于此,我们希望看到本书的同学能够更清楚地认识自己的发展方向。我们无法按专业来一一分析,在此仅按照技术的应用方向给出一个发展方向引导图。
  首先,你可以选择一个方向:是应用层开发,还是嵌入式开发呢?若不知道自己在哪方面更有兴趣,你可以看看自己所在专业的教学规划,看看更偏重哪个方面。例如,计算机专业大多偏重于应用层开发,而电子信息工程专业则偏重于嵌入式开发。而后,就可以由浅入深,慢慢深入学习了。
  这里以嵌入式开发为例,在大一学习过C语言程序设计之后,你可以在51单片机上做一些练习,这样你会更熟悉C语言,同时对单片机也有浅显的认识,此时最大的转变是通过操作寄存器实现外围电路的控制;而后,可以选择一款更复杂的单片机,如AVR,此时的重点是学习如何通过数据手册来学习单片机,因为51单片机的数据手册大多过于简单,不能直接用来指导学习。在以上的学习过程中,你会用到电路、模电、数电的一些简单应用,这样在大二学习相关课程时,自然不会陷于“学这些枯燥的理论有什么用呢”的迷茫。
  学习AVR之后,你对嵌入式开发就有了基本的认识,这时基本就可以确定后面自己要深入学习的方向了:继续MCU的学习、转向DSP的学习,还是学习CPLD、FPGA,当然也可以选择进行电路板设计。而且这些方向不是相互独立的,你在选择一个方向之后,还会扩展到其他相关方向的学习。例如,学习嵌入式程序设计,同样要读懂原理图,甚至自己去设计原理图,搭建开发环境。同时,你会对后期的专业课程有更清晰的认识,刚好可以在有些专业课程上花费更多的时间去深入研究。
  有些同学会觉得在学习51单片机之后,直接跨入STM32(ARM之Cortex-M3系列)更好,我并不这样认为。我觉得学习51单片机是简单的入门,学习AVR是使用数据手册学习单片机的方法,而到STM32阶段可以重点通过固件库例程来学习单片机,同时扩展到文件系统、操作系统等,这样由浅入深会很轻松。而且,这样学习也并不耽误时间,以我的教学经验,在51单片机学习阶段用一个月的时间,多做一些简单的应用,可以更深刻地理解嵌入式开发的理念;而到AVR阶段,用两周就可以学会通过数据手册学习单片机的方法;到学STM32时,基本上一个月也就能够应用了。近几年,我按照这个思路编写了一套教材,在附录C中按照该学习方法推荐了一些相关书籍与网站,有兴趣的同学可以参考。
  编写本书的第二个目的是用更简单易学的方式引导读者入门。这里根据读者的反馈,使用Proteus仿真和开发板共同学习。读者可以首先在Proteus中验证实验,而后将实验例程下载到开发板上运行,使之更接近工作研发的过程,同时比较仿真和实验练习有何区别;而后对例程进行修改,加深对例程的理解;最后可以根据例程发挥想象,实现自己的设计。
  另外,为了突出嵌入式开发的思想——通过操作单片机的寄存器实现外设电路的控制,本书第9章总结了51单片机的21个特殊功能寄存器,其中只有6个是需要重点掌握的(需要熟练掌握对其位的操作)。这就将学习的门槛降到最低:学习6个寄存器就能学会51单片机程序设计,如果每天掌握1个寄存器,那么6天就能学会单片机。
  全书内容共3篇,3篇内容是独立的。入门篇,是对单片机概念的引入、工具的介绍、单片机基础知识的讲解。学习完入门篇,你会对单片机有个整体的认识,也会知道单片机编程是怎么一回事。如果要深入学习,可以看后面的章节,也可以直接选择其他教材进一步研究。提高篇,是在入门篇的基础上通过扩展外围元器件进一步讲解单片机的应用,可以作为扩展内容学习。应用篇,通过实例的形式应用前两篇的学习内容,如果你有一定的单片机基础,也可以直接用来作参考样例。
  另外,除第19章外,本书所有的实例都没有提供电子版代码,因为我一直认为,学习程序设计最重要的就是自己动手,只有自己把代码一个字一个字地输入进去,自己建立工程、编译、仿真,才能学到其中的精髓,如果仅仅是运行、仿真一下别人写好的程序,那是没有什么意义的。甚至,你不但要学会、看懂、调通书中的例程,而且要学会将自己的想法融入到实例之中,学会修改、优化代码。正所谓传授者应授人以渔而非授人以鱼,而读者若能做到授人以渔而非授人以鱼,那将是完美的教与学的过程。书中的所有实例都是我输入计算机做过仿真、实物调试之后才使用的,如果因为描述不清楚或其他原因使调试不能通过,请读者给我发电子邮件或者直接登录到我的博客(young45.cublog.cn)提问,我会尽快答复并给出解决办法(第19章的例程可以通过该博客下载)。
  本书的开放环境是Windows 7系统,使用的工具是Proteus 7.8、Keil C51 9.52,学习时最好能选择相近的版本。
  全书共19章,由杨百军统稿。其中,杨百军编写第15~19章,湖南女子学院的张玲玲老师编写第1~4章,中国人民解放军国防科学技术大学张志洲老师编写第5~9章,苏州工业园区服务外包职业学院的李鹏举老师编写第10~14章。另外,参加本书编写的还有黄得建、康磊、李楠、刘远峰、聂运中、王路、许元霄、杨俊杰、赵景丽、周宏云和张延杰。此外,深圳市普中科技有限公司和西安网联商贸有限公司的王鸿先生为本书的编写提供了HC6800-EM3 V3.0开发板,在此表示感谢。
  “学然后知不足,教然后知困。”由于我们能力有限,写作过程中难免会出现一些错误,希望读者给我发电子邮件(young45@126.com)指出。
  最后感谢我的家人,特别是我的父母,是他们用辛勤的汗水培育了我,才有今天的成长;也感谢编写过程中给予我帮助的朋友:段富军、许元霄、高金龙、申雷、黄桂平、钦桂勤等,是他们的关心和帮助让我们完成了本书的编写;特别感谢远在东北的朋友郝云鹏,我们是通过单片机相识的,在近几年的工作和生活中他给我提供了很多的帮助;还有那些来信给出建议的读者们,如郭凯、张锋、王帅阳、牛鹏举、孔宁、李泽飞、吴祖顺、竹显涛、刘宇轩等;也感谢电子工业出版社的王敬栋、张剑、苏颖杰及其他编辑朋友。最后,感谢人生路上伴我走过的所有朋友!
  杨百军
  于湖南长沙·国防科学技术大学
精彩书摘
  千里之行,始于足下。
  ——《老子》
  在学习本篇之前,你可以没有单片机基础,也可以没有使用过仿真工具Proteus,但希望你有一定的C语言基础。不要认为学会51单片机是多么重要,其实它远没有学会一门程序设计语言重要。学会一门程序设计语言,可以上手很多种单片机(如51、AVR、PIC、ARM等),可以说学会C语言就是掌握了一门技术,学会单片机就是使这门技术有了用武之地。因此,希望你在学本篇之前能先学习一下C语言程序设计。
  本篇主要讲述51单片机的基本知识:I/O口作输入/输出口的使用,P3口第二功能——中断、定时/计数器、串口通信等的应用。
  本篇共9章内容,其中第1、2章为了解内容,第3~9章为重点学习内容。第1章用我们身边的电器引入单片机的概念;第2章主要介绍本书要使用的工具Keil C51和Proteus;第3章用发光二极管带我们走进单片机编程的世界;第4章在第3章的基础上讲述数码管的使用;第5章通过按键讲述单片机I/O口作为输入口的应用;第6章讲述外部中断;第7章讲述单片机中的定时/计数器;第8章讲述串口通信;第9章用一个蜂鸣器演奏一段曲子的实例作为本篇的结束,同时总结本篇的学习内容。
  在讲单片机程序设计前,应先了解一下单片机。我本想说“走进单片机的世界”,可是如今的世界里,我们早已被单片机包围了,所以这里我说“走近单片机”。让我们一起来揭开身边单片机的面纱。
  先看看我们身边的家用电器吧——电视机、电冰箱、空调、洗衣机、电磁炉、电饭锅、微波炉、电话、计算机、手机等,这些家电都离不开单片机,如果它们内部的单片机不工作了,那它们也就休息了。让我们拿起手中的旋具(俗称螺丝刀),选一个家电对它做一个分解手术,把隐藏起来的单片机挖出来。
精彩插图