微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > MCU和DSP > 初识单片机

初识单片机

时间:03-21 来源:互联网 点击:


他的前身是单片板,将CPU芯片,存储器芯片,I/O接口芯片,和简单的I /O设备(小键盘,LED显示器)等装配在一片印制电路板上,再配上监控程序(固化在ROM中),就构成了一台单板微型计算机(简称单板机)。单片机是在一片集成电路芯片上集成微处理器,存储器,I/O接口电路,从而形成了单芯片微型计算机,即单片机。MCS-51是英特尔公司推出的,CPU主频在 1MHZ~20MHZ。MSP430是TI公司的,ATMEL公司的单片机与MSC-51最接近,我国大陆宏晶公司推出兼容51的STC系列。与经典 MCS-51兼容的51单片机有51系列和5X系列(52,55,58,516等)。

单片机构成的四要素:CPU,ROM,RAM,片上外设(IO口等)。

片上外设:UART,ADC,DAC,增强型定时器,SPI,IIC,USB控制器,LCD控制器等。

单片机的工作过程:取指->执行。

ROM:指令存储器,固化有一条一条的指令,单片机复位后CPU从0地址按顺序取出指令并执行。

RAM:数据存储器,其中一部分映射到IO口与片上外设,称之为寄存器。

二大类指令:控制ROM的指令与控制RAM的指令。

时钟:



单片机工作的基本时序:

振荡周期:也称时钟周期,是指为单片机提供时钟脉冲信号的振荡源的周期。

状态周期:每个状态周期是时钟周期的二倍,是振荡周期二分频得到的。

机器周期:一个机器周期包括6个状态周期也就是12个时钟周期。

指令周期:他指CPU完成一个操作所需要的全部时间。

51单片机引脚图:



MCS-51系列单片机均采用40Pin封装的双列直插的DIP结构,40个引脚中,正电源和地线两根,外置振荡器的时钟线两根,4组8位共32个IO口,中端口线与P3口线复用。现在对这些引脚的功能加以说明:

    * Pin20:接地线
    * Pin40:正电源脚,正常工作或对片内ROM烧写程序时,接+5V电源。
    * Pin19:时钟XTAL1脚,片内振荡电路的输入端
    * Pin18:时钟XTAL2脚,片内振荡电路的输出端
    * Pin31:EA/Vpp 程序寄存器的内外部选通线,51单片机为例,内置有4KB的程序存储器,当EA为高电平并且程序地址小于4KB时,读取内部存储器指令数据,而超过4KB 地址则读取外部指令数据。如果EA为低电平,则不管地址大小,一律读取外部程序存储器指令。最高可达64KBROM,如果不想使用51的片内ROMN就将 EA接低。现在一般用片内FLASH ROM,可达64KB,片外ROM很少使用。
    * Pin19:RESET复位信号复用脚:

当 8051通电,时钟信号开始工作,在RESET引脚上出现24个时钟周期以上的高电平,系统即初始复位,初始化后,程序计数器PC指向0000H,P0- P3输出口全部为高电平,堆栈指针写入07H,其他专用寄存器被清“0”。RESET由高电平下降为低电平后,系统即从0000H地址开始执行程序。然而,初始复位不改变RAM(包括工作寄存器R0~R7)的状态。



复位的过程:刚开始电容内无电荷,VCC有电后,电流给电容充电,电流流向RESET,产生复位,当电容充满后,产生阻隔作用,阻隔了VCC,RESET与一个下拉电阻相连,变为低电平。如果想复位,可以按下按键,使短接,RESET引脚再次产生高电平。

C-51的数据类型扩充定义:

    * sfr:特殊功能寄存器声明
    * sfr16:sfr的十六位数据声明
    * sbit:特殊功能位声明
    * bit:位变量声明

C-51包含的头文件通常有:

reg51.h reg52.h math.h ctype.h stdio.h stdlib.h absacc.h

常用的有:

reg51.h reg52.h math.h

中断服务程序:

函数名()interrupt n

{  }

I/O口定义:

#include <absacc.h>

#define prot xbyte[0x1000]

定义单片机电平为TTL电平:

高+5v 低0v

RS232电平:

高-12v 低+12v

所以单片机与计算机通信时需要加电平转换芯片max232

AT89S52

AT:公司

8:表示该芯片为8051内核芯片

9:表示内部含EEPROM存储器

S:表示该芯片还有可串行下载的flash芯片,即具有ISP在线编程能力

5:是固定的

2:表示该芯片内部代码存储空间大小为8K

PQFP:塑料方块平面封装

1. 无论单片机对外界进行何种控制,或接受外部的控制,都是通过I/O进行的。51单片机总共有P0,P1,P2,P3四个双向输入输出端口,每个端口都有锁存器,输入缓冲器,输出驱动器。共占32根引脚,其中P0和P2通常用于对外部存储器的访问。P2作为高8位地址线,P0分时作为低八位地址线和数据线。

HEX和BIN文件是我们经常用到的两种文件格式,它们的区别:

1.HEX包括地址信息,而BIN只包括了数据本身,在烧写或下载hex文件的时候,一般都不需要用户指定地址,因为hex文件内容的信息已经包含了地址,而烧写BIN文件的时候,用户一定要指定地址信息的。

2.BIN文件格式

对二进制文件而言,其没有”格式”,文件只是包括了纯粹的二进制数据。

3.HEX文件格式

HEX文件都是由记录组成的,在HEX文件里面,每行代表一个记录。

置1 :P0 |= (1<<n);

置0:P0 &= ~(1<<n);

取反:P0 ^= (1<<n);

李万鹏

原文地址:http://blog.csdn.net/woshixingaaa/archive/2010/09/17/5891810.aspx

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top