外部中断控制数码管显示
用单片机的外部中断来测频率
{ EA=1; EX0=1; ET0=1; IT0=1; TMOD=0x01; TH0=0x3c; TL0=0xaf; TR0=1; }
// 延时程序 delay(uchar x) { uchar a,b; for(a=x;a>0;a--)
5.9.2 输入捕捉功能 ATmega128 的两个 16 位定时 / 计数器( T/C1、T/C3)具有输入捕捉功能,它是
AVR定时 / 计数器的又一个显著的特点。其基本作用是当一个事件发生时,立即将 定时 / 计数器的值锁定在输入捕捉寄存器中(定时 / 计数器保持继续运行)。利用输 入捕捉功能,可以对一个事件从发生到结束的时间进行更加精确,如下面的示例中 精确测量一个脉数字有变化 .
// 原理: 1 秒钟内计数外部脉冲个数,如计数 1000 次,则表示频率为 1000Hz
//1 秒钟定时采用 51 单片机定时器 0 实现,外部脉冲由外部中断 0 引脚接入
#include<reg51.h>
#include"51hei.h"
#define uchar unsigned char
可以看到,使用定时 / 计数器以及配合它的捕捉功能测量脉冲宽度,不仅节省系 统的硬件资源,编写程序简单,而且精度也高,因为读到的上升沿和下降沿的时间 就是其实际发生的时间。
5.9.3 比较匹配输出和脉冲宽度调制 PWM (见已发表的主题)
AVR 单片机的每一个定时 / 计数器都配备独立的、多达 10 位的预分频器,由软件 设定分频系数,与 8/16 位定时 / 计数器配合,可以提供多种档次的定时时间。使用 时可选取最接近的定时档次,即选 8/16 位定时 / 计数器与分频系数的最优组合,减 少了定时误差。所以, AVR定时 / 计数器的显著特点之一是:高精度和宽时范围, 使得用户应用起来更加灵活和方便。此外, AVR的 USAR、T SPI、I2C、WDT等都不 占用这些定时 / 计数器。
计算机原理实验-外部中断实验
计算机原理与应用实验实验名称:外部中断实验学院:信息与通信工程学院班级:2017211113姓名:***学号:**********同组成员姓名:李凝同组成员学号:**********一、实验目的1. 掌握NVIC 中断优先级配置。
2. 学会外部中断配置。
二、实验原理及内容(一)实验原理电路结构如图3.1 所示1. NVIC 中断优先级NVIC 是嵌套向量中断控制器,控制着整个芯片中断相关的功能,它跟内核紧密耦合,是内核里面的一个外设。
但是各个芯片厂商在设计芯片的时候会对Cortex-M4 内核里面的NVIC 进行裁剪,把不需要的部分去掉,所以说STM32 的NVIC 是Cortex-M4 的NVIC 的一个子集。
CM4 内核可以支持256个中断,包括16个内核中断和240个外部中断,256 级的可编程中断设置。
对于STM32F4 没有用到CM4 内核的所有东西,只是用到了一部分,对于STM32F40 和41 系列共有92个中断,其中有10个内核中断和82个可屏蔽中断,常用的为82个可屏蔽中断。
ISER[8]—中断使能寄存器组,用来使能中断,每一位控制一个中断,由于上面已经说明了控制82 个可屏蔽的中断,因此利用ISER[0~2]这三个32 位寄存器就够了。
一下的几个寄存器同理。
ICER[8]—中断除能寄存器组,用来消除中断。
ISPR[8]—中断挂起控制寄存器组,用来挂起中断。
ICPR[8]—中断解挂控制寄存器组,用来解除挂起。
IABR[8]—中断激活标志寄存器组,对应位如果为1 则表示中断正在被执行。
IP[240]—中断优先级控制寄存器组,它是用来设置中断优先级的。
我们只用到了IP[0]~IP[81],每个寄存器只用到了高4 位,这4 位又用来设置抢占优先级和响应优先级(有关抢占优先级和响应优先级后面会介绍到),而对于抢占优先级和响应优先级各占多少位则由AIRCR 寄存器控制,相关设置如表 3.1 所示。
51单片机C语言编程100例-单片机c语言编程
51单片机C语言编程100例-单片机c语言编程51单片机C语言编程100例在嵌入式系统领域,单片机是常用的硬件平台之一。
而C语言作为一种高级编程语言,能够为单片机编程提供更高的效率和便利性。
本文将介绍51单片机C语言编程的100个实例,帮助读者了解并掌握单片机的基本编程技巧和应用方法。
一、LED灯控制1. 实例介绍:通过控制51单片机的IO口输出,实现对LED灯的亮灭控制。
2. 实例代码:```#include <reg51.h>sbit LED = P1^0; // 定义P1口的第0位为LEDvoid main(){while(1){LED = 0; // LED灯亮delay(1000); //延时1秒LED = 1; // LED灯灭delay(1000); //延时1秒}}```二、数码管显示1. 实例介绍:使用数码管显示数字0-9,并实现数码管的动态显示效果。
2. 实例代码:```#include <reg51.h>unsigned char code DispTab[] ={0xC0,0XF9,0XA4,0XB0,0X99,0X92,0X82};sbit WeiDu = P1^2;sbit DUAN = P1^0;void delay(unsigned int t){unsigned int i;while(t--)for(i=0;i<125;i++);}void main(){unsigned int i;while(1){P0 = DispTab[i]; // 显示数字iDUAN = 1; //点亮段码DUAN = 0; //关闭段码P0 = ~(0x01 << i); // 选择数码管的位 WeiDu = 0; // 打开选通位WeiDu = 1; // 关闭选通位delay(100); // 延时100msi++;if(i > 9) i = 0;}}```三、外部中断1. 实例介绍:使用外部中断,当外部输入信号发生变化时,触发中断程序。
中断系统实验)
电子信息工程系实验报告课程名称:单片机原理及接口技术 实验项目名称:中断系统实验 实验时间: 班级: 姓名: 学号一、实验目的1、熟悉keil 仿真软件、伟福仿真器和实验板中外部中断的使用。
2、了解并熟悉51单片机中中断的概念,中断处理系统的工作原理。
3、理解51单片机中断管理系统处理五种中断源,特别是对外部中断的设置与控制方法。
4、熟悉中断处理特别是外部中断处理的过程,掌握中断处理子程序的书写格式和使用方法。
二、实验原理1、中断的主要概念:现代的计算机都具有实时处理功能,能对外部发生的事件如人工干预、外部事件及意外故障做出及时的响应或处理,这是依靠计算机的中断系统来实现的。
所谓中断是指,单片机内部有一个中断管理系统,它对内部的定时器事件、串行通信的发送和接收事件及外部事件(如键盘按键动作)等进行自动的检测判断,当有某个事件产生时,中断管理系统会置位相应标志通知CPU ,请求CPU 迅速去处理。
2、5个中断源: MCS -51系列中不同型号单片机的中断源数量是不同的(5~11个),最典型的8051单片机有5个中断源,即外部中断0、1,内部定时器中断0、1,串口中断。
3、中断3个相关寄存器的格式与设置:(1)中断请求标志及外部中断方式选择寄存器TCON ,其格式如下:IE0:外部中断0请求源(INT0)标志。
IE0=1,外部中断0正在向CPU 请求中断,当 CPU 响应该中断时由硬件清零IE0(边沿触发方式)。
IT0:外部中断源 INT0 触发方式控制位。
IT0 = 0,外部中断0程控为电平触发方式,当P3.2输入低电平时,置位IE0。
IT0 = 1,外部中断0程控为边沿触发方式,相继的两次采样,一个周期中采样到为高电平,接着的下个周期中采样到为低电平,则置‘1’ IE0。
IE1:外部中断1请求(INT1,P3.3)标志。
IE1 = 1外部中断1向 CPU 请求中断,当 CPU 响应外部中断时,由硬件清‘0’ IE1(边沿触发方式)。
单片机数码管动态显示实验报告
单片机数码管动态显示实验报告单片机数码管动态显示实验程序(汇编)单片机数码管动态显示实验程序org 00hajmp headorg 0030hhead:mov sp,#0070hnum equ p0 ;p0口连接数码管reset:mov dptr ,#tabmov r0,#4sh:acall show_tabcall dptr_adddjnz r0,shmov r0 ,#4sjmp resetdptr_add:inc dptrinc dptrinc dptrinc dptrrettab :db0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,88H,83H,0C6H,0A1H,86H,8EH;;;;;;;;;;;;;;;;;;;;; 函数的功能是用来动态显示dptr上的四个数据 ;;;;;;;;;;;;;;;;;;;;;; show_tab:clr amov r2,#0mov r3,#148mov p2,#238loop:movc a,@a+dptrmov num ,aacall delay_5msinc r2mov a,r2;调用片选函数前注意A的变化acall select_movcjne r2,#4,loopmov r2,#0clr adjnz R3,loopret;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;select_mov:;p2的初值238push 0e0hmov a,p2rl amov p2,apop 0e0hretdelay_5ms:mov r6,#5signed_5ms:call delay_1msdjnz r6,signed_5msret篇二:单片机动态数码显示设计实验报告微机原理与接口技术实验报告实验题目:指导老师:班级:计算机科学与技术系姓名:动态数码显示设计2014年 12月3日实验十三动态数码显示设计一、实验目的1.掌握动态数码显示技术的设计方法。
计算机原理实验-外部中断实验
计算机原理与应用实验实验名称:外部中断实验学院:信息与通信工程学院班级:2017211113姓名:***学号:**********同组成员姓名:李凝同组成员学号:**********一、实验目的1. 掌握NVIC 中断优先级配置。
2. 学会外部中断配置。
二、实验原理及内容(一)实验原理电路结构如图3.1 所示1. NVIC 中断优先级NVIC 是嵌套向量中断控制器,控制着整个芯片中断相关的功能,它跟内核紧密耦合,是内核里面的一个外设。
但是各个芯片厂商在设计芯片的时候会对Cortex-M4 内核里面的NVIC 进行裁剪,把不需要的部分去掉,所以说STM32 的NVIC 是Cortex-M4 的NVIC 的一个子集。
CM4 内核可以支持256个中断,包括16个内核中断和240个外部中断,256 级的可编程中断设置。
对于STM32F4 没有用到CM4 内核的所有东西,只是用到了一部分,对于STM32F40 和41 系列共有92个中断,其中有10个内核中断和82个可屏蔽中断,常用的为82个可屏蔽中断。
ISER[8]—中断使能寄存器组,用来使能中断,每一位控制一个中断,由于上面已经说明了控制82 个可屏蔽的中断,因此利用ISER[0~2]这三个32 位寄存器就够了。
一下的几个寄存器同理。
ICER[8]—中断除能寄存器组,用来消除中断。
ISPR[8]—中断挂起控制寄存器组,用来挂起中断。
ICPR[8]—中断解挂控制寄存器组,用来解除挂起。
IABR[8]—中断激活标志寄存器组,对应位如果为1 则表示中断正在被执行。
IP[240]—中断优先级控制寄存器组,它是用来设置中断优先级的。
我们只用到了IP[0]~IP[81],每个寄存器只用到了高4 位,这4 位又用来设置抢占优先级和响应优先级(有关抢占优先级和响应优先级后面会介绍到),而对于抢占优先级和响应优先级各占多少位则由AIRCR 寄存器控制,相关设置如表 3.1 所示。
实验3外部中断实验报告
实验3外部中断实验报告以下是为大家整理的实验3外部中断实验报告的相关范文,本文关键词为实验,外部,中断,报告,,您可以从右上方搜索框检索更多相关文章,如果您觉得有用,请继续关注我们并推荐给您的好友,您可以在综合文库中查看更多范文。
实验三定时中断实验一、实验目的1.掌握51单片机外部中断的应用。
2.掌握中断函数的写法。
3.掌握定时器的定时方法。
4.掌握LeD数码管的显示。
二、实验内容1.用外部中断0测量负跳变信号的累计数,同时在LeD数码管上显示出来。
2.用外部中断改变流水灯的方式。
3.用定时器T1的方式2控制两个LeD以不同周期闪烁。
使用定时器T1的方式2来控制p0.0、p0.1引脚的两个LeD分别以1s和2s 的周期闪烁。
三、实验仿真硬件图在proteus软件中建立如下图所示仿真模型并保存。
1.用外部中断0测量负跳变信号的累计数,同时在LeD数码管上显示出来(用中断方式做计数器)。
2.用外部中断改变流水灯的方式。
中断前:开始时,p0.0~p0.7的8个灯依次点亮。
外部中断0:p0.0~p0.7的左右4个灯闪烁亮8次外部中断1:p0.0~p0.7的8个灯间隔闪烁8次改变中断优先级和保护现场,观察运行结果四、编程提示12345678p1.0p1.1p1.2p1.3p1.4p1.5p1.6p1.7AT89c51c122pfu1x112m18 xTAL219xTAL1p0.0/AD0p0.1/AD1p0.2/AD2p0.3/AD3p0.4/AD4p0.5/AD5p 0.6/AD6p0.7/AD7p2.0/A8p2.1/A9p2.2/A10p2.3/A11p2.4/A12p2.5/A13p2 .6/A14p2.7/A15p3.0/RxDp3.1/TxDp3.2/InT0p3.3/InT1p3.4/T0p3.5/T1p3. 6/wRp3.7/RD3938373635343332212223242526272810111213141516171234567812345678c222pfD1D2D3D4D5D6D7D8R110k9RsTc310uf2930 31psenALeeAR2220R3220R4220R5220R6220R7220R8220R9220外部中断0请求InT0,由p3.2管脚输入,通过IT0位来决定是低电平有效还是下降沿有效。
单片机技术 课程标准
《单片机技术与应用》课程标准一、课程定位1、课程性质随着电子设备智能化的不断发展和日益普及,单片机作为电子设备智能的核心其应用日益广泛,在包括各种通信设备在内的电子应用领域中随处可见单片机的应用。
因此,中等职业教育电子信息类专业大都开设了单片机技术与应用的相关课程。
为此,本课程将作为电子电器应用与维修专业的核心课程,如图1所示,同时也是从事机电产品,电子产品的生产与开发企业培养具有单片机应用产品设计、分析、调试和制作能力的实践型人才,对学生职业岗位能力培养与职业素质养成起主要支撑作用。
图1 课程在专业岗位能力培养中的支持作用2、电子电器应用与维修课程体系电子电器应用与维修课程体系结构,如图2所示,位于最底层的是电工基础、电子技术技术(数字部分和模拟部分)、元器件识别、检测与组装。
本课程属于核心课程,起到为后续的课程protel 2004、PLC 应用与技术等课程打下坚实的基础,同时为前续课程计算机基础、电工基础、电子技术(数字部分和模拟部分)、元器件识别、检测与组装等课程起到巩固的作用。
图2 电子电气应用与维修课程体系3、课程定位《单片机技术与应用》既是电子电器应用与维修、电气自动化、应用电子技术专业的核心课程之一,又是各专业的基础课程之一。
特别是电子电器应用与维修专业中的《protel 2004》、《智能电子产品组装、检测与维修》、课程等技能的培养是以本课程为基础。
单片机是实现电子产品智能化的有效途径,现以广泛应用于智能仪表、家用电器、工业控制、网络通信等众多领域。
课程教学目标定位在培养人的综合素质,使学生在专业能力、自学能力和社会能力等各方面全面发展,为企业输送合格的软硬件设计的操作员、生产工艺检测员、产品调试工、家用电器维修工等。
本课程是贯彻教育部关于中等职业教育改革精神,体现以“以服务为宗旨,以就业为导向”的职教特点,在结构形式上采用项目式教学法,在载体上采用产品的组装、调试和检测,即每一个项目就是一个产品。
单片机原理及应用项目化教程 项目五 外部中断与串行通信
串行通信
2、串行通信的分类与制式 (1)串行通信的分类 串行通信可以分为同步通信和异步通信两类。在单片机中 ,主要使用异步通信方式。 (2)串行通信制式 根据信息的传送方向,串行通信可以进一步分为单工、半 双工和全双工三种。 如果在通信过程的任意时刻,信息只能由一方A传到另一 方B,则称为单工。 如果在任意时刻,信息既可由A传到B,又能由B传A,但 只能由一个方向上的传输存在,称为半双工传输。 如果在任意时刻,线路上存在A到B和B到A的双向信号传 输,则称为全双工。
串行通信
RB8:在方式2、3中,用于存放收到的第9位数据;在双机通信 中,作为奇偶校验;在多机通信中,用作区别地址帧/数据帧的 标志。 TB8:在方式2、3中,是要发送的第9位数据;在双机通信中, 用于对接收到的数据进行奇偶校验;在多机通信中,用作判断地 址帧/数据帧,TB8=0 ,为数据,TB8=1 ,为地址。 REN:串行口接收允许控制位 = 1: 表示允许接收;
串行通信
二者比较: 串行通信的数据传输速率相对较低,但通信距离长 ,可以从几米到几公里,因此串行适用于长距离而速 度要求不高的场合。电脑上的9针座(也称串口)就
是串行通信。
并行通信的传输速率高,但传输距离短,一般不超
过30米,而且成本高(要采用多条数据线)。电脑输
出数据到打印机采用的就是并行通信。
STC89C52外部中断
5.1.2 外中断初始化 外部中断的初始化主要是对外部中断相关的寄存器初始化 ,由第四章中断的知识可知,与外部中断相关的寄存器有3 个:TCON、IE、IP寄存器。 (1)TOCN寄存器
TCON中与外部中断有关的位有四位:IT0和IT1,IE0和IE1, IT0/IT1用于控制外部中0的触发方式,其含义如下: IT0(IT1)=1 脉冲触发方式,下降沿有效。 IT0(IT1)=0 电平触发方式,低电平有效。
数码管显示字符
二、中断请求标志
1、TCON的中断标志
IT0(TCON.0),外部中断0触发方式控制位。 当IT0=0时,为电平触发方式。 当IT0=1时,为边沿触发方式(下降沿有效)。 IE0(TCON.1),外部中断0中断请求标志位。 IT1(TCON.2),外部中断1触发方式控制位。 IE1(TCON.3),外部中断1中断请求标志位。 TF0(TCON.5),定时/计数器T0溢出中断请求标志位。 TF1(TCON.7),定时/计数器T1溢出中断请求标志位。
IE
EA 1
IP
PX0 1 0 PT0 1 0 1
硬件查询
自 然 优 先 级 中断源 高 级
INT0 T0 INT1 T1 RX TX
中断入口
EX1 1
PX1 1 0 PT1 1 0 0 自 然 优 先 级 中断源
低 级
RI TI
ES 1 ≥1
PS 1 0
中断入口
SCON
3、TF0(TCON.5),片内定时/计数器T0 溢出中断请求标志。当定时/计数器T0发生 溢出时,置位TF0,并向CPU申请中断。
MCS-51单片机的中断系统结构
主程序 中断响应
中断请求
执行主 程序
断点 继续执行 主程序 执行 中断 处理 程序
中断返回
主程序A
断点
返回
RETI 中断服务程序B
引起CPU中断的根源,称为中断源。中断源向CPU提出 的中断请求。CPU暂时中断原来的事务A,转去处理事件B。 对事件B处理完毕后,再回到原来被中断的地方(即断点), 称为中断返回。实现上述中断功能的部件称为中断系统(中 断机构)。
IE
EA 1
IP
PX0 1 0 PT0 1 1
