江苏大学单片机复习资料(共12页).doc
《江苏大学单片机复习资料(共12页).doc》由会员分享,可在线阅读,更多相关《江苏大学单片机复习资料(共12页).doc(12页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上第一章 概述1、 什么是SOC型的单片机?在传统的单片机的基础上再集成了很多外部设备到芯片里,形成的片上系统(System On Chip)就是SOC型的单片机。2、单片机分为: ROM型:内容不可改 EPROM型:擦写不方便 无ROM型:需外接ROM OTP ROM型:低成本,一次可编程 E2PROM型:擦写较方便,不能ISP Flash ROM(MTP ROM型)型:使用最方便,可以ISP2、 单片机的发展概况:初级阶段、低性能阶段、高性能阶段、新一代阶段3、 单片机在哪些领域有应用?举例说出10种含有单片机的产品或设备。智能仪表、机电一体化、实时控制、分布式多机
2、系统、家用电器等消费类领域空调、冰箱、洗衣机、微波炉、彩电、音响、家庭报警器、电子宠物、手机、MP3第2章 C8051F单片机的结构与原理1、CIP-51有哪些存储空间?各个存储空间的功能及寻址范围是什么?v 物理结构上可分为: 片内程序存储器 片外程序存储器 片内数据存储器 片外数据存储器v 按功能和寻址可分为: 程序存储器(64KB的flash,以512字节为一个扇区,通常是只读,但可用MOVX写入) 内部数据存储器(256字节的RAM,0x00-0x1F通用寄存器4*8 0x20-0x2F可位寻址空间) 外部数据存储器(64KB的外部数据空间,MOVX、DPTR、R0或R1用间接寻址方式
3、访问;默认情况下MOVX指令访问XRAM,还可用于写Flash) 特殊功能寄存器(0x80-0xFF直接寻址存储器空间,一般在内部RAM的0x30-0xFF单元中开辟堆栈) 位地址空间(内部RAM中0x20-0x2F单元以及特殊功能寄存器中地址为8的倍数的特殊功能寄存器可以位寻址)2、中断22个,分外部中断、串口(UART0、UART1、SPI、SMBus等)、定时/计数器、电压比较器、A/D转换中断中断使能控制(受中断允许寄存器IE、EIE1、EIE2控制)中断优先级别的设定(每个中断源都可以设置为高优先级1和低优先级0,由中断优先级寄存器IP、EIP1、EIP2统一管理)中断响应时间v 最
4、快为5个时钟周期: 1个周期用于检测中断; 4个周期完成对ISR的长调用(LCALL)。 v 如果申请中断时CPU正在执行RETI指令,则需要再执行一条指令才能进入中断服务程序。 v 最长为18个时钟周期 : 1个时钟周期检测中断; 5个时钟周期执行RETI; 8个时钟周期完成DIV指令; 4个时钟周期执行对ISR的长调用(LCALL)中断响应过程硬件动作置位优先级状态触发器、断点入栈、执行LCALL转中断入口、清除中断请求标志、对RI、TI而言相同优先级的硬件查询顺序中断源 同级时的优先顺序 外部中断0 定时器0中断 高 外部中断1 定时器1中断 串行口0中断 定时器2中断 串行口1中断 外
5、部晶振准备好 低3、端口输入/输出(并行口) C8051F020有8个8位I/O端口、64个数字I/O引脚;低端端口(P0P3)既可以按位寻址也可以按字节寻址高端端口(P4P7)只能按字节寻址所有引脚都耐5V 电压,都可以被配置为漏极开路或推挽输出方式和弱上拉4、 优先权交叉开关译码器C8051F020 内有大量的数字资源需要通过P0P3才能使用(本身没有对外的引脚)。引脚的分配通过优先权交叉开关译码实现的。UART0优先权最高,而CNVSTR优先权最低通过3个特殊功能寄存器XBR0、XBR1、XBR2实现另外,牢记如果P0撤销勾选,P0后面的跟着缩进(看图,意会)5、 电源管理方式CIP-5
6、1 有两种可编程的电源管理方式(节电方式):a) 空闲方式(等待方式)i. CPU停止运行,而外设和时钟处于活动状态(10A5mA) 。内部寄存器和存储器内容保持不变。ii. 通过置位IDLE(PCON.0)进入iii. 中断和复位可结束空闲方式 b) 停机方式(掉电方式)i. CPU停止运行,所有的中断和定时器(除时钟丢失检测器)等外设都处于非活动状态,系统时钟停止。(0.2W)ii. 通过置位STOP(PCON.1)进入iii. 只有系统复位可退出停机方式 6、 复位源(看图能说得出来)总共7个(上电/掉电复位、外部/RST引脚复位、外部CNVSTR信号复位、软件命令复位比较器0复位、时钟
7、丢失检测器、看门狗定时器超市复位)第3章 51单片机编程语言1、C51存储器类型如果在变量声明时未声明变量的存储器类型,则该变量的存储器类型,由程序的存储模式来决定。 小模式(small model):默认data区,缺省模式。 紧凑模式(compact model):默认pdata区 大模式(large model):默认xdata区2、C51特殊数据类型 bit:位类型(直接声明),如:bit flag; sbit:可位寻址的对象(在bdata中声明的变量)如:int bdata ibase; sbit mybit15=ibase15; sfr:8位特殊功能寄存器,如:sfr ACC=0x
8、E0; sbit signbit=ACC7; sfr16:16位特殊功能寄存器,如:sfr16 T2=0xCC; 第4章 C8051F单片机的片内功能部件v 定时/计数器 定时器工作方式定时器0和定时器1定时器2定时器3定时器4方式013位定时器/计数器 自动重装载的16位定时器/计数器自动重装载的16位计数器/定时器自动重装载的16位定时器/计数器方式116位定时器/计数器带捕捉的16位定时器/计数器带捕捉的16位定时器/计数器方式28位自动重装载的定时器/计数器UART0的波特率发生器UART1的波特率发生器方式3两个8位定时器/计数器(只限于定时器0)能用公式求出定时器初值例4.1 若f
9、OSC=12MHz,用系统时钟的十二分频作为计数源,请计算定时2ms所需的初值,并给出初始化程序。解: fOSC= 12MHz,用系统时钟的十二分频作为计数源时,方式2、3的最大定时时间只有0.256ms,因此要想获得2ms的定时时间,必须用方式0或方式1。方式0 TC=2132ms/1us=6192=1830H 即:TH0=0C1H;TL0=10H(高三位为0) 方式1 TC=2162ms/1us=63536=F830H 即:TH0=0F8H;TL0=30Hvoid T0_mode1_2ms_init() CKCON &= 0xf7;/T0计数源选择系统脉冲的12分频TMOD=0x01; /
10、T0方式1定时 TH0=0xf8; /初值 TL0=0x30; TCON |= 0x10; /启动T0,可用TR0=1代替 v 给定时器赋初值的语句也可以采用如下方法: TH0=(65536-2000)/256; TL0=(65536-2000)%256;或 TH0=-2000/256; TL0=-2000%256; 例4.2 若fOSC=12MHz,T1工作于方式1,产生50ms的定时中断,TF1为高级中断源。试编写主程序和中断服务程序,使P1.0产生周期为1s的方波。 解:让P1.0每500ms取反一次即可实现。定时器的单次定时时间不可能达到500ms,但可通过多次定时产生500ms的定时
11、时间,如让T1工作在方式1,单次定时时间为50ms,那么T1中断10次就是500ms的时间。 (1)确定定时常数 假设使用fOSC的12分频作为计数源,则T计数12/fOSC 12/(12106)1s 由公式TC=MT/T计数,可知TC=216-5010315536=3CB0H TH1=0x3c,TL0=0xb0。 程序清单如下(中断方式)#include sbit P1_0 = P10;int count=10;/10次T1中断为500msvoid main( void ) CKCON&=0xef; /T1的计数源选择系统脉冲的12分频 TMOD=0x10; /T1方式1 XBR2=0x40
12、; /并行端口输出使能 P1_0=0; TH1=0x3c; /初值 TL1=0xb0; IE|=0x88; /允许T1中断 IP|=0x08; /TF1中断为高级中断 TCON|=0x40; /启动T1 While(1); /死循环,等待中断,产生方波 void Timer1_ISR (void) interrupt 3 TH1=0x3c; /重装初值 TL1|=0xb0; /提高计数精度 count-; /中断计数 if (count=0) /500ms到,重赋计数初值,P1.0取反 count=10; P1_0=!P1_0; 程序清单如下(查询式程序)v #include sbit P1_
13、0= P10;void main( ) int count=10;/10次T1中断为500ms CKCON&=0xef;/T1的计数源选择系统脉冲的12分频 XBR2=0x40; TMOD=0x10; /T1方式1 P1_0=0; TR1=1; /启动T1For(; ;) /死循环,产生方波 TH1=-50000/256; /T1初值 TL1=-50000%256; Do while(!TF1); /查询等待TF1置位, TF1=0; count-; If (count=0) count=10;P1_0=!P1_0; 2、并行通信和串行通信 并行通信是指数据的各位同时进行传送(发送或接收)的通
14、信方式。串行通信指数据是一位一位按顺序传送的通信方式3、串行通信的传送方向单工(或单向)配置,只允许数据向一个方向进行传送;半双工(或半双向)配置,允许数据向两个方向中的任何一个方向传送,但一次只能有一个发送,一个接收;全双工(或全双向)配置,允许同时双向传送数据4、异步通信和同步通信异步通信以字符为单位,每个字符用起始位0开始,然后从低位到高位逐位传送数据,最后用停止位1表示字符结束同步通信以数据块为单位,每一数据块开头时发送一个或两个同步字符,使发送与接收双方取得同步。数据块的各个字符间取消了起始位和停止位。5、UART发送电路+接收电路+波特率发生器、错误校验电路、多机通信控制电路和交叉
15、开关TI0:发送中断标志位,该位必须由软件清0RI0:接收中断标志位,该位必须由软件清06、波特率设计和初值X例4.6 已知C8051F单片机时钟振荡频率为11.0592MHz,选用定时器T1工作方式2作波特率发生器,波特率为2400bit/S,求初值X。 解:设波特率控制位SMOD0=0,定时器T1计数脉冲控制位T1M=0,则有: 查询方式接收程序#include void main(void) char data *p; /接收缓冲区地址指针 unsigned char i;TMOD=0x20; /初始化并启动T1 TH1=0xfd; TL1=0xfd; TR1=1; SCON0=0x50
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 江苏 大学 单片机 复习资料 12
限制150内