![](https://img-blog.csdnimg.cn/20190927151043371.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
51单片机
作为51单片机的个人学习笔记
流年亦梦
陌上花开,可缓缓而归矣
展开
-
17.EEPROM(IIC总线)
IIC串行总线的组成及工作原理采用串行总线技术可以使系统的硬件设计大大简化、系统的体积减小、可靠性提高。同时,系统的更改和扩充极为容易。常用的串行扩展总线有: IIC (Inter IC BUS)总线、单总线(1-WIRE BUS)、SPI(Serial Peripheral Interface)总线及Microwire/PLUS等。IIC总线是具备多主机系统所需的包括总线裁决和高低速器件同步功能的高性能串行总线。IIC总线只有两根双向信号线。一根是数据线SDA,另一根是时钟线SCL。IIC总线原创 2020-06-18 11:09:06 · 396 阅读 · 0 评论 -
16.串口通信
计算机通信是将计算机技术和通信技术的相结合,完成计算机与外部设备或计算机与计算机之间的信息交换。通信有并行通信和串行通信两种方式。在多微机系统以及现代测控系统中信息的交换多采用串行通信方式。并行通信:将数据字节的各位用多条数据线同时进行传送。(采用了8根数据线)控制简单,传输速度快,但由于传输线较长,长距离传送成本高且接收方的各位同时接受存在困难。串行通信:将数据字节分成一位一位的形式在...原创 2020-06-18 11:08:31 · 1349 阅读 · 0 评论 -
15.定时器中断
利用定时器中断0实现LED1的闪烁(亮一秒暗一秒)#include<reg51.h>typedef unsigned char u8;typedef unsigned int u16;sbit led=P2^0;//D1void Timer0Init(){ TMOD|=0x01;//选择为定时器0模式,方式1,仅TR0控制启动 TR0=1;//打开定时器0 EA=1;//总中断 ET0=1;//打开定时器0中断 TH0=0xFC; TL0=0x18;//赋初值定时1m原创 2020-06-18 11:07:20 · 786 阅读 · 0 评论 -
14.定时器和计数器
CPU时序的有关知识:振荡周期:为单片机提供定时信号的振荡源的周期(晶振周期或外加振荡周期)该开发板外接12M(频率)晶振提供震荡周期状态周期:2个振荡周期为1个状态周期,用S表示。振荡周期又称S周期或时钟周期。机器周期:1个机器周期含6个状态周期,12个振荡周期。指令周期:完成1条指令所占用的全部时间,它以机器周期为单位。外接晶振为12MHz时,51单片机相关周期的具体值为:振荡周期...原创 2020-06-18 11:06:06 · 1326 阅读 · 0 评论 -
13.外部中断
外部中断0:通过按键K3实现LED灯状态反转:#include<reg51.h>typedef unsigned char u8;typedef unsigned int u16;sbit led=P2^0;//D1sbit k3=P3^2;//K3void delay(u16 i){ while(i--);}void Int0Init()//设置外部中断0{ EA=1;//打开总中断 EX0=1;//打开INT0的中断允许 IT0=1;//设置中断的触发方式为原创 2020-06-18 11:07:57 · 402 阅读 · 0 评论 -
12.中断系统
中断:CPU在处理某一事件A时,发生了另一事件B请求CPU迅速去处理(中断发生);CPU暂时中断当前的工作,转去处理事件B(中断响应和中断服务);待CPU将事件B处理完毕后,再回到原来事件A被中断的地方继续处理事件A(中断返回),这一过程称为中断 。引起CPU中断的根源,称为中断源。中断源向CPU提出的中断请求。CPU暂时中断原来的事务A,转去处理事件B。对事件B处理完毕后,再回到原来被中断的...原创 2020-06-18 11:05:30 · 451 阅读 · 0 评论 -
11.8*8LED点阵
将LED发光二极管分别集成封装,一共有64个LED。采用动态扫描的方式,可以显示数字和简单汉字。点亮对角线:循环发送每一行点亮对应的数据,再循环使低电平选中每一列。显示其他的和点亮对角线原理一致。循环发送行点亮对应的数据,再循环使低电平选中每一列。循环发送列点亮对应的数据,再循环使低电平点亮每一行。74HC595串行输入并行输出P00-P07分别是每一列,P00在最右边,P07在最左...原创 2020-06-18 11:05:07 · 738 阅读 · 1 评论 -
10.矩阵按键
即将独立按键进行重新组合。按键IO口前都有加上拉电阻。扫描原理:方法一:逐行扫描:通过高四位轮流输出低电平来对矩阵键盘进行逐行扫描,当低四位接收到的数据不全为1的时候,说明有按键按下,然后通过接收到的数据是哪一位为0来判断是哪一个按键被按下。方法二:行列扫描:我们可以通过高四位全部输出低电平,低四位输出高电平。当接收到的数据,低四位不全为高电平时,说明有按键按下,然后通过接收的数据值...原创 2020-06-18 11:04:35 · 1359 阅读 · 0 评论 -
9.独立按键
按下接通,松开断开。一共四个管脚,两对距离较远的初始状态是导通的,按下之后另外两对才导通。TXD接P3.0口,RXD接P3.1口K1,2,3,4分别接的是P31,P30,P32,P33,另一端共地,即按键按下时端口会被拉低。内部结构图:输入1,则输出1;输入0,则输出0.(例如输入1 的时候,非门输出0,二极管不导通,IO直接从VCC输出1;输入0的时候,非门输出1,二极管导...原创 2020-06-18 11:04:02 · 869 阅读 · 0 评论 -
8.动态数码管
动态显示原理:将所有数码管的段选线并联,由位选线控制是哪一位数码管有效,选亮数码管采用动态扫描显示。所谓动态扫描显示即轮流向各位数码管送出字形码和相应的微选,利用发光管的余晖和人眼视觉暂留作用,使人的感觉好像各位数码管同时都在显示。动态显示亮度比静态显示差一些,所以在选择限流电阻时应略小于静态显示电路。38译码器:74HC138 原理同数字电路模块化编程:...原创 2020-06-18 11:03:35 · 1022 阅读 · 0 评论 -
7.静态数码管
工作原理:LED显示器两种显示结构:段显示(7段,米字型)和点阵显示(58、88)共阴接法:8个LED阴极相连(不一定要接到GND)开发板使用的是共阴数码管共阳接法:8个LED阳极相连接(不一定要接+5V)LED显示器提供的编码为一个字节(8位,七段数码管加小数点)dp为最高位,a为最低位共阴数码管码表:0:0x3f 001111111:0x06 000001102:0x5b...原创 2020-06-18 11:03:08 · 922 阅读 · 0 评论 -
6.蜂鸣器
蜂鸣器:源指其是否含有振荡电路无源蜂鸣器:有绿色电路板;不能直接通过高低电平控制,而是一定频率的脉冲才能触发,内部没有振荡器电路。开发板使用的是无源。有源蜂鸣器:没有电路板而用黑胶封闭;通过单片机管脚,经过电流放大,可直接通过高低电平控制。电磁式蜂鸣器(有源):振荡器产生音频信号电流通过电磁线圈,使电磁线圈产生磁场,振动膜片在电磁线圈和磁铁的相互作用下,周期性地振动发声。压电式蜂鸣器(无...原创 2020-06-18 11:00:28 · 820 阅读 · 0 评论 -
5.LED流水灯
#define的使用:#define A P0循环左移和右移函数:均包含在intrins.h库函数中即要写出#include<intrins.h>crol(a,b);//左移cror(a,b);//右移a是移动的值,b是移动的位数...原创 2020-06-18 10:59:15 · 337 阅读 · 0 评论 -
4.LED闪烁
1.C语言的预处理命令:typedef的使用:增强程序可移植性,因为在不同软件当中位宽不同typedef unsigned char u8;typedef unsigned int u16;即用u8,u16代替unsigned char/int,8指8位即一个字节(unsigned char占用一个字节),16指16位即两个字节(unsigned int占用两个字节)2.while循环...原创 2020-06-18 10:57:38 · 375 阅读 · 0 评论 -
3.点亮第一盏LED灯
看懂原理图——编写驱动程序LED模块:由图可知,LED阳极串联一个电阻(起到限流的作用),连接VCC,阴极连接P2口,点亮一盏LED需要对相应的IO赋予低电平(因为阳极VCC相当于高电平)给某个引脚取名:sbit 变量名=地址值(例如sbit led=P2^0,即为将P20口命名为led,而不能写成P2.0)...原创 2020-06-18 10:55:37 · 305 阅读 · 0 评论 -
2.C51基础程序和语句
主体结构常用语句:7.预处理:#define LED P0即定义LED指示P0,在之后的程序中LED就代表P0。(注意后边不加分号)#typedef unsigned char uint;重新定义一些常用关键词(后边要加分号,此例在学习中还没有遇到,之后再做补充)#ifndef…#endif条件编译,用于头文件定义和程序条件编译,后续再做补充。其中int,short,l...原创 2020-06-18 10:54:51 · 863 阅读 · 0 评论 -
1.初识51单片机
单片机相关知识学习笔记1.数字电路中的电平:高电平3.3v或5v,低电平0vRS232电平(计算机串口电平):高电平+12v,低电平-12v;2.二进制,十六进制,及二级制逻辑运算(与,或,非,异或)3.CPU:由运算和控制逻辑组成,同时还包括中断系统和部分外部特殊功能寄存器;RAM随机存储器:用以存放可以读写的数据,如运算的中间结果、最终结果以及欲显示的数据,掉电丢失;ROM只读存储...原创 2020-06-18 10:54:09 · 330 阅读 · 0 评论