51单片机学习1

一、单片机发展

单片机由单板机发展而来

单板机: 将CPU芯片、存储芯片、 I/O接口芯片和简单的I/O设备(小键盘、LED显示器)等装配在一块印刷电路板上,再配置上监控程序(固化ROM中),就构成了一台单板微型计算机(简称单板机)

单片机:在一片集成电路芯片上集成微处理器、存储器、I/O接口电路,从而构成了单芯片微型计算机,即单片机

Intel公司推出了MCS-51系列单片机:集成8位CPU、4K字节ROM、128字节RAM、4个8位并口、1个全双工串行口、2个16位定时/计数器。寻址范围64K,并有控制功能较强的布尔处理器。

ROM:程序存储器(硬盘)

RAM:随机存储器,即数据存储器(内存)

二、预备知识

1.电平特性

数字电路中只有两种电平:高电平、低电平

(本课程中高电平为5V、低电平为0V)

RS232电平:计算机串口,程序的下载需要经过串口

(高电平-12V、低电平+12V)

因此计算机与单片机之间通讯需要加电平转换芯片max232

2.进制转换

3.二进制的逻辑运算

(1)按位与运算“&”,(2)按位或运算“|”,(3)按位非运算“~”,(4)按位异或运算“^”,(5)位右移>>,(6)位左移<<

4.单片机80C51的引脚封装

总线型,8位为一组的引脚;非总线型,不足8位为一组的引脚。

(1)总线(BUS)是计算机各部件之间传送信息的公共通道,微机中有内部总线和外部总线两类。

  内部总线:是CPU内部之间的连线;

  外部总线:是指CPU与其它部件之间的连线,有数据总线(Data Bus)、地址总线(Address Bus)、控制总线(Control Bus)。

(2)CPU:由运算和控制逻辑组成,同时还包括中断系统和部分外部特殊功能寄存器;

(3)RAM:用以存放可以读写的数据,如运算的中间结果、最终结果以及欲显示的数据;

(4)ROM:用以存放程序、一些原始数据和表格;

(5)I/O口:四个8位并行I/O口,既可以用作输入(检测外部是否有在控制它),也可以用作输出(用程序去控制各个管脚的动作,输出高电平或输出低电平);

(6)T/C:两个定时/计数器,既可以工作在定时模式,也可以工作在计数模式;

(7)五个中断源的中断控制系统;

(8)一个全双工UART(通用异步接收发送器)的串行I/O口:用于实现单片机之间或单片机与微机之间的串行通信;

(9)片内振荡器和时钟产生电路;

5.使用语言

汇编语言与C语言的区别:

C语言有可移植性,便于改进、扩充和移植;本身不依赖于机器硬件系统,基本上不做修改就可以将程序从不同的单片机中移植过来。

6.单片机C51的数据类型,与C语言的数据类型一致

C51的数据类型扩充定义

7.单片机C51包含的头文件

通常有:reg51.h、reg52.h(定义特殊功能寄存器和位寄存器)

math.h、ctype.h、stdio.h、stdlib.h、absacc.h

8.单片机主要掌握以下几点

(1)最小系统能够运行起来的必要条件:电源、晶振、复位电路(单片机在上电后必须复位一次,才能让它的程序从头执行);

(2)对单片机任意IO口的随意操作:输出控制电平高低、输入检测电平高低;

(3)定时器:重点掌握最常用的方式二;

(4)中断:外部中断、定时器中断、串口中断;

(5)串口通信:单片机之间、单片机与计算机间。

9.使用编程软件:KEIL软件,编译C程序

10.学习安排:

(1)学单片机预备知识、如何点亮一个发光管

(2)流水灯设计、蜂鸣器发声、继电器控制

(3)数码管显示的原理、数码管的静态显示

(4)数码管的动态显示原理及应用实现

(5)独立键盘、矩阵键盘的检测原理及实现

(6)AD、DA的工作原理及实现、运放电路

(7)串口通讯原理及操作流程

(8)1602液晶、12864液晶显示原理及实现

(9)I2C总线AT24C02芯片工作原理

(10)利用51单片机的定时器设计一个时钟

(11)用DS12C887时钟芯片设计一个高精度时钟

(12)电路图绘制全过程

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Jerry的SAP技术分享

观察者模式在One Order回调函数中的应用

例如需求是搞清楚function module CRM_PRODUCT_I_A_CHANGE_ORGM_EC在什么样的场景下会被调用。当然最费时间的做法是设一个...

3468
来自专栏个人随笔

房上的猫:吃货联盟项目

一.首先先定义部分成员变量: String[] name = new String[4];// 订餐人 String[] greens = new St...

33910
来自专栏朱胜的专栏

蓝牙在小程序中的应用

蓝牙在日常生活中广泛使用的一项技术,小程序给了我们前端工程师一个控制蓝牙的方法,带上你的设备,来看看怎么控制你的蓝牙设备吧。

1.8K4
来自专栏影子

SpringMVC接收复杂对象

34610
来自专栏腾讯移动品质中心TMQ的专栏

【腾讯 TMQ 】移动 APP 自动化测试框架对比

移动APP的UI自动化测试长久以来一直是一个难点,难点在于UI的”变”,变化导致自动化用例的大量维护。 从分层测试的角度,自动化测试应该逐层进行。 最大量实现自...

1.3K0
来自专栏YouMeek

1.5 Elasticsearch DSL 聚合语法介绍

课程环境 CentOS 7.3 x64 JDK 版本:1.8(最低要求),主推:JDK 1.8.0_121 Elasticsearch 版本:5.2.0 相关软...

3137
来自专栏影子

SpringMVC接收复杂对象

转载请注明地址:http://www.cnblogs.com/funnyzpc/p/7642977.html

1555
来自专栏数据和云

静默错误:Oracle 数据库是如何应对和处理的 ?

说明:关于本文提到的所有参考文档,一律上传分享,关注本公众号回复 122arch 获得。

782
来自专栏腾讯移动品质中心TMQ的专栏

移动APP自动化测试框架对比

简介 移动APP的UI自动化测试长久以来一直是一个难点,难点在于UI的”变”, 变化导致自动化用例的大量维护。从分层测试的角度,自动化测试应该逐层进行。最大量实...

25410
来自专栏Vamei实验室

用树莓派玩转蓝牙

蓝牙是一个使用广泛的无线通信协议,这两年又随着物联网概念进一步推广。我将介绍蓝牙协议,特别是低功耗蓝牙,并用树莓派来实践。树莓派3中内置了蓝牙模块。树莓派通过U...

4737

扫码关注云+社区