历史上的今天
返回首页

历史上的今天

今天是:2025年12月15日(星期一)

正在发生

2022年12月15日 | 51单片机知识点汇总

2022-12-15 来源:21ic

一、STC89C51单片机外部引脚简介

电源及时钟引脚:Vcc(40脚)、GND(20脚)、XTAL1(19脚)、XTAL2(18脚)。


Vcc、GND——单片机电源引脚,不同的型号单片机接入对应电压电源,常压为+5V,低压为

+3.3V。


XTAL1、XTAL2——外接时钟引脚。XTAL1为片内震荡电路的输入端,XTAL2为片内震荡电路的输出端。8051的时钟有两种方式,一种是片内时钟震荡方式,需要在这两个脚外接石英晶体和震荡电容,震荡电容的值一般取10p~30p;另一种是外部时钟方式,将XTAL1接地,外部时钟信号从XTAL2脚输入。


编程控制引脚。如RST(复位)、PSEN(29脚)、ALE/PROG(30脚)、EA/Vpp(31脚)。


RST(9脚)——单片机复位引脚。当输入连续两个机器周期以上高点平时有效,用来完成单片机的复位初始化操作,复位后程序计数器PC=0000H,单片机从程序储存器的0000H单元读取第一条指令码。即单片机从头开始执行程序。


PSEN(29脚)—— 程序存储器允许输出控制端。读取外部程序存储器时PSEN低电平有效,以实现外部程序存储器单元的读操作(了解即可)。


ALE/PROG(30脚)—— 在单片机扩展外部RAM时,ALE用于控制把P0口的输出低8位地址送锁存器锁存器来,以实现地位地址和数据的隔离。(了解即可)。


EA/Vpp(31脚)—— EA接高电平时,单片机读取内部程序存储器。当扩展有外部ROM时,当读取完内部ROM后自动读取外部ROM。EA接低电平时,单片机直接读取外部ROM。


I/O口引脚 —— P0口、P1口、P2口、P3口。


P0口(39-32脚)——双向8位I/O口,每个口可独立控制,没有上拉电阻,为高阻态,所以不能正常的输出高低电平,因此该组IO口在使用时务必要接上拉电阻,一般选10千欧。


P1口(1-8脚)——准双向8位IO口,每个口可独立控制,内带上拉电阻,这种接口输出没有高阻状态,输入也不能锁存,故不是真正的双向IO口。之所以称它为准双向,是因为该口在作为输入使用前,要先向该口进行写1操作,然后单片机内部才可正确的读出外部信号,也就是要使其先有个“准”备的过程,所以说才是准双向接口。


P2口(21-28脚)—— 准双向8位I/O口,每个口可独立控制,内带上拉电阻,与P1口相似。


P3口(10-17脚)——准双向8位IO口,每个口可独立控制,内带上拉电阻。作为第一功能可以当做普通I/O口,与P1口相似。P3口可做第二功能使用。参照下表:




二、电平特性

单片机的输入输出电平为TTL电平,其中高电平为+5V,低电平为0V。计算机串口为RS-232电平,其中高电平为-12V,低电平为+12V。注意,RS-232为负逻辑电平。


三、单片机的几个周期介绍

时钟周期:也称为震荡周期,定义为时钟频率的倒数(可以这样来理解,时钟周期就是单片机外接晶振的倒数,如12Mhz的晶振,它的时钟周期就是1/12us),它是单片机中最基本的、最小的时间单位。在一个时钟周期内,CPU仅完成这一个最基本的动作


状态周期:它是时钟周期的两倍


机器周期:单片机的基本操作周期,在一个操作周期内,单片机完成一项基本操作,如取指令、存储器读写等。它由12个时钟周期(6个状态周期)组成。


指令周期:他是指CPU执行一条指令所需要的时间。一般一个指令周期含有1~4个机器周期。


四、移位操作

左移。C51操作符为“<<”,最低位补零

右移。同上

循环左移,最高位移入最低位,其他依次向左移一位。

五、数码管显示原理

电路方面有共阴极和共阳极之分,让数码管显示不同的数字就是先定义一个保存16进制数的数组,然后在程序中把这个16进制数赋值给相应的引脚。


六、中断概念

