单片机原理及应用(C语言版)

合集下载

单片机原理及应用教程(C语言版)-第5章 MCS-51单片机的中断系统

单片机原理及应用教程(C语言版)-第5章 MCS-51单片机的中断系统

5.2.5 中断允许控制
例5-1 假设允许INT0、INT1、T0、T1中断,试 设置IE的值。 (2)汇编语言程序 按字节操作: MOV IE,#8FH 按位操作: SETB EX0 ;允许外部中断0中断 SETB ET0 ;允许定时器/计数器0中断 SETB EX1 ;允许外部中断1中断 SETB ET1 ;开定时器/计数器1中断 SETB EA ;开总中断控制位
IP (B8H)
D7 —
D6 D5 D4 D3 D2 D1 D0 — PT2 PS PT1 PX1 PT0 PX0
PT2:定时器/计数器T2的中断优先级控制位 PT2设置1则T2为高优先级,PT2设置0则T2为 低优先级。 后面各位均是如此,设置1为高优先级,设置0 为低优先级,不再一一赘述。 PS:串行口的中断优先级控制位。 PT1:定时器/计数器1的中断优先级控制位。 PX1:外部中断1的中断优先级控制位。 PT0:定时器/计数器0的中断优先级控制位。 PX0:外部中断0的中断优先级控制位。
5.2.4 中断请求标志
4.定时器/计数器T2中断请求标志
T2CON D7 D6 D5 (C8H) TF2 EXF2 D4 D3 D2 D1 D0
EXF2:定时器/计数器2的外部触发中断请求标志 位。T2以自动重装或外部捕获方式定时、计数,当 T2EX(P1.1)引脚出现负跳变时,TF2由硬件置1, 向CPU请求中断,CPU响应中断后,EXF2不会被硬 件清0,需要在程序中以软件方式清0。
5.2.3 外中断触发方式
TCON格式如下:
D7 D6 D5 D4 D3 D2 D1 D0
TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0
IT0=1,外中断0为下降沿触发 CPU在每一个机器周期的S5P2期间对P3.2引 脚采样,若上一个机器周期检测为高电平,紧挨着 的下一个机器周期为低电平,则使IE0置1。 IT1:外中断1触发方式控制位。功能同IT0

模块4-单片机原理及应用(C语言版)-杨居义-清华大学出版社

模块4-单片机原理及应用(C语言版)-杨居义-清华大学出版社

