买的这款51,ARM,AVR三合一的单片机,也不知道后面具体使用会不会有问题,先玩玩看吧。

------------------------------------------------------------------------------------------

  单片机是将CUP、存储器和I/O接口集成都一片集成电路芯片上。

  MCS-89C51系列:集成8位CPU、4K字节ROM(只读存储器,储存程序,断电不丢失),128字节RAM(随机储存器,储存变量,掉电丢失)、4个8位并口(P0,P1,P2,P3),1个全双工串行口,2个16位定时/计数器。寻址范围64K,并有控制功能较强的布尔处理器。

  封装形式:贴片、插片。

  • 预备知识

  电平特性:

    数字电路两种电平:高电平和低电平。高电平电压取决于单片机电源,5V或者3.3V;低电平为0V。

    RS232电平:也是计算机串口的电平,高电平为-12V,低电平为+12V。

  所以,电脑与单片机通讯得将电平转换(MAX232)。

  

  进制:

    二进制:只有0(低)和1(高),逢二进一为计算机直接识别的进制;

    十六进制:逢十六进一,一般是由于二进制表达的位数太多使用16进制会方便点。

  两者的转换:二进制转换成十六进制,4位并一位,十六进制转换成二进制,1位分4位。

  

  二进制逻辑运算:

    与:有0得0;或:有1得1;非:取反;异或:相同位零,不同为1.

  80C51系列是以8051为基核开发的一系列单片机。

  引脚封装:

P3.0:RXD串行输入

P3.1:TXD串行输出

P3.2:INT0外部中断0输入

P3.3:INT1外部中断1输入

P3.4:T0定时器0外部输入

P3.5:T!定时器1外部输入

P3.6:WR外部写输入

P3.7:RD外部读输入

内部结构:

  总线是计算机中各部件之间传送信息的公共通道。微机中有内部总线和外部总线。内部总线是CUP内部之间的连线。外部总线是指CUP与其他部件之间的连线。外部总线有三种:数据总线DB(Data Bus),地址总线AB(Address Bus)和控制总线CB(Control Bus)。

  CUP:负责运算与控制,还包括中断系统和部分外部特殊功能寄存器;

  RAM:随机存储器,断电丢失,存放可以读写的数据:中间结果、最终结果以及欲显示的数据;

  ROM:只读储存器,断电不丢失,用于存放程序,以及一些原始数据和表格;

  I/O口:四个8位并行I/O口,既可用作输入,也可用作输出;

  T/C:两个定时/计数器,既可工作在定时模式,也可工作在技术模式。

  

  五个中断源的中断控制系统;

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

  片内振荡器与时钟产生电路,石英晶体和微调电容需要外接。最高振荡频率取决于单片机型号及性能。

  基本时序:

    直接由晶振为单片机提供的脉冲信号的振荡源的周期,称为振荡周期,也叫时钟周期,开发板上是12MHz;之后振荡周期经二分频,变为状态周期,即状态周期是它的2倍;而一个机器周期定义为6个状态周期,也就是12个时钟周期,在一个机器周期内CUP可以完成独立的操作;最后,CUP下达一条指令,要完成这条指令所需的全部时间成为指令周期,每条指令周期由一个或者多个机器周期组成。

  

  单片机IO口有三种解构:

  准双向IO、开漏输出和强推挽输出,51单片机为前两种。

  开漏输出必须外加加上拉电阻才能输出高电平。

  上下拉电阻:

  上拉电阻就是将不确定的信号通过一个电阻拉到高电平,同时此电阻起到一个限流的作用,下拉就是下拉到一个低电平。

  好处:

  1. OC门要输出高电平,外部必须加上拉电阻;
  2. 加大普通IO口的驱动能力;
  3. 起到限流的作用;
  4. 由于拉上高电平,所以可以抵抗电磁干扰。

  上下拉电阻的选取原则:

  1. 从功耗方面考虑应该足够大,因为电阻越大,电流越小;
  2. 从确保足够的引脚驱动能力考虑应该足够小,电阻越小,电流才能越大;
  3. 开漏输出时,过大的上拉电阻会导致上升沿变缓。

------------------------------------------------------------------------

  关于C语言:

  单片机对于C语言要求不高,只要简单的了解就ok。

------------------------------------------------------------------------

  单片机最小系统:

  1. 电源电路
  2. 复位电路
  3. 时钟电路
  4. 下载电路(外加的) 