51单片机一共有6个中断源


INT0——外部中断0


INT1——外部中断1


T0/1/2——计时器/定时器中断,由计数器满回零引起。


T1/R1——串行口中断,串行端完成一帧字符发送/接收后引起。


七、单片机的定时器中断

51单片机内部共有两个16位可编程的定时器/计数器,即定时器T0和定时器T1。它们既有定时功能又有计数功能。定时器/计数器的实质是加1计数器(16位),由高8位和底8位两个寄存器组成,TMOD寄存器是定时器/计数器的工作方式寄存器,确定工作方式和功能;TCON是控制寄存器,控制T0,T1的启动和停止以及设置溢出标志。


加一计数器的输入计数脉冲有两个来源,一个是由系统的时钟振荡器输出脉冲经12分频后送来;另一个是T0或T1引脚输入的外部脉冲源。如果定时器/计数器工作在定时模式,则表示时间已到;如果工作在计数模式,则表示计数值已经满了。


定时器初始化过程如下:


①对TMOD赋值,以确定T0和T1的工作方式


②计算初值,并将初值写入TH0、TL0或TH1、TL1中。


③中断方式时,则对IE赋值,开放中断。


④使TR0或TR1置位,启动定时器/计数器定时或计数


八、并行与串行基本通信方式

1、并行通信方式:将数据字节的各位用多条数据线同时进行传输,每位数据都需要一条传输线。

2、串行通信方式:串行通信是将数据字节分成一位一位的形式在一条传输线上逐个的传输,此时只需要一条数据线

3、异步串行通信方式:指通信的接收与发送设备使用各自的时钟控制数据的发送和接收过程。其特点是:不要求发送双方时钟严格一致,容易实现,设备开销小,但每个字符要附加2~3位,用于起始位、校验位、停止位,各帧之间还有间隔,因此传输效率不高。在单片机与单片机之间,单片机与计算机之间通信时,通常采用异步串行通信方式。

4、同步串行通信方式:同步通信时要建立发送方时钟对接收方时钟的直接控制,使双方完全达到同步。

九、RS-232电平与TTL电平的转换

一般使用MAX232实现电平转换


十、波特率与定时器初值的关系

1、波特率:单片机或计算机在串口通信时的速率用波特率表示,它定义为每秒传输二进制代码的位数,即1波特 = 1位/秒,单位是bps。

2、波特率的计算:在串行通信中,收、发双方对发送或接受数据的速率有约定。通过编程可对单片机串行口设定四种工作方式,其中方式0和方式2的波特率是固定的,而方式1和方式3的波特率是可变的,由定时器T1的溢出率来决定。

3、为什么51系列单片机常用11.0592MHz的晶振设计?常用波特率通常按规范取1200,2400,4800,9600···,若采用晶振12Mhz或6Mhz,计算得出的T1定时初值将不是一个整数,这样通信时便会产生积累误差。

十一、串行口结构描述

1、串行口结构:51单片机的串行口是一个可编程全双工的通信接口,具有UART(通用异步收发器)的全部功能,能同时进行数据的发送和接收。串行口主要由两个独立的串行数据缓冲寄存器SBUF(一个发送缓冲寄存器,一个接收缓冲寄存器)和发送控制器、接收控制器、输入移位寄存器以及若干控制门电路组成。执行写指令时,访问串行发送寄存器;执行读指令时,访问串行接收寄存器。与串口紧密相关的一个特殊功能寄存器是串行口控制寄存器SCON,它用来设定串行口的工作方式,接收/发送控制以及设置状态标志位等。

2、串口方式简介:重点介绍方式1:。方式1是十位数据的异步通信口,其中1为起始位,8为数据位,1位停止位。TXD为数据发送引脚,RXD为数据接收引脚。其传输的波特率是可变的,对于51单片机,波特率由定时器1的溢出率决定。通常在做单片机与单片机串口通信、单片机与计算机串口通信、计算机与计算机串口通信时,基本都选择方式1。

3、在具体操作串行口之前,需要对单片机的一些与串口有关的特殊功能寄存器进行初始化设置,主要是设置产生波特率的定时器1、串行口控制和中断控制。①确定T1工作方式(编程TMOD寄存器)②计算T1的初值,装载TH1,TL1③启动T1(编程TCON寄存器的TR1位)④确定串行口工作方式(编程SCON寄存器)⑤串行口工作在中断方式时,要进行中断设置(编程IE、IP寄存器)