while(1)
//无限循环
{
1 知识内容
4.1.1任务18-1:用定时器T0
查询方式控制P3口8位LED闪烁

while(TF0==0) //查询标志位是否溢出
;
//空操作
TF0=0; /*若计时时间到,TF0=1,需要软件将其
清0*/
P3=~P3; //将P3按位取反,实现LED的闪烁
TH0=(65536-50000)/256; /*定时器T0的高8位
(1) 定时器/计数器的初始化; (2) 定时器/计数器与中断的综合应用 。
1 知识内容
4.1项目18:认识单片机 定时器/计数器

4.1项目18:认识单片机定时器/计数器 学习目的:
(1) 了解80C51定时器/计数器的结构; (2)了解80C51定时器/计数器的工作原理; (3)掌握定时器/计数器方式寄存器TMOD设置; (4)掌握定时器/计数器控制寄存器TCON设置; (5)掌握定时器/计数器的初始化步骤; (6)掌握定时或计数初值的计算。
模块小结
课后练习
1 知识内容

学习目的:
(1) 了解80C51定时器/计数器的结构; (2)掌握定时器/计数器方式寄存器TMOD设置; (3)掌握定时器/计数器控制寄存器TCON设置; (4)掌握定时器/计数器的初始化步骤;
(5 ) 掌握定时或计数初值的计算; (6)掌握80C51定时器/计数器编程方法。 学习重点和难点:

3.任务实现 (1)分析 用定时器0、方式1, 则TMOD =××××0001B 由于T机器=12T时钟=121/fosc=1us,而方式1的最
大定时时间为65.536ms,所以可选择:50ms。定时 器初始值为:

单片机原理及应用教程(C语言版)-第4章 单片机C语言及程序设计

单片机原理及应用教程(C语言版)-第4章 单片机C语言及程序设计

4.3.2 C51变量的存储类型
三、外部存储
外部(存储)变量:用extern声明的变量为外 部变量,是在其它文件定义过的全局变量。 用 extern声明后,便可以在所声明的文件中使用。
需要注意的是:在定义变量时,即便是全局变 量,也不能使用extern修饰。
4.3.2 C51变量的存储类型
四、寄存器存储
动态(存储)变量:用auto定义的为动态变量, 也叫自动变量。
作用范围:在定义它的函数内或复合语句内部 当定义它的函数或复合语句执行时,C51才为 变量分配存储空间,结束时所占用的存储空间释放。 定义变量时,auto可以省略,或者说如果省略 了存储类型项,则认为是动态变量。动态变量一般 分配使用寄存器或堆栈。
“C51”概念:为了与ANSI C区别,把“单片 机C语言”称为“C51”,也称为“Keil C”。
4.1.1 C语言编程的优势
在编程方面,使用C51较汇编语言有诸多优势: 1)编程容易 2)容易实现复杂的数值计算 3)容易阅读与交流 4)容易调试与维护 5)容易实现模块化开发 6)程序可移植性好
本 无符号整型 unsigned int 2字节 0~65535 有符号整型 signed int 2字节 -32768~32767
类 无符号长整型 unsigned long 4字节 0~4294967295
型 有符号长整型 signed long 4字节 -2147483648~2147483647
MCS-51单片机有四个存储空间,分成三类, 它们是片内数据存储空间、片外数据存储空间和 程序存储空间。
MCS-51单片机有更多的存储区域:由于片内 数据存储器和片外数据存储器又分成不同的区域, 所以单片机的变量有更多的存储区域。

STM32系列单片机原理及应用-C语言案例教程 第1章 单片机综述

STM32系列单片机原理及应用-C语言案例教程 第1章 单片机综述

第1章 单片机综述
其功能主要表现在:
(1)内核:ARM32位Cortex-M3CPU,最高工作频率72MHz, 1.25DMIPS/MHz,单周期乘法和硬件除法
(2)存储器:片上集成32-512KB的Flash存储器。6-64KB的SRAM存储器 (3)时钟、复位和电源管理:2.0-3.6V的电源供电和I/O接口的驱动电压。 POR、PDR和可编程的电压探测器(PVD)。4-16MHz的晶振。内嵌出厂前调校的 8MHz RC振荡电路。内部40 kHz的RC振荡电路,用于CPU时钟的PLL,带校准用 于RTC的32kHz的晶振。 (4)调试模式:串行调试(SWD)和JTAG接口。最多高达112个的快速I/O端口、 11个定时器和13个通信接口 比较流行的器件:STM32F103系列、STM32 L1系列、STM32W系列。
(1)运算器和控制器集成在一个芯片上,称之为CPU芯片。 (2)存储器由半导体存储器芯片组成。 (3)CPU,存储器,I/O 口通过AB,DB,CB三总线交换信息 (4)外设通过I/O口芯片与机器内各部件交换信息。 3.单片机是集成了组成微机的CPU、存储器、I/O口以及其它辅助电路 的大规模集成电路芯片。
3.单片机与嵌入式系统
单片机,就是把中央处理器 CPU、存储器、定时器、I/O 接口电路 等一些计算机的主要功能部件集成在一块集成电路芯片上的微型计算机。 单片机的内部结构如图1.l所示。
时序电路 CPU
总线 控制 逻辑
存储器 I/O
图1.1单片机的内部结构
STM32是一款性价比高的单片机系列。 为高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex-M内核, 具有高性能外设:1μs的双12位ADC、4MB/s的UART、18MB/s的SPI等

单片机原理及应用(C语言版)

单片机原理及应用(C语言版)

目录分析
第一节计算机发展概 述
第二节 80C51单片 机介绍
本章小结 练习题
第一节函数及函数的 调用
第二节数制与数值运 算
本章小结 练习题
第一节Keil软件概 述及其安装
第二节CH340串口驱 动的安装
第三节STC下载软件 STC-ISP的使用
第四节使用Keil软 件新建一个工程
本章小结
练习题
4
本章小结
5
练习题
第二节 80C51单片 机的串行接口
第一节串行通信基 础
第三节单片机串行 接口应用举例
本章小结
练习题
第一节初识I2C
第二节EEPROM的应 用
本章小结 练习题
1
第一节 SPI时 序初步认识
2
第二节实时时 钟芯片DS1302
3
第三节复合数 据类型
4
本章小结
5
练习题
1
第一节程序文 件结构
这是《单片机原理及应用(C语言版)》的读书笔记模板,暂无该书作者的介绍。
读书笔记
这是《单片机原理及应用(C语言版)》的读书笔记模板,可以替换为自己的心得。
精彩摘录
这是《单片机原理及应用(C语言版)》的读书笔记模板,可以替换为自己的精彩内容摘录。
感谢观看
2
第二节程序的 版式规范
3 第三节单片机
程序命名规则 与变量选择
4
第四节表达式 和基本语句
5
第五节函数设 计规范
本章小结
练习题
01
第一节 74HC595芯 片
02
第二节 74LS138芯 片
03
第三节 74HC245芯 片
04
第四节 ULN2003双 极型线性集 成电路

第4章单片机原理及应用(C51编程)

第4章单片机原理及应用(C51编程)

4.3 C51的函数
4.3.1
返回值类型 { 函数体 }
C51函数的定义
函数名(形式参数列表)[编译模式][reentrant][interrupt n][using n]
一般形式:

编译模式为SMALL、COPACT或LARGE reentrant用于定义可重入函数 interrupt n 用于定义中断函数,n为中断号,可以为0~31 using n 确定工作寄存器组,取值为0~3
从而使DBYTE用于以字节形式对data区访问,可以写成:
与此类似: CBYTE用于以字节形式对code区进行访问; PBYTE用于以字节形式对pdata区进行访问; XBYTE用于以字节形式对xdata区进行访问。
CWORD、DWORD、PWORD和XWORD用于以字形式对 code区、data区、pdata区和xdata区进行访问。
4.2.4
C51程序编写示例
C51源程序
C51编译器
浮动目标码模块 系统库 连接器
列表文件 用户库
绝对定位目标码文件
映像文件
软件模拟器
转换器
硬件仿真器
OMF51格式文件 写入程序存储器 编程器
【例4-1】将30H至3FH共16个RAM单元初始化为“55H”。 #include <reg52.h> #include <absacc.h> void main(void) { unsigned char i; for (i=0;i<=15;i++) { DBYTE[0x30+i]=0x55; } while(1); } 编译系统自动连接了 startup.a51生成代码 一是将内部RAM的 00H~7FH清0; 二是设置堆栈指针SP。 有全局变量赋值时 编译系统会自动连接 init.a51生成代码

单片机原理及应用C语言版

单片机原理及应用C语言版
使整个控制系统的效率和可靠性大为提高
2019/11/20
24
1.2.2 单片机的应用领域
单片机的应用范围十分广泛,主要的应用领 域有:
① 工业控制
②仪器仪表
③ 计算机外部设备与智能接口
④ 商用产品
⑤家用电器
⑥ 消费类电子产品
⑦ 通讯设备和网络设备
⑧ 儿童智能玩具
⑨ 汽车,建筑机械,飞机等大型机械设备
叫做单片微型计算机(Single Chip Microcomputer,SCM),简称单片机。
单片机为工业测控而设计,又称微控制器
(MCU)。
2019/11/20
14
2019/11/20
15
1.1.2 单片机的发展历史
一 、4位单片机阶段
1975年美国德克萨斯仪器公司(TI)首次 推出4位单片机TMS-1000。
16位单片机可用于高速复杂的控制系统。
2019/11/20
18
四、32位单片机
近年来,各个计算机生产厂家已进入更 高性能的32位单片机研制、生产阶段。
应用于电子收款机、机顶盒、保安系统、 自动售货机、医疗系统、航空系统等。
2019/11/20
19
1.2 单片机的特点及应用领域
主要内容
1.2.1 单片机的特点 1.2.2 单片机的应用领域 1.2.3 单片机发展趋势
4位单片机主要用于家用电器、电子玩具等。
2019/11/20
16
二、 8位单片机阶段
1976-1978 初级8位单片机 Intel MCS48 系列
• 1978-1982 高档8位单片机 Intel MCS51系列:
• -51子系列:8031/8051/8751

模块6-单片机原理及应用(C语言版)-杨居义-清华大学出版社

模块6-单片机原理及应用(C语言版)-杨居义-清华大学出版社

1 知识内容
模块6 80C51单片机串行通信技术

学习重点和难点:
(1) 串行通信的原理和数据帧格式。 (2) RS-232C的接口标准及电气标准。 (3) 80C51串行口的通信方式设置及波特率设置方法。 (4) 80C51单片机间的通信和单片机与PC机的通信程 序设计方法。
1 知识内容
6.1项目27:认识80C51 串行通信

/************************************************************** 函数功能:延时约150ms **************************************************************/ void delay(void) {

模块6 认识80C51单片机串行通信技术 学习目的:
(1) 了解串行通信和并行通信原理; (2) 理解串行通信的3种制式; (3) 掌握串行通信的标准; (4) 掌握80C51串行口各寄存器的设置; (5)掌握80C51单片机与单片机之间进行通信的程序设 计及仿真;
(6)掌握80C51单片机与PC机之间进行通信的程ห้องสมุดไป่ตู้设 计及仿真。
模块6 80C51单片机串行通信 技术分析及应用
模块6 80C51单片机串行通信技术分析及应用
6
···教········学·········练
1 知识内容
目录

01项目27:认识80C51串行通信 02项目28:认识80C51串口的通信方式 03拓展实训项目: 04
1 知识内容
学习 1.; 内容 2. 。
1 知识内容
6.1.1任务27-1:方式0控制 流水灯循环点亮

《单片机原理及应用》实验指导书(C语言)

《单片机原理及应用》实验指导书(C语言)

《单片机原理及应用》实验指导书(C语言)《单片机原理及应用》实验指导书(C语言)某某大学物电学院微机教研室某某2022前言由于单片机具有高可靠性、超小型、低价格、容易产品化等特点,在仪器仪表智能化、实时工业控制、实时数据采集、智能终端、通信设备、导航系统、家用电器等控制应用领域,具有十分广泛的用途。

由于目前在国内单片机应用中,MCS-51系列单片机仍然是一种主流单片机,所以本实验指导书为学习MCS-51单片机的学生,配合《单片机原理及应用》课程的教学,结合本学院自制单片机教学实验板编写了这本实验指导书。

《单片机原理应用及》是一门实践性很强的课程,提高教学质量的一个重要环节是上机实习和训练,无论是学习汇编语言程序设计,还是学习接口电路和外设与计算机的连接,或者软硬兼施地研制单片机应用系统,不通过加强动手是不能获得预期效果的。

本实验指导书提供多个实验的指导性材料,有些实验还有一些有一定难度的选做项目,可以根据课时的安排和教学要求进行取舍。

为了达到某些实验的目的,书中提供的参考程序与实际应用中的程序会有些差别,所以不一定是最优的。

由于时间紧迫,需要赶课程进度与实验时间的同步,加上编者学识有限,如有不妥之处,欢迎读者批评指正。

实验须知1.实验前必须阅读教科书的有关部分和本实验指导书,了解实验目的、内容、步骤,做好实验前的准备,编写好实验中要求自编或修改的程序;完成实验前要求完成的准备工作后方可以上机实验,否则不得上机操作。

2.各种电源的电压和极性不能接错,严禁带电接线和接插元器件。

通电前须经过指导教师检查认可后方能通电。

3.不准随意拨弄各种与实验无关的旋钮和开关,凡与本次实验无关的任何设备都禁止动用和摸弄,注意安全。

4.严禁用手触摸实验系统印制电路板和元器件的引脚,防止静电击穿芯片。

5.实验中若损坏仪器或元器件,应及时向指导教师报告。

6.在实验室内保持安静和卫生,不得随意走动和喧哗,集中精力完成实验。

7.实验完成后,关掉电源,及时整理实验台桌面,保持环境整洁。

STM32系列单片机原理及应用-C语言案例教程 第3章 通用输入输出的端口(GIPO)

STM32系列单片机原理及应用-C语言案例教程 第3章 通用输入输出的端口(GIPO)
模式下引脚默认为低电平。 • 浮空输入:GPIO内部无上/下拉电阻,断开状态。在该模式下,为高阻态,其电平
高低由外部电路决定。
第3章 通用输入/输出(GIPO)
3.2 STM32的GPIO 工作原理
3.2.2 GPIO 口输入/输出模式
STM32的I/O有以下八种配置方式,其中1~4为输入类型,5~6为输出类型, 7~8为复用输出。
第3章 通用输入输出的端口
第3章 通用输入Βιβλιοθήκη 输出的端口3.1 GPIO 概述
GPIO是微控制器数字I/O(输入/输出)的基本模块,借助 GPIO,STM32可以对外围设备进行(如按键等)最简单、最直观 的监控。还可用于串行和并行通信、存储器扩展等。
STM32的GPIO最多有7组I/O端口:A、B、C、D、E、F、G, 每组端口16个外部引脚。每组端口都具有通用I/O、单独位设置 /位清除、I/O 中断/唤醒、复用(AF)、软件重新映射、I/O复 用与GPIO锁定机制功能。在运用这些功能时,会涉及寄存器的 操作。
高电平。当输出为“1”时,VO口的状态上拉为高电平,I/O 口由外部电路决定。 ➢ 推挽输出_OUT_PP:I/O输出0接GND, I/O输出“1”接VCC,读输入值是未知的。 ➢ 复用功能的推挽输出_AF_PP:片内外设功能(I2C的SCL、SDA)。 ➢ 复用功能的开漏输出_AF_OD:片内外设功能(TX1、MOSI、MISO、SCK、SS)。
第3章 通用输入/输出(GIPO)
3.2 STM32的GPIO 工作原理
使用GPIO主要是对相应的寄存器进行操作,每个GPIO端口具有 7组寄存器: ➢ 2 个 32 位配置寄存器(GPIOx_CRL,GPIOx_CRH ); ➢ 2 个 32 位数据寄存器(GPIOx_IDR,GPIOx_ODR ); ➢ 1个32位置位/复位寄存器(GPIOx_BSRR ); ➢ 1个16位复位寄存器(GPIOx_BRR ); ➢ 1个32位锁定寄存器(GPIOx_LCKR)

nj单片机原理及应用(C语言版)第7章

nj单片机原理及应用(C语言版)第7章

单片机原理及应用(C语言版)第7章MCS-51单片机串行口主编:周国运中国水利水电出版社本章要点本章主要讲述MCS-51单片机串行口的结构、工作原理以及应用。

主要内容包括串行通信基本知识、MCS-51单片机串行口结构、串行口工作方式以及单片机与PC机通信的接口电路。

7.1 串行通信基本知识主要内容7.1.1 数据通信7.1.2 异步通信和同步通信7.1.3 波特率7.1.4 通信方向7.1.5 串行通信接口种类7.1.1 数据通信计算机与外界的信息交换称为通信。

基本的通信方法有并行通信和串行通信两种。

1.并行通信单位信息(通常指一个字节)的各位数据同时传送的通信方法称为并行通信。

优点:传送速度快;缺点:数据有多少位,就需要多少根传送线。

适合近距离通信7.1.1 数据通信2.串行通信单位信息的各位数据被分时一位一位依次顺序传送的通信方式称为串行通信。

优点:只需一对传输线,大大降低了传送成本,特别适用于远距离通信;缺点:传送速度较低。

适合远距离通信1.异步通信异步通信中,传送的数据可以是一个字符代码或一个字节数据,数据以帧的形式一帧一帧传送。

7.1.2异步通信和同步通信图7-3 异步通信的一帧数据格式1、异步通信起始位(0):信号只占用一位,用来通知接收设备一个待接收的字符开始到达。

线路上在不传送字符时应保持为1。

接收端不断检测线路的状态,若连续为1以后又测到一个0,就知道发来一个新字符,应马上准备接收。

数据位:紧接着起始位后面,它可以是5位(D0--D4)、6位、7位或8位(D0--D7)。

1、异步通信奇偶校验:只占一位,但也可以规定不使用奇偶校验位,这一位就可省去。

也可用这一位(1/0)来确定这一帧中的字符所代表信息的性质(地址/数据等)。

停止位:用来表征字符的结束,它一定是高电位(逻辑1)。

停止位可以是1位、1.5位或2位。

接收端收到停止位后,知道上一字符已传送完毕,同时,也为接收下一个字符做好准备--只要再接收到0,就是新的字符的起始位。

单片机C语言程序设计基础

单片机C语言程序设计基础

• 1.3.3 开关语句

开关语句格式为:

switch(变量)

{

case 常量1:

语句1或空;break;

case 常量2:

语句2或空;break;

……

case 常量n;

语句n或空;break;

default:

语句n+1或空;

}
• 1.1.4 其他常用函数语句

1.break语句
• 1.3 流程控制语句
• 1.3.1 条件选择语句

条件选择语句的基本形式为:

if(表达式)

语句1;

else

语句2;

上述结构流程如图1-1所示:如果表达式的值为非0即真,则
执行语句1,执行完语句1从语句2后开始继续向下执行;如果表达
式的值为0即假,则跳过语句1而执行语句2。
图1-1 条件选择语句流程
以使用所有C51编译器支持的数据类型。
• 1.1.4 数组与指针

(一)数组

所谓数组就是指具有相同数据类型的变量集,并具有共同的
名字。

1.数组基本形式

2.数组的初始化

3.数组变量的赋值
• (二)指针

1.指针基本形式

2.指针变量的初始化
• (三)数组与指针的关系
• 1.1.5 结构与联合
• (一)函数调用的一般说明
• (二)函数调用的一般形式

调用函数的一般形式如下:

单片机原理及应用C语言程序设计与实现第二版课程设计

单片机原理及应用C语言程序设计与实现第二版课程设计

单片机原理及应用C语言程序设计与实现第二版课程设计一、选题背景单片机是应用广泛的嵌入式系统开发的核心芯片之一。

近年来,随着现代科技的飞速发展,单片机已应用于家电控制、汽车电子、仪器仪表、网络通信和机器人等领域,成为了现代科技领域中不可缺少的关键技术和应用。

本课程旨在通过单片机原理及应用C语言程序设计与实现,让学生对单片机的构架、编程环境、程序设计及开发方法有更加深入全面的了解。

二、选题意义本课程旨在:1.学生能够了解单片机基本构造,充分掌握其编程方法和电路控制方法;2.学生能够熟悉C语言程序设计,并掌握以C语言编写单片机程序的方法;3.学生能够将所学到的知识运用到实际对硬件进行调试、应用开发中。

通过本课程的学习,可以有效提高学生实际解决问题的能力和技能,并且对后面进一步深造或从事相关工作有着重要的促进作用。

三、教学目标1.掌握单片机的基本构造,如CPU、存储器、I/O口、定时器等;2.熟悉C语言程序设计,并能够掌握以C语言编写单片机程序的方法;3.能够将所学到的知识运用到实际对硬件进行调试、应用开发中;4.具备将所学到的理论知识应用于实际工程设计中的能力;5.具备优秀的实践能力和操作技能,为以后从事相关工作打下基础。

四、课程内容4.1 单片机原理1.单片机概述及分类;2.单片机内部结构及总线结构;3.CPU及存储器;4.I/O口及外设控制;5.定时器及中断系统;6.单片机编程环境和工具。

4.2 C语言程序设计1.C语言基础及指针应用;2.数据类型及运算符;3.顺序结构、选择结构和循环结构;4.数组、字符串、结构体和枚举类型;5.函数、递归函数应用;6.文件操作和预处理指令。

4.3 单片机程序设计1.单片机程序设计基础;2.编写单片机应用程序的步骤和方法;3.采用C语言将程序烧入单片机。

4.4 课程设计1.软件设计;2.硬件设计;3.软、硬件连接;4.软件调试;5.硬件调试,实现功能集成。

五、实践环节实践环节是本课程的重要内容。

单片机原理及应用教程c语言版第6章mcs51单片机的定时器计数器

单片机原理及应用教程c语言版第6章mcs51单片机的定时器计数器

方波周期T
定时时间t:
周期为1000µs的方波要求 t =周期/2 = 1000/2 = 500(µs)
定时时间t
对应计数值:N = t/机器周期 = 500/1 = 500
N=500>256,所以选择模式1。
模式字:
TMOD=0000 0001B = 0x01 (3)计算初值X
X = 65536 – N = 65036 = 0xfe0c
6.1.2 MCS-51单片机定时器/计数器的工作原理
• 控制信号TRx=1时,定时器启动。 • 当定时器由全1加到全0时计满溢出,TFx=1,
向CPU申请中断;同时,定时器从0开始继续 计数。
6.2 定时器/计数器T0、T1
主要内容
6.2.1 T0、T1的特殊功能寄存器 6.2.2 T0、T1的工作模式 6.2.3 T0、T1的使用方法
计数信号由片内振荡电路提供,振荡脉冲n分 频送给计数器,每个机器周期计数器值增1。 • C/T =1 ,为计数器
计数信号由Tx引脚、和P1.0)输入,每输入一有 效信号,相应的计数器中的内容进行加1
计数器的最高计数频率为:fosc/24 1)每1个输入脉冲的下降沿使计数器计1个数 2)每1个机器周期对引脚采样1次,当上1个机器 周期采样为高、本机器周期采样为低为1个下降沿。
6.2.2 T0、T1的工作模式
信号源
振荡器 12分频 C/T=0
0
T0(P3.4)
TR0 GATE (P3.2)
C/T=1 1
& +
运行控制
TL0 TH0 (8位) (8位)
计数器
TF0 中断
溢出中断
图6-6 T0模式1原理结构
6.2.2 T0、T1的工作模式

