一、单片机简介
单片机:在一片集成电路芯片上集成微处理器(CPU)、存储器(ROM和RAM)、I/O接口电路,从而构成了单芯片微型计算机,即单片机(single chip Microcomputer)也叫微控制器(MCU)。
MCS51是指由美国Intel公司在1980年推出一系列单片机的总称,这一系列单片机包括了好些品种,如8031,8051,8751,8032,8052,8752等,其中8051是最早最典型的产品,该系列其它单片机都是在8051的基础上进行功能的增、减、改变而来的,所以人们习惯于用8051来称呼MCS51系列单片机。
Intel公司将MCS51的核心技术授权给了很多其它公司,所以有很多公司以8051为基础核心只做了众多型号的单片机,比较常用的是美国的Atmel公司的51和国内STC51单片机。
二、单片机原理结构
单片机的40个引脚大致可分为4类:电源、时钟、控制和I/O引脚。
⒈ 电源:
⑴ VCC – 芯片电源,接+5V;
⑵ VSS – 接地端;
⒉ 时钟:XTAL1、XTAL2 – 晶体振荡电路反相输入端和输出端。
⒊ 控制线:控制线共有4根:
⑴ ALE/PROG:地址锁存允许/片内EPROM编程脉冲
① ALE功能:用来锁存P0口送出的低8位地址
② PROG功能:片内有EPROM的芯片,在EPROM编程期间,此引脚输入编程脉冲。
⑵ PSEN:外ROM读选通信号。
⑶ RST/VPD:复位/备用电源。
① RST(Reset)功能:复位信号输入端。
② VPD功能:在Vcc掉电情况下,接备用电源。
⑷ EA/Vpp:内外ROM选择/片内EPROM编程电源。
① EA功能:内外ROM选择端。
② Vpp功能:片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。
⒋ I/O线
80C51共有4个8位并行I/O端口:P0、P1、P2、P3口,共32个引脚。P3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)。
为了使得51单片机能够正常使用,需要对其进行基本电路配置:
1、 电源:这当然是必不可少的了。单片机使用的是5V电源,其中正极接40管脚,负极(地)接20管脚。
2、 振蒎电路:单片机是一种时序电路,必须供给脉冲信号才能正常工作,在单片机内部已集成了振荡器,使用晶体振荡器,接18、19脚。只要买来晶体震荡器,电容,连上就能了,按图1接上即可。
3、 复位管脚:按图1中画法连好,至于复位是何含义及为何需要复要复位,在单片机功能中介绍。
4、 EA管脚:EA管脚接到正电源端。 至此,一个单片机就接好,通上电,单片机就开始工作了。
三、51单片机设计方案
下面分享一款基于STC89C52单片机的系统板设计方案,包含:
USB下载电路;
数码管;
蜂鸣器;
矩阵键盘;
红外;
LCD1602。
(1)原理图:
(2)PCB图:
关键字:51单片机 微控制器 MCU
引用地址:
51单片机原理与设计方案
推荐阅读最新更新时间:2024-11-11 19:03
用单片机实现电子时钟(汇编)
8155 芯片的初始化:8155 对单片机来讲是一个外 部接口芯片,它与外部RAM的操作方法一样。即: MOV DPTR , # addr16 MOV A , # 03H MOVX @DPTR ,A 键盘设置子程序 这里主要介绍秒设置子程序的部分代码。 KEY:JB KEY- S ,M- SET;秒设置键按下吗? ;如没按下则判断分设 ;置键是否压下 LCALL DELAY JB KEY- S ,M- SET INC DATA - S;如秒设置键压下,则秒单 ;元加1 MOV A ,DATA - S CJNE A , # 60 ,DATA - S;秒单元= 60 , ;则清0 MOV DATA - S , # 0
[单片机]
51单片机的LCD显示
一、lcd1602 (一)、管脚展示 (二)、管脚释义 穿插:1602:意思:可以显示2行16列字符 (三)、时序图 1、 看的方法:先做垂线时间轴t,可以看到RS先变化(有交叉即变化),然后看到同一垂线上的R/W被拉低,DB0--DB7 改变电平,之后E被拉高,持续TPw (四)、LCD1602写命令和数据函数 static void lcd_write_cmd(unsigned char byte) { RS = 0;//写入命令,R/S被拉低 RW = 0;//写 LCDPORT = byte; E = 1;//E被拉高 delay_us(10);//延时 E = 0;//E被拉
[单片机]
双单片机的电机系统设计
在无刷直流电动机控制系统中,通常用DSP对信号进行采集和处理。但由于DSP的价格昂贵,在一些实时性要求不高的场合,可以用MCS-51单片机来代替DSP控制无刷直流电动机的起停、正反转和调速。 本文设计并实现了一种基于双单片机通信的无刷直流电动机控制系统。该设计方案电路简单、可靠性强、价格便宜。系统主要包括单片机控制电路、逻辑保护电路、过流保护电路、驱动电路、测速电路、转子位置检测电路等。其原理如图1所示。 1 转子位置检测电路 控制无刷直流电动机时,必须要知道转子的位置。在本设计方案中,采用了三个光电式位置传感器。这种传感器利用光电效应,由跟随电动机转子一起旋转的遮光板和固定不动的光源及光电管等部件
[单片机]
89C52单片机之数字时钟制作
这里和上面一篇数字秒表差不多,只不过复杂在多了四个七段显示屏,整个显示分为时、分、秒三部分。时为24时置为0,分为60时置为0并向时进1,秒为60时置为0并向分进1。 程序: #include reg52.h #include INTRINS.H void delay(unsigned char dly) { unsigned char i,j; for(i=100;i 0;i--) for(j=dly;j 0;j--) ; } unsigned char num,time1,time2,time3; void timer0()interrupt 1 { TH0=(65
[单片机]
msp430单片机Timer_A产生两路定时器
#include msp430x14x.h int main( void ) { // Stop watchdog timer to prevent time out reset WDTCTL = WDTPW + WDTHOLD; P1SEL |= BIT2+BIT3; //P1.2- TA1 P1.3- TA2 P1DIR |= BIT2+BIT3; //P1.2,3 direction is out CCTL1 |= OUTMOD_6; //timer_a ccr1 out mode 6 CCTL2 |= OUTMOD_6; //ccr2 out mode 6 CCR0 = 500; CCR1
[单片机]
用单片机做的电子时钟
团队的第一个小项目就是用单片机做个电子时钟,因为自己的单片机被自己焊接的不够严谨,导致部分地方短路了,所以便换成用仿真软件(protuce)来做电子时钟。经过两天的奋斗,终于把这个电子时钟写好了,虽然很简单,但收获很大,在制作的过程中,遇到了很多问题,但。也收获了很多! 电路图如下: 程序用C代码写的: #include reg52.h #define uint unsigned int #define uchar unsigned char char code dula ={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40}; //cha
[单片机]
采用查询和中断方式利用单片机定时器T0产生定时脉冲编程
利用定时器T0产生定时脉冲。每隔2ms产生宽度为2个机器周期的正脉冲,由P1.0输出此定时序列脉冲信号(设时钟频率为6MHZ)。 答:首先求出定时器T0初值。由于时钟频率为6MHZ,所以,机器周期为2µs。 因为:t=(213-T0初值)´ 机器周期 所以,当t=2ms时,则:(213-T0初值)´ 2´10-6=2´10-3 解得:T0初值=7096=11011101 11000B,其中将高8位11011101 B=DDH赋给TH0,低5位11000B=18H赋给TL0。 方法一: 采用查询工作方式, 编程 如下: ORG 0000H AJMP MAIN
[单片机]
MSP430单片机中断系统
中断是MSP430微处理器的一大特色,有效地利用中断可以简化程序和提高执行效率。MSP430的几乎每个外围模块都能够产生中断,为MSP430针对事件(即外围模块产生的中断)进行的编程打下基础。MSP430在没有事件发生时进入低功耗模式,事件发生时,通过中断唤醒CPU,事件处理完毕后,CPU再次进入低功耗状态。由于CPU的运算速度和退出低功耗的速度很快,所以在应用中,CPU大部分时间都处于低功耗状态。 MSP430的中断分为3种:系统复位、不可屏蔽中断、可屏蔽中断。 (1)系统复位的中断向量为0xFFFE。 (2)不可屏蔽中断的中断向量为0xFFFC。响应不可屏蔽中断时,硬件自动将OFIE、NMIE、ACCVIE复位。软
[单片机]