学习任务一51系列单片机AT89S51基础知识单片机应用技术教案
- 格式:doc
- 大小:122.50 KB
- 文档页数:6
单片机应用技术(C语言)教学大纲一、说明1、课程的性质和内容本课程是高级技校应用电子专业的专业课。
主要内容包括:认识单片机,点亮彩灯,简易数字钟,简易计算器,键控彩灯,简易频率计,单片机双机通信,简易波形发生器,简易数字电压表,移动字幕的制作,校园打铃系统。
2、课程的任务和要求本课程的主要任务是让学生熟悉AT89S51系列单片机的硬件结构,会使用常见的单片机外围器件,会用单片机组成具有特定功能电子电路,能用C语言编程驱动单片机AT89S51完成各种基本控制功能,能用单片机实现简单的系统电路,具备初步的单片机应用开发能力。
通过本课程的学习,学生应达到以下几个方面的要求:(1)熟悉单片机AT89S51的结构、引脚功能及工作原理。
(2)熟悉C语言程序的编写方法。
(3)能设计以单片机为核心、相关外围电路组成并能完成特定功能的电路。
(4)能根据单片机的工作原理和外围电路的功能要求进行软件设计,会分析程序设计思路和设计方法。
(5)具有初步的单片机控制应用系统硬件和软件设计能力。
3、教学中应注意的问题(1)教学中注意以学生为中心,做到教师边讲解边演示,学生边学边练习实践,培养学生的应用开发能力。
(2)任课教师应根据本学校设备及学生的具体情况进行教学。
(3)在教学实施过程中,教师应多联系生产实际和相关课程,还可选用一些更合适的应用实例进行讲解,以激发学生的兴趣,培养学生解决实际问题的能力。
(4)教学中应根据学生情况掌握好讲练比例,充分利用多媒体设备、实验设备和实验电路等进行直观教学。
二、学时分配表三、教学要求、内容及建议课题一认识单片机教学要求1、熟悉AT89S51的PDIP40\TQFP44和PLCC44三种封装形式,熟练掌握AT89S51单片机的各引脚功能。
2、掌握用AT89S51构成的单片机最小系统及各部分电路的功能。
3、认识实验电路板上的主要元器件包括AT89S51单片机、晶体振荡器、锁存器74HC573、MAX232芯片、RS-232串口端、数码管显示电路、发光二极写显示电路、键盘电路、排阻等元件。
单片机应用技术教案教案标题:单片机应用技术教学教学目标:1. 了解单片机的基本原理和结构。
2. 掌握单片机的基本编程语言和开发环境。
3. 学习单片机的常用应用技术,如IO口控制、定时器、中断等。
4. 能够基于单片机完成简单的应用项目。
教学内容和教学步骤:第一课:单片机基础知识1. 单片机的基本概念和应用领域介绍。
2. 单片机的基本结构和工作原理。
3. 单片机的发展历程和分类。
第二课:单片机编程语言和开发环境1. 常用的单片机编程语言介绍,如C语言和汇编语言。
2. 单片机的开发环境介绍,如Keil C和Proteus等。
3. 编写简单的单片机程序,如LED闪烁和按键检测。
第三课:单片机IO口控制1. 单片机的IO口介绍和使用方法。
2. 学习如何控制LED和数码管等外设。
3. 编写程序实现LED的亮灭和数码管的显示。
第四课:单片机定时器应用1. 单片机定时器的基本原理和使用方法。
2. 学习如何使用定时器生成延时和产生PWM信号。
3. 编写程序实现LED呼吸灯和舵机的控制。
第五课:单片机中断应用1. 单片机中断的基本原理和使用方法。
2. 学习如何使用中断处理器件的事件。
3. 编写程序实现外部中断触发LED亮灭和按键检测。
第六课:单片机应用实例1. 综合应用前面所学的知识,设计并实现一个简单的单片机应用项目。
2. 学生自主选择应用项目,如温度测量、蜂鸣器控制等。
3. 学生展示并讲解自己的应用项目。
教学评价:1. 小组讨论:学生分组讨论并解决单片机应用中遇到的问题。
2. 上机实验:学生在实验室中完成一系列的单片机应用实验。
3. 课堂测试:对学生课堂掌握的知识进行检测。
4. 项目评估:评估学生完成的单片机应用项目的功能和设计思路。
教学资源:1. 教材:单片机应用技术教程。
2. 实验器材:单片机开发板、LED、数码管、按键、电机等。
3. 软件:Keil C、Proteus等单片机开发工具。
教学参考:1. 单片机技术与应用教程,刘美前等。
第2章AT89S51单⽚机原理与基本应⽤系统单⽚机实⽤教程第2章AT89S51单⽚机原理与基本应⽤系统本章主要内容1、单⽚机的内部结构与引脚功能2、单⽚机存储器空间配臵与功能3、汇编语⾔指令格式与内部RAM的操作指令4、单⽚机I/O输⼊输出端⼝结构及⼯作原理5、单⽚机基本应⽤系统⼀、AT89S51单⽚机内部结构(1)⼀个8位的CPU;(2)⼀个⽚内振荡器及时钟电路;(3)4KB的Flash ROM;(4)128B的内部RAM(5)可扩展64KB外部ROM和外部RAM的控制电路;(6)两个⼗六位的定时/计数器;(7)26个特殊功能寄存器(双数据指针);(8)4个8位的并⾏⼝;(9)⼀个全双⼯的串⾏⼝;(10)5个中断源,两个外部中断,三个内部中断;(11)内部硬件看门狗电路;(12)⼀个SPI串⾏接⼝,⽤于芯⽚的在系统编程(ISP)。
1、电源VCC (P40)——芯⽚电源,接+5V 。
VSS (P20)——接电源地。
⼆、AT89S51单⽚机引脚功能2、时钟XTAL1(P19)——晶体振荡电路的反相器输⼊端XTAL2(P18)——晶体振荡电路的反相器输出端。
使⽤内部振荡电路时,该引脚外接⽯英晶体和补偿电容。
使⽤外部振荡输⼊时从XTAL2输⼊,此时XTAL1需接地。
3、控制控制引脚有4个,先学习其中的两个。
(1)RST/VPD——复位/备⽤电源RST复位功能是单⽚机正常⼯作必不可少的,因为复位可以使单⽚机从程序的开头运⾏,使单⽚机按照⼈们设计的程序运⾏,在单⽚机系统上电开始⼯作,或单⽚机系统由于外界⼲扰偏离正常运⾏,都需要复位。
AT89S51单⽚机是⾼电平复位,只要在该引脚上⼀段时间(两个机器周期以上)的⾼电平,单⽚机就复位。
在正常运⾏程序时该引脚为低电平。
VPD功能是在VCC掉电情况下,该引脚接备⽤电源,向⽚内的RAM供电,使RAM中的数据不丢失。
3、控制(2)EA/VPP——内外ROM选择/EPROM编程电源在通常的应⽤中EA功能是作为内部和外部ROM的选择端。
14 第2
章
AT89S51单片机的片内硬件结构 【内容概要】本章介绍AT89S51单片机的片内硬件结构。
读者应牢记AT89S51单片机的片内硬件结构,以及片内外设资源的基本功能及工作原理,重点掌握AT89S51单片机的存储器结构、常见的特殊功能寄存器的基本功能以及复位电路与时钟电路的设计,掌握单片机最小系统的概念。
最后介绍低功耗节电模式。
本章的学习目的是为单片机应用系统的硬件设计打下基础。
单片机应用的特点是编写程序来控制硬件电路,所以,读者应首先熟知并掌握AT89S51单片机片内硬件的基本结构和特点。
2.1 AT89S51单片机的硬件组成
AT89S51单片机片内硬件结构如图2-1所示,它把那些作为控制应用所必需的基本外围部件都集成在一个集成电路芯片上。
AT89S51单片机具有如下部件及特性。
图2-1 AT89S51单片机片内结构
(1)8位CPU。
(2)数据存储器(128B RAM)。
(3)程序存储器(4KB Flash ROM)。
6)看门狗定时器(WDT)
7)串行口
8)P1口、P2口、P3口、P0口
9)特殊功能寄存器(SFR)
2.单片机的引脚功能
引脚按其功能可分为如下三类。
(1)电源及时钟引脚。
(2)控制引脚。
(3)I/O端口引脚。
几个比较重要的引脚功能介绍
1)电源引脚
2)时钟引脚
3)控制引脚
3.单片机的外围电路
1)时钟电路及时序
(1)内部时钟方式。
图1-3 AT89S51的内部时钟方式电路(2)外部时钟方式。
图1-4 AT89S51的外部时钟方式电路
2)时钟周期、机器周期与指令周期
(1)时钟周期。
时钟周期是时钟控制信号的基本时间单位。
(2)机器周期。
CPU完成一个基本操作所需时间为机器周期。
(3)指令周期。
指令周期是指执行一条指令所需的时间。
3)复位操作和复位电路
(1)复位操作。
复位操作即单片机的初始化操作,给复位脚RST加上大于2个机器周期(即24个时钟振荡周期)的高电平就可以使AT89S51复位。
复位时,PC初始化为0000H,程序从0000H单元开始执行。
(2)复位电路。
复位电路分为上电自动复位和按键复位两种。
三、单片机的存储器结构
1.单片机的数据存储器RAM
1)内部RAM
(1)工作寄存器区。
内部RAM的00H~1FH为工作寄存器区,共32个字节,分为4组,每组为8个8位寄存器(R0~R7)。
在任一时刻,CPU只能使用其中的一组寄存器,当前程序使用的工作寄存器组是由程序状态字PSW的RS0、RS1位来选择的。
(2)位寻址区。
内部RAM的20H~2FH字节为可位寻址区域,这16个字节共128位,每一位都有一个位地址,位编址为00H~7FH,用户可用程序对它们直接进行清零、置位、取反和测试等操作。
位寻址区的RAM单元也可按字节寻址,作为一般的数据缓冲器使用。
(3)用户RAM区。
内部RAM的30H~7FH字节为用户RAM区,即通用数据缓冲区,共80个单元,作为一般数据缓冲使用。
52子系列的用户RAM区为30H~FFH范围内的208个字节。
对于用户RAM区,只能以存储单元的形式来使用,没有其他任何规定和限制。
2)单片机的特殊功能寄存器SFR
常用的特殊功能寄存器如下。
(1)ACC,累加器,通常用A表示。
(2)B,B寄存器。
在做乘、除法时存放乘数或除数,不做乘、除法时,使用比较随意。
(3)AUXR,辅助寄存器,它的各位功能见表1-5。
兴趣。
任务分析
程序设计是单片机开发最重要的工作,而程序在执行过程中常常需要完成延时的功能。
例如,在交通灯的控制程序中,需要控制红灯亮的时间持续30 s,就可以通过延时程序来完成。
延时程序是如何实现的呢?在单片机编程里并没有真正的延时指令,从前面介绍过的机器周期和指令周期的概念中,我们知道单片机每执行一条指令都需要一定的时间,所以要达到延时的效果,可以让单片机不断地执行没有具体实际意义的指令或循环重复某种操作,从而达到延时的效果。
〖知识链接〗
一、简单的单片机时间控制
1.空操作指令NOP
空操作指令功能只是让单片机执行没有意义的操作,消耗一个机器周期。
2.循环转移指令DJNZ
循环转移指令功能是将第一个数进行减1 并判断是否为0,不为0 则转移到指定地点,为0 则往下执行。
3.利用定时器延时
上面的定时方式误差较大,若想精确定时,则要利用单片机的定时器T0或T1来完成。
详见“学习任务五中的单片机定时/计数器应用——交通灯控制系统设计”部分。
利用以上三种操作方式的组合就可以比较精确地编写出所需要的延时程序。
二、程序流程图
常见的流程图结构说明如图1-19所示。
图1-19 常见的流程图结构说明。