单片机原理及应用教程

单片机原理及应用教程

选择Cx51开发环境Project菜单,选择New Project菜单项来 建立一个新的工程。 2. 选择目标芯片 在工程建立完成后,器件选择窗口便会弹出,从器件库选 择单片机应用系统所使用的8051芯片 。 3. 创建并编写C51源文件 选择Cx51开发环境的File菜单的New菜单项,这时会出现 新建源程序编辑窗口,新建一个C语言源文件 。 4. 把源程序文件加入到工程中 在建立了源程序文件后,必须把源程序文件添加到工程中, 以构成一个完整的工程项目。 5. 为目标芯片添加启动代码 在main()函数执行前,首先应复位单片机内部RAM、完成 对硬件初始化等操作,即执行一段初始化代码。在Cx51 中,STARTUP.A51文件是启动代码文件,该文件适合大 多数8051及其派生系列的目标芯片。
void Process() { unsigned int lsdata; unsigned int keycode; lsdata=0xff; keycode=GetPressKey(); CONTROL=0; if(keycode==0xfe) { lsdata=0x7f; WriteData(lsdata); } if(keycode==0xfd) unsigned char i; for(i=0;i<8;i++)
6. 设置编译、连接环境 7. 对工程进行编译和连接 选择Cx51开发环境的Project菜单中的Build target菜单项,则 对工程中的文件进行编译、汇编和连接,生成二进制代码 的目标文件(.obj)、列表文件(.lst)、绝对地址目标文件、 绝对地址列表文件(.m51)、连接输入文件(.imp)。 8. 调试程序 选择Debug菜单的Start/stop Debug Session菜单项,即可进入 调试状态。在调试状态下,目标文件自动转换为HEX文件。 在调试中可以对单片机的寄存器、内存、所产生的汇编代 码、串口的输出情况等进行监视 9.4 Cx51应用程序设计举例 9.4.1 输入 单片机中的I/O口(即P0,P1,P2,P3)可以单独的作为输 入/输出口使用。在实际的开发过程中输入输出是单片机最 基本的功能。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

高 级 中 断 请 求 PC
EX1 PT1 ET1 PS PT2 ET2 EA
低 级 中 断 请 求 PC
各中断 总允许 源允许
优先级
图5-2 增强型单片机的中断系统结构
5.2.2 MCS-51的中断源
MCS-51中断系统主要是对6个中断源 进行管理,依次为: 外部中断0(P3.2) 外部中断1(P3.3) 定时器/计数器0溢出中断 定时器/计数器1溢出中断 定时器/计数器2溢出中断 串行口中断 CPU主要是通过标志寄存器、控制寄 存器、优先级寄存器对中断源进行管理。
5.1.1 微机的输入/输出方式
DMA控制数据传输:CPU响应DMA的 请求,把总线使用权交给DMA控制器,DMA 将外设数据读入、并直接写入存储器,或将 数据从存储器读出并直接送给外设。传送过 程不需要CPU参与。 DMA释放总线:当一批数据传送后, DMA控制器再向CPU发出“结束总线请求”, CPU响应请求,收回总线使用权。 DMA方式速度高、效率高,可以与CPU 并行工作。
5.1 中断概述
主要内容
5.1.1 微机的输入/输出几种控制方式 5.1.2 中断的相关概念
5.1.1 微机的输入/输出几种控制方式
单片机系统中,CPU和外部设备之间不 断进行信息的传输。通常CPU和外设之间 的信息传送方式有以下几种: • 程序控制方式 • 中断方式 • 直接存储器存取(DMA)方式
5.2.2 MCS-51单片机的中断源
IP复位后为00H。其格式如下图所示。
IP (B8H) D7 D6 D5 D4 D3 D2 D1 D0

— PT2 PS PT1 PX1 PT0 PX0
图5-6 中断优先级控制寄存器 PT2(IP.5):T2中断优先级控制位 PT2=0,设置为低优先级; PT2=1,设置为高优先级。
5.2.2 MCS-51单片机的中断源
ES=0,禁止串行口中断; ES=1,允许串行口中断。 ET1(IE.3):定时器/计数器1中断允许 ET1=0,禁止T1中断; ET1=1,允许T1中断。 EX1(IE.2):外部中断1中断允许位 EX1=0,禁止外部中断1中断;EX1=1, 允许外部中断1中断。
5.1.2 中断的相关概念
6、中断的功能
中断是计算机的一项重要技术,计算机 引入中断后,大大提高了它的工作效率和 处理问题的灵活性,主要功能有以下几个 方面。 • 使CPU与外设同步工作 • 实现内容
5.2.1 MCS-51的中断结构 5.2.2 MCS-51的中断源
5.1.1 微机的输入/输出方式
中断传送仍由CPU通过程序来传送,每 次都要执行指令进行断点、现场的保护和恢 复。对于高速I/O,就显得速度太慢了。
3、DMA方式(直接存储器存取)
DMA控制方式主要用于存储器和外设之 间直接传送、块传输。 DMA请求总线:当某一外部设备需要输 入/输出一批数据时,向DMA控制器发出请 求,DMA控制器接收到这一请求后,向CPU 发出总线请求信号。
1、串行口控制寄存器SCON
字节地址98H。可以位寻址, 格式如下:
SCON (98H)
D7 D6 D5 D4 D3 D2 D1 TI D0 RI
图5-4 串行口控制寄存器
TI(SCON.1):串行口发送中断标志。 串行口发送完一帧,由硬件置位。响应中 断后,必须用软件清 0。 RI(SCON.0):串行口接收中断标志。
5.2.1 MCS-51单片机的中断结构
中断系统构成:增强单片机主要由5个特 殊功能寄存器、相关硬件电路等组成。有6个 中断源,两个中断优先级。 特殊功能寄存器主要用于:控制中断的开 放和关闭、保存中断信息、设置中断的优先 级别。 硬件查询电路主要用于:判定6个中断源的 优先级别。 MCS-51增强型单片机的中断结构如图5-2 所示。
5.2.2 MCS-51单片机的中断源
PT0(IP.1):T0中断优先级控制位 功能同PT1。 PX0(IP.0):外中断0中断优先级控制位 功能同PX1。 89C52单片机的中断优先级采用了自然 优先级和人工设置高、低优先级的策略。中 断处于同一级别时,就由自然优先级确定。 开机时,每个中断都处于低优先级,中断优 先级可以通过程序来设定,由中断优先级寄 存器IP来统一管理。 如下图所示:
5.2.2 MCS-51单片机的中断源
(2)用C语言位操作指令
EX0=1; ET0=1; EX1=1; ET1=1; EA = 1 //允许外部中断0中断 //允许定时/计数器0中断 //允许外部中断1中断 //允许定时/计数器1中断 //开总中断控制
汇编语言 (1)用字节操作指令:
MOV IE,#8FH
IE1:外中断1中断请求标志位 外部中断1引脚有请求信号置1; IE1的清0方式问题:与外中断的触发方式 有关 (1)低电平触发,则P3.3引脚为高电平 自动对IE1清0; (2)下降沿触发,则CPU响应中断由硬 件自动对IE1清0。 IE0:外部中断0中断请求标志位 功能同IE1。
5.2.2 MCS-51单片机的中断源
5.2.2 MCS-51单片机的中断源
系统优先级规则图:
表 5-1 中断优先级的排列顺序
中断源 外部中断0 定时器/计数器0 外部中断1 定时器/计数器1 串行口中断 定时器/计数器2 自然优先级顺序 最高
最低
5.2.2 MCS-51单片机的中断源
图5-3 定时器的控制寄存器
TCON可位寻址。复位后TCON=00H。 TF1(TCON.7):T1溢出标志位 当T1计满溢出时,由内部硬件置位; 中断响应后自动清 0。
5.2.2 MCS-51单片机的中断源
TF0:T0溢出标志位 功能同TF1。 IT1:外中断1触发方式设置位 IT1=0,外中断1为低电平触发 CPU在每一个机器周期的S5P2期间对 P3.3引脚采样,若P3.3为低电平,则使IE1置1, 否则IE1清0。
5.1.1 微机的输入/输出方式
2、 中断方式
外部设备与CPU之间以中断信号作为 数据交换的控制信号。 当外部设备需要与CPU进行数据交换 时,由接口部件向CPU发出一个请求信号, CPU响应这一中断请求后,在中断服务程 序中完成一个字节或多个字节的信息交换。 中断方式具有并行工作、实时传输、 充分利用CPU效率等特点。
单片机原理及应用
(C语言版)
第5章 MCS-51单片机中断系统
主 编:周国运 本章制作:仝选悦
中国水利水电出版社
第5章 MCS-51单片机中断系统
目 录
5.1 中断概述 5.2 中断系统结构及控制 5.3 中断响应过程及处理过程 5.4 中断应用举例
第5章 MCS-51单片机的中断系统
本章主要讨论MCS-51单片机中断系统。 内容主要有:MCS-51单片机中断系统结 构、中断控制、中断优先级、中断处理过程, 以及中断的应用。 通过本章的学习,应该理解中断系统 结构、中断响应的条件和中断处理过程; 掌握中断控制、中断优先级,灵活的应 用中断解决实际问题。
5.2.2 MCS-51单片机的中断源
ET0(IE.1):定时器/计数器0中断允许位 ET0=0,禁止T0中断; ET0=1,允许T0中断。 EX0(IE.0):外部中断0的中断允许位 EX0=0,禁止外部中断0中断; EX0=1,允许外部中断0中断。 例5-1 假设允许INT0、INT1、T0、T1中断, 试设置IE的值。 解:(1)用C语言字节操作: IE=0x8f;
TCON INT0 IT0=0 IT0=1 T0 IT1=0 INT1 IT1=1 T1 TX RX T2 T2EX TF1 TI RI TF2 EXF2 + ES + 1 IE1 TF0 ET0 1 IE0 EX0
IE
IP PX0 1 0 PT0 PX1 1 0 1 0 1 0 1 0 1 0
自 然 优 先 级 中断 矢量地址 硬件查询 自 然 优 先 级 中断 矢量地址
① ② ③ ④ ⑤ ⑥
5.2.2 MCS-51单片机的中断源
(1)与中断标志相关的SFR
主要有:定时器/计数器T0、T1控制寄 存器TCON 串行口控制寄存器SCON 定时器/计数器2控制寄存器T2CON (第6章介绍) (2)中断控制寄存器:TCON、IE (3)中断优先级寄存器:IP
5.2.2 MCS-51单片机的中断源
5.1.1 微机的输入/输出方式
1、 程序控制方式
可以分为以下两种方式。 (1)无条件传送方式 外设始终处于就绪状态,CPU不必查询 外设的状态,直接进行信息传输,称为无条件 传送方式。 此种信息传送方式只适用于简单的外设。 如开关和数码段显示器等。
5.1.1 微机的输入/输出方式
(2)条件传送方式 CPU通过执行程序不断读取并测试外部 设备状态,如果输入设备处于准备好状态或 输出设备为空闲状态时,则CPU执行传送信 息操作。 由于条件传送方式需要CPU不断地查询 外部设备的状态,然后才进行信息传送,所 以也称为“查询式传送”。
5.2.2 MCS-51单片机的中断源
串行口接收完一帧,由硬件置位。响应中 断后,必须用软件清0。 例如:CLR TI;
5.2.2 MCS-51单片机的中断源
2、T0、T1 的控制寄存器TCON
TCON格式如下:
TCON D7 D6 D5 D4 D3 D2 D1 D0 (88H) TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0
5.1.2 中断的相关概念
1、中断的概念
CPU在正常运行的时候, 外部或者内部发生了请求 CPU迅速去处理的事件, CPU暂时中断当前的程序, 去处理所发生的事件,处理 完事件后,再返回到原来被 中断的程序继续运行。此过 程称为中断。
5.1.2 中断的相关概念
2、中断源
引起CPU中断的设备和事件就是中断源。
3、中断请求
相关文档
最新文档