趣味电子产品设计与制作教案.doc
《趣味电子产品设计与制作教案.doc》由会员分享,可在线阅读,更多相关《趣味电子产品设计与制作教案.doc(24页珍藏版)》请在三一办公上搜索。
1、教 案【首页】课程名称趣味电子产品设计与制作授课专业班级课程编号课程类型必修课校级公共课( );基础或专业基础课( );实验课()选修课限选课();任选课()授课方式课堂讲授();实践课()考核方式考试();考查()课程教学总学时数32学 分 数2学时分配课堂讲授 16 学时; 实践课 16 学时教材名称单片机的C语言应用程序设计(第4版)作 者马忠梅等出版社及出版时间北京航空航天出版社2007指定参考书基于Proteus的8051单片机实例教程 单片机C程序设计及应用实例基于C语言编程MCS-51单片机原理与应用Protel99高级应用作 者李学礼胡伟张培仁赵晶出版社及出版时间电子工业出版社
2、人民邮电出版社2003清华大学出版社2003人民邮电出版社2000授课教师明显诚 汪科职 称工程师单 位工程训练中心授课时间注:表中( )选项请打“”教 案【理、工科】第一章 8051单片机基础结构与内部资源一、教学目的和要求 通过对单片机的基础特点、内部结构、外部硬件扩展、指令系统和简单的程序介绍,让同学们对8051单片机有个基础了解,同时由浅入深,进一步学习运用8051内部资源的C语言实现,包括中断、定时器/计数器以及串口等等。二、教学重点2.1 8051的内部基础结构2.2 8051的内部资源使用三、教学难点 8051单片机独特的内部结构3.2 8051中断、定时器/计数器和串行口的使用
3、1.1 8051的内部结构单片机是在一块硅片上集成了各种部件的微型计算机,这些部件包括中央处理器CPU,数据存储器RAM,程序存贮器ROM,定时器/计数器和多种IO接口电路。8051是MCS-51系列单片机的一个产品。MCS-51系列单片机是Intel公司推出的通用型单片机。它的基本型产品是8051、8031和8751.这三个产品只是片内程序存储器的制造工艺不同。8051片内程序存储器为掩膜型,在制造芯片时已将应用程序固化进去了,使它具有某种专用功能;8031片内无ROM,使用时需外接ROM,8751片内ROM是EPROM型的,固化的应用程序可以方便的改写。8051单片机内部结构可划分为CPU
4、、存贮器、并行口、串行口、定时器/计数器、中断逻辑几部分。中央处理器核心单元,算术逻辑单元ALU(算术运算,逻辑运算),操作数存于累加器ACC或暂存器中。控制器执行程序指令过程,程序存贮器中取指令,进入指令寄存器IR,指令译码器ID译码,微操作信号用于控制单片机各部分动作。时钟包括内部时钟和外部时钟。内部时钟,晶振和微调电容组成的并联谐振电路构成稳定自激振荡器。外部时钟,引入外部脉冲信号。基本时序周期,微操作信号在时间上有严格的先后次序。振荡周期是振荡源周期;时钟周期是振荡周期的2倍;机器周期包括6个时钟周期;而指令周期指完成一条指令所占用的全部时间。指令部件包括程序计数器PC,指令寄存器IR
5、,指令译码器ID,数据指针DPTR,16位地址寄存器,寻址外部RAM,也可寻址外部ROM中表格数据。8051的存储器组织将程序存贮器和数据存贮器分开,并各自有寻址机构和寻址方式(哈佛型结构单片机)。8051单片机物理上有4个存贮空间,片内ROM,片外ROM,片内RAM,片外RAM,可在片外扩展RAM和ROM,各有64Kb的寻址范围。8051有256B数据存贮器RAM,4KB程序存贮器ROM。4KB的ROM,片内ROM和片外ROM公用,地址为0000H-0FFFH,1000H-FFFFH地址为片外ROM专用。控制信号EA=1时,先片内ROM(4KB),指令地址超过0FFFH,自动转向片外ROM。
6、EA=0,只从片外ROM取指令。程序存储器ROM的某些单元仅供系统使用,0000H-0002H所有执行程序的入口地址,0003H-002AH均匀分为5段,5个中断服务程序的入口,用户不应进入上述区域。RAM在地址上和ROM重叠,8051通过不同信号选通ROM,RAM。从外部ROM取指令时用选通信号PSEN,而从外部RAM读写数据采用RD和WR选通。8051内部256B的RAM字节,00H-7FH,真正的RAM区;80H-FFH,专门用于特殊功能寄存器(SFR)。低128字节分三个区域(00H-7FH),00H-1FH四组工作寄存器,每组占用8个RAM字节,记为R0-R7,某一时刻,CPU只能使
7、用其中一组工作寄存器。20H-2FH共16个字节,128位,除做一般RAM读写外,还可对每一个字节的每一位进行操作。30H-7FH,80个字节,一般的用户RAM区域。8051单片机特殊功能寄存器中包含有堆栈指针SP。8051单片机复位后,堆栈指针SP总是初始化到内部RAM的07H位置。8051堆栈属于向上生长型,数据压入堆栈,SP内容自动加1作为本次进栈的地址指针,然后存信息。8051并行接口P0-P3,P0口采用总线复用技术,P2口作地址的高8位,P1口只作IO口,P0,P2,P3有第二功能。8051的内部资源包括串行口,定时器/计数器,中断。8051的工作方式包括复位方式,程序执行方式,单
8、步执行方式,低功耗操作方式,EPROM编程和校验方式。8051的系统扩展主要包括外部程序存储器的扩展和数据存储器的扩展。8051的寻址方式,指令中给出的地址寻找真实操作数地址的方式。8051包括7种寻址方式,寄存器寻址。直接寻址、寄存器间接寻址、立即寻址、变址寻址、相对寻址和位寻址。8051指令系统包括数据传输指令、转移指令、算术运算指令和逻辑运算指令等。1.2 8051的内部资源一、中断8051有5个中断源,有两个中断优先级,每个中断优先级可以编程控制,中断允许受到CPU开中断和中断源开中断的两级控制。5个中断源包括:外部中断请求0、外部中断请求1、片内定时器/计数器0溢出中断请求、片内定时
9、器/计数器溢出中断请求1、片内串口发送/接收中断请求。为了了解每个中断源的是否产生了中断,中断系统对应设置多个中断请求触发器实现记忆。这些触发器包括定时器/计数器控制寄存器TCON,串口控制寄存器SCON,中断优先级寄存器IP,中断允许寄存器IE。中断响应,8051单片机的每个机器周期采样各中断源的中断请求标志位,如果没有下述阻止条件:1. CPU正在处理同级或更高级的中断;2. 现行机器周期不是所执行指令的最后一个机器周期;3. 正在执行的是RETI或是访问IE或IP的指令。将在下一个机器周期响应被激活了的最高级中断请求。CPU在中断响应后完成如下操作:1. 硬件清除相应的中断请求标志;2.
10、 执行一条硬件子程序,保护断点,并转向中断服务程序入口;3. 结束中断时执行RETI指令,恢复断点,返回主函数。同一优先级设置时,优先级由高至低的顺序是:INT0-T/C0-INT1-T/C1-Serial。寄存器组切换,当一个特定的任务正在执行,可能有更紧急的任务需要CPU处理,在一个具有优先级的系统里,CPU不是等待第一个任务完成,而是假定前一个任务已经完成,立即处理新任务。若程序流程立即转向新任务,新任务使用的各寄存器破坏了第一个任务使用的中间信息。当第一个任务重新执行时,寄存器的值可引起错误发生,解决的方法每次发生任务变化时执行一些指令,被称为上下文切换。高优先级的中断可以中断正在处理
11、的低优先级程序,因而必须注意寄存器组。最好给每个优先级程序分配不同的寄存器组。因此,中断服务函数的完整语法如下:返回值 函数名(参数)模式重入interrupt n using n当调用中断函数时,SFR中的ACC、B、DPH、DPL、PSW入栈。二、定时器/计数器(T/C)8051系列单片机至少有两个16位内部定时器/计数器,8052有三个定时器/计数器,两个基本定时器/计数器是T/C0和T/C1。它们既可以编程为定时器使用,也可以编程为计数器使用。若做定时器用,计数内部晶振驱动时钟;若做计数器使用,计数输入管脚的脉冲信号。定时器实际上也是工作在计数方式下,只不过对固定脉冲计数,由计数值可计
12、算出时间,有定时功能。T/C作定时器用时,对振荡源12分频的脉冲计数,每个机器周期计数值加1,1/12fosc=计数率,每2us计数值加1。T/C作计数器用时,计数脉冲来自外部脉冲输入管脚T0、T1,当T0/T1脚上出现负跳变时,计数值加1,识别管脚上的负跳变需要2个机器周期,24个振荡周期,可计数最高外部脉冲频率为1/24fosc。高于此计数率,计数出错。与T/C有关的特殊功能寄存器包括计数寄存器TH和TL,控制寄存器TCON,方式控制寄存器TMOD,定时器/计数器2控制寄存器(T/C2)。定时器/计数器的工作方式如下:1. 方式0,为13位T/C,由TH提供高8位,TL提供低5位的计数器,
13、满计数值为2,但启动前可以预置计数初值;2. 方式1,方式1与方式0基本相同,唯一区别在于计数寄存器的位数是16位,由TH和TL寄存器各提供8位,满计数值为2;3. 方式2,是8位可自动重装载的T/C,满计数值为2。4. 方式3,只适用于T/C0,当T/C0工作在方式3时,TH0和TL0成为两个独立的8位计数器。只有将T/C1用作串口的波特率发生器时,T/C0才能工作在方式3,相当于增加了一个定时器。5. T/C2的工作方式,T/C2包含一个16位重装载方式,计数溢出后,自动在瞬间重装载。T/C2还有捕获方式,它把瞬时计数值传到另外的CPU可读取的寄存器对。定时器/计数器的初始化,包括编程TM
14、OD,置初值TH和TL,编辑TE,启动T/C。计数初值计算,定时器工作方式下:T/C对机器周期脉冲进行计数,根据晶振频率算出机器周期,一个机器周期为12/fosc。那么自然可算出需要的计数初值。计数器工作方式下,由于计数器向上计数,所以可置负数。三、串行口8051单片机片上有UART(通用异步接收/发送)用于串行通信,发送时数据由TXD端送出,接收时数据由RXD端输入。有两个缓冲器SBUF,一个作发送缓冲器,另一个作接收缓冲器。它是可编程的全双工的串行口。短距离的机间通信可使用UART的TTL电平,使用驱动芯片可接成RS232C和通用微机进行通信。波特率时钟必须从内部定时器1或定时器2获得。与
15、串行口有关的SFR包括串口控制寄存器SCON和电源控制寄存器PCON。串行口的工作方式包括:1. 方式0,为移位寄存器输入/输出方式,串行数据通过RXD输入输出,TXD则用于输出移位时钟脉冲;2. 方式1,是10位异步通信方式,1位起始位(0),8位数据位和1位停止位(1),其中的起始位和停止位是在发送时自动插入;3. 方式2和方式3,都是11位异步接收/发送方式,不同在于波特率不同。串行口的初始化包括,定时器1工作方式,T/C1置初值,T/C1启动,串行口控制SCON,开CPU中断和源中断。第二章 8051的C语言编程一、教学目的和要求 要求学生通过本章学习,了解8051的编程语言,掌握C5
16、1的数据与运算、流程控制语句、构造数据类型、函数以及模块化程序设计。二、教学重点2.1 8051编程语言和C51程序结构2.2 C51的数据以及运算2.3 C51的构造数据类型2.4 函数的使用和模块化程序设计三、教学难点 C51的程序结构和相关的编写规则 C51数据与运算一、数据与数据类型数据,具有一定格式的数字或数值叫做数据。数据类型,数据的不同格式叫做数据类型。数据结构,数据按一定的数据类型进行的排列、组合、架构称为数据类型。数据类型分为基本类型、构造类型、指针类型和空类型。基本类型分为位型、字符型、整型、长整型、浮点型和精度浮点型。构造类型分为数组类型、结构体类型、共用体和枚举。二、C
17、51运算符、表达式以及规则常量,在程序运行的过程中,其值不能改变的量。与变量一样,常量也有不同的数据类型。变量,在程序运行过程中,其值可以改变的量。一变量主要由两部分组成,一是变量名,一是变量值。每一个变量都有一个变量名,在内存中占据一定的存储空间,并在该内存单元存放该变量的值。在程序编制中使用大量不必要的变量类型,会导致C编译器相应的增加所调用的库函数的数量,以处理大量增加的变量类型。最终会使程序变得过于庞大,运行速度减慢,甚至会在连接时,出现因程序过大装不进代码区的情况。通常使用的数据变量包括位变量、字符变量、整型变量、长整型变量、浮点型变量。地址为00H-7FH的低128字节片内RAM区
18、被划分为3个区域。通用寄存器区,可位寻址区,用户RAM区。通用寄存器区被划分为4组寄存器,0组(00H-07H),1组(08H-0FH),2组(10H-17H),3组(18H-1FH);每组含8个通用寄存器R0-R7,共32个通用寄存器。寻址采用寄存器名寻址;字节地址寻址。当用寄存器名来寻址时,程序状态字中的PSW的RS1和RS0两位的值来决定寄存器组。RS1(PSW.4)RS0(PSW.3)3组112组101组010组00 可位寻址区包括20H-2FH;用户RAM区30H-7FH;编译器会通过将变量、常量定义为不同的存贮类型,将它们定位在不同的存贮区中。 data/bdata,定义常量和变量
19、时,编译器会将它们定义在片内RAM区,片内RAM区存放临时性传递变量或使用频率较高的变量。 Code存贮数据类型时,编译器将其定位在ROM或EPROM中,这里存放指令代码或其它非易变信息。如果定义数据和变量时缺省存贮类型标识符,编译器会自动选择默认的存贮类型,有SMALL、COMPACT和LARGE指令限定。8051单片机片内有21个特殊功能寄存器(SFR),它们分散在片内RAM区的高128字节中,地址80H-0FFH,对SFR的操作,只能用直接寻址方式。 C51与标C不同之处之一在于引入关键字“sfr”Sfr SCON=0x98;Sfr16 T2=0xcc;需经常单独访问SFR中的位时,使用
20、关键字“sbit”。8051单片机芯片内带有4个8位的并行口,共32根I/O口线。每个口主要由4部分组成:端口锁存器,即SFR中的P0口-P3口;输入缓冲器;输出缓冲器;引致芯片外的端口引脚。其中P1-P3口为准双向口,P0口为双向3态口。8051单片机芯片引脚中没有专用的地址总线和数据总线,向外扩展存贮器和接口时,由P2口输出地址总线的高8位(A15-A8)。由P0口输出地址总线的低8位(A7-A0);同时对P0口采用总线复用技术,P0口又兼作8位双向数据数据总线D7-D0,即由P0分时输出低8位地址或输入输出8位数据。在不做总线扩展时,P0口和P2口可以作为普通的IO口使用。除8051芯片
21、上的4个I/O口以外,还可以在片外扩展硬件I/O口。8051没有专用的I/O指令,其口地址与数据存贮器地址是统一编址的,即把一个口当作数据存贮器中的一个单元来看待。8051的内部口是可以位寻址的,而大部分外部口是字节寻址的。在给口指定硬件扩展电路时,可以在内部口中设置I/O控制线和信号线,而将外部口定义为字节宽度I/O口,这样在编程时可大大简化寻址,并避免使用许多逻辑屏蔽位。在使用C51进行编程时,8051片内I/O口与片外扩展的I/O口可以统一在头文件中定义,也可在程序中定义。对于片外扩展I/O口,根据硬件译码地址,将其视为片外数据存贮器的一个单元,使用“#define”语句进行定义。位变量
22、的C51定义的语法和语义。函数课包含类型为“bit”的参数,也可将其作为返回值。位变量不能定义为一个指针,不存在位数组,在位定义中允许定义存贮类型,位变量都被放入一位段中。但存贮类型被限制为data或idata。可位寻址对象指可以字节或位寻址的对象,该对象应位于8051片内可位寻址的RAM区。C51算术运算符包括+,-,/,。乘除,求余运算符优先级大于加减。可以用强制类型转换运算符改变运算优先级。C51关系运算符包括,=,=,!=,前4个优先级相同大于后2个。关系运算符低于算术运算符,高于赋值运算符。C51逻辑运算符包括&,|,!。C51位操作运算符,&和|。自增减运算符+i,-i,i+,i-
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 趣味 电子 产品设计 制作 教案
链接地址:https://www.31ppt.com/p-4297504.html