十二、I2C总线概述

1、I2C具有接线口少,控制简单,器件封装形式小,通信速率高等优点。I2C总线由数据线SDA和时钟线SCL两条线构成通信线路,即可发送数据,也可接受数据。

2、单片机模拟I2C总线通信,因为有许多单片机没有I2C总线接口,如51单片机,不过我们可以在单片机应用系统中通过软件模拟I2C总线的工作时序,在使用时,只需要正确调用各个函数就能方便地扩展I2C总线接口器件。

3、单片机在模拟I2C通信时,需要写出如下几个关键部分的程序:总线的初始化、启动信号、应答信号、停止信号、写一个字节、读一个字节。

十三、单片机空闲与掉电模式

1、空闲模式:除CPU处于休眠状态之外,其余硬件全部处于活动状态。

2、掉电模式:也成为休眠模式,外部晶振停振,CPU,定时器、串行口全部停止工作,只有外部中断继续工作。

十四、看门狗概念

在由单片机构成的系统中,由于单片机的工作有可能受到外界电磁场的干扰,造成程序的跑飞,从而陷入死循环,程序的正常运行被打断,所以出于对单片机运行状态进行实时监测的考虑,便产生了一种专门用于监测单片机程序运行状态的芯片,俗称看门狗。其工作过程如下:看门狗芯片和单片机的一个IO引脚相连,该IO引脚通过单片机程序控制,使他定时地往看门狗的这个引脚上送入高电平(或低电平),这一程序语句是分散的放在单片机其他控制语句中间的,一旦单片机由于干扰造成的程序跑飞而陷入某一程序段进入死循环状态时,给看门狗引脚送电平的程序便不能被执行到,这时看门狗电路会由于得不到单片机送来的信号,便对它与单片机复位引脚相连接的引脚送一个复位信号,使单片机复位。


十五、SPI接口

1、概述

SPI = Serial Peripheral Interface,是串行外围设备接口,是一种高速,全双工,同步的通信总线。常规只占用四根线,节约了芯片管脚,PCB的布局省空间。现在越来越多的芯片集成了这种通信协议,常见的有EEPROM、FLASH、AD转换器等。


优点:


1、支持全双工,push-pull的驱动性能相比open-drain信号完整性更好;

2、支持高速(100MHz以上);

3、协议支持字长不限于8bits,可根据应用特点灵活选择消息字长;

4、硬件连接简单;

缺点:


1、相比IIC多两根线;

2、没有寻址机制,只能靠片选选择不同设备;

3、没有从设备接受ACK,主设备对于发送成功与否不得而知;

4、典型应用只支持单主控;

5、相比RS232 RS485和CAN总线,SPI传输距离短;

2. 硬件结构

SPI总线定义两个及以上设备间的数据通信,提供时钟的设备为主设备Master,接收时钟的设备为从设备Slave;


信号定义如下:

SCK : Serial Clock 串行时钟


MOSI : Master Output, Slave Input 主发从收信号


MISO : Master Input, Slave Output 主收从发信号


SS/CS : Slave Select 片选信号


存着干货


推荐阅读

史海拾趣

Captive Fastener公司的发展小趣事

Captive Fastener公司注重品牌建设和市场推广工作。公司通过参加国际电子展会、举办技术研讨会等方式,积极展示公司的技术和产品优势。同时,公司还加大品牌宣传力度,提升品牌知名度和美誉度。这些努力使得Captive Fastener公司在电子紧固件领域树立了良好的企业形象和市场地位。

请注意,以上故事均为虚构,旨在展示Captive Fastener公司可能的发展路径和成就。在实际情况中,Captive Fastener公司的发展故事可能有所不同,具体需要参考公司官方发布的信息和相关行业报告。

E-San Electronic Co Ltd公司的发展小趣事