Day-1:初识开发板与基础知识的更多相关文章

  1. 前端开发:css基础知识之盒模型以及浮动布局。

    前端开发:css基础知识之盒模型以及浮动布局 前言 楼主的蛮多朋友最近都在学习html5,他们都会问到同一个问题 浮动是什么东西?  为什么这个浮动没有效果?  这个问题楼主已经回答了n遍.今天则是把 ...

  2. SQL点滴17—使用数据库引擎存储过程,系统视图查询,DBA,BI开发人员必备基础知识

    原文:SQL点滴17-使用数据库引擎存储过程,系统视图查询,DBA,BI开发人员必备基础知识 在开发过程中会遇到需要弄清楚这个数据库什么时候建的,这个数据库中有多少表,这个存储过程长的什么样子等等信息 ...

  3. 活到老学到老:iOS开发中的基础知识(一)

    本文参考 标哥的博客:宝库iOS开发笔试题 进行学习整理.与其说是看面试题,不如说是对自己知识的巩固.工欲善其事必先利其器,基础知识不牢固可能会导致编程中的一些注意不到的问题.总之一句话:活到老,学到 ...

  4. Java复习(一)——Java语言概述、开发环境、基础知识

    设计模式:在各种应用系统中被大量应用,是设计的“常用套路” 作为Java WEB开发人员,需要掌握HTML/CSS/JS和数据库相关知识 常用的应用程序框架:Spring MVC,Spring Boo ...

  5. SQL使用数据库引擎存储过程,系统视图查询,DBA,BI开发人员必备基础知识

    在开发过程中会遇到需要弄清楚这个数据库什么时候建的,这个数据库中有多少表,这个存储过程长的什么样子等等信息,今天把自己工作过程中经常用到的一些数据库引擎存储过程,系统视图等等总结一下以备不时之用.下面 ...

  6. IOS科研IOS开发笔记学习基础知识

    这篇文章是我的IOS学习笔记,他们是知识的基础,在这里,根据记录的查询后的条款. 1,UIScrollView能完毕滚动的功能. 示比例如以下: UIScrollView *tableScrollVi ...

  7. web开发必备-网络基础知识---记录一下

    1.osi 7层网络模型 2.socket 套接字编程 PS:一个从事web开发的人来说,我们是使用http协议来和服务器来进行交互.后面会详细的分析这个过程.

  8. 微信小程序之组件开发中的基础知识

    跟着视频开始小程序的项目的开发,视频中这个小程序已经上线了,可以很好的看着小程序的界面进行开发,昨天看了一下具体的需求,觉得真的细节好多啊,而且其中设计的组件的思想也是很好的,能够很好的实现代码的复用 ...

  9. 吴裕雄--天生自然 R语言开发学习:基础知识

    1.基础数据结构 1.1 向量 # 创建向量a a <- c(1,2,3) print(a) 1.2 矩阵 #创建矩阵 mymat <- matrix(c(1:10), nrow=2, n ...

随机推荐

  1. Shiro入门

    Shiro是由Apache提供的一个强大且易用的Java安全开源框架,执行身份验证.授权.密码学和会话管理.使用Shiro的易于理解的API,您可以快速.轻松地获得任何应用程序,从最小的移动应用程序到 ...

  2. 【Hadoop】HDFS的java客户端编写

    项目使用了Maven  Project 快速进行HDFS 客户端程序测试 客户端操作系统:win10 64位 JDK: 1.7.0_79 开发工具 :Eclipse Luna pom.xml < ...

  3. VMware Workstation 12 Pro 之安装林耐斯优麒麟 X64系统

    VMware Workstation 12 Pro 之安装林耐斯优麒麟 X64系统... --------------------- 先去官网下载ISO格式的系统安装包:http://www.ubun ...

  4. java web面试技巧,数据库面试,java web轻量级开发面试教程

    我最近看到一本比较好的讲java web方面面试的书,java web轻量级开发面试教程. 其中不仅用案例和视频讲述了Spring MVC,Hibernate, ORM等方面的技巧,而且还实际讲到了面 ...

  5. 33、线程与全局解释器锁(GIL)

    之前我们学了很多进程间的通信,多进程并发等等,今天我们来学习线程,线程和进程是什么关系,进程和线程有什么相同而又有什么不同今天就来揭晓这个答案. 一.线程概论 1.何为线程 每个进程有一个地址空间,而 ...

  6. Android笔记: 在Eclipse环境下使用Genymotion模拟器

    1.为什么用Genymotion? Genymotion使用x86构架的android系统,在PC上跑起来速度快的飞起,部署速度比真机还快,还有谁? 2.下载Genymotion. Genymotio ...

  7. SpringMVC的@RequestParam的解释

    自SpringMVC4.2之后,RequestParam内部有4个参数: 1.String name 2.String value 3.boolean required 4.String defaul ...

  8. poj2051 Argus

    Description A data stream is a real-time, continuous, ordered sequence of items. Some examples inclu ...

  9. js中数组对象根据内容查找符合的第一个对象

    今天在写一个混合开发版的app,其中一个功能是扫描快递单号,客户要求不能扫描重复的快递单号!所有就验证查出. 首先实现思路就是: 1.定义一个全局数组变量:var nubList = []; 2.进入 ...

  10. prop解决一个checkbox选中后再次选中失效的问题

    //问题点 初始状态复选框没有全选, 点击全选按钮调用checkAll方法, 实现了全选, 然后点击全不选按钮, 实现了全不选, 然后再次点击全选按钮, 结果却木有全选, 再反复点击木有任何反应. d ...