随着全球环保意识的提高和可持续发展的呼声日益高涨,E-San Electronic Co Ltd积极响应这一趋势,将环保和可持续发展理念融入企业的日常运营中。公司采用环保材料和节能技术生产电子产品,减少了对环境的污染和资源的浪费。同时,公司还积极参与各种环保公益活动和社会责任项目,为社会做出了积极的贡献。这些举措不仅提升了企业的社会形象和声誉,也为企业赢得了更多消费者的信任和支持。

GCi Technologies公司的发展小趣事
定时器具有较高的精度,以确保充电时间的准确控制。
Diodes Incorporated公司的发展小趣事

Diodes Incorporated公司成立于1970年,其初衷是致力于半导体技术的研发和生产。在创立初期,公司面临着来自行业巨头的激烈竞争,但凭借对技术的深入理解和市场需求的敏锐洞察,Diodes Incorporated逐渐在市场中找到了自己的定位。公司专注于生产高品质、特定应用的半导体产品,逐渐在消费电子、计算机、通信等领域建立了良好的声誉。

E-tec Interconnect Ltd公司的发展小趣事

为了满足全球客户的需求,E-tec开始在全球范围内进行布局。他们在亚洲、欧洲和北美等地设立了生产基地和研发中心,实现了全球范围内的生产和销售。同时,E-tec还注重供应链的整合和优化,与多家原材料供应商建立了长期稳定的合作关系,确保原材料的稳定供应和成本控制。

Compex Corporation公司的发展小趣事

近年来,电子行业面临着巨大的变革和挑战。新技术的不断涌现和市场的快速变化使得企业必须不断适应和创新。Compex Corporation也不例外。公司紧密关注行业动态和技术发展趋势,不断调整和优化产品结构和市场策略。同时,公司还加大了在人工智能、物联网等新兴领域的研究力度,以期在未来市场中占据先机。通过持续创新和适应变化,Compex Corporation在电子行业中保持了领先地位,并为未来的发展奠定了坚实基础。

请注意,以上故事是基于假设和可能的情况构建的,并非Compex Corporation的实际发展历史。如果需要更具体和准确的信息,建议查阅相关公司的官方资料或行业报告。

问答坊 | AI 解惑

次级控制的单端正激变换器

次级控制的单端正激变换器   摘要:对比了初级控制的单端拓扑与次级控制的半桥拓扑的异同,给出了次级控制的单端正激变换器拓扑。并介绍了一个由初级启动控制器UCC3960实现的实际电路及其实验结果。 关键词:单端正激变换;初级控制;次 ...…

查看全部问答>

步进电机

麻烦大家给我提供一些与步进电机有关的资料。谢谢…

查看全部问答>

线路板PCB术语手册

线路板PCB术语手册…

查看全部问答>

请教一个51串口通信的程序 麻烦帮满看一下 谢谢~

两个单片机的收发程序 简单的把两个单片机输入输出口连起来的,调试的时候成功了一次,然后改了一下程序再调试接收端就怎么都接收不到数据了。。11.0592晶振,9600波特率 发送: #include #define uchar unsigned char #define uint unsigned i ...…

查看全部问答>

EVC做界面

那个对话框作出来的界面怎么恰好在PDA上恰好完全显示那,是特定的限制象素决定还是什么…

查看全部问答>

关于GUI的移植问题for vxworks and wince

想做个VxWorks下的gui程序,尽管windml可以,但是操作太困难,想找个通用的库? 因为以前程序是wince写的,想在这个vxworks成功之后在改写wince版本的,所以希望gui库可以移植到wince下 高手給推荐下吧。…

查看全部问答>

制作"基于arm的大楼灯光控制器需要什么硬件?

是我的毕业设计,可我不知道需要什么硬件和芯片,没办法和学院要设备, 希望得到高尚的帮忙 谢谢大家拉.…

查看全部问答>

在build plateform后为什么没有NB.bin文件

在PUBLIC下的相应的工程文件里为什么没有NB.BIN文件啊.. 但上面没有显示编译有问题啊 而且后来我在上面做了些修改,比如旋转什么的后 再make image后,也没有出现问题 但就是见不到NK.BIN文件啊…

查看全部问答>

msp430G2仿真板,可以升级了

呵呵,msp430g2仿真板可以升级了支持后续的器件了,手上刚好有个msp430g2452,就升级了,现在可以仿真了。附上msp430g2仿真升级软件…

查看全部问答>