单片机的中断系统设计

2020-06-03 10:51

中断系统的应用

0911020209 张广磊

中断系统的应用

设计要求:

主程序要将P0口进行花样显示,显示规律为 (1)8个LED依次正向依次点亮;

(2)中断(INT0)时使8个LED闪烁5次; (3)中断(INT1)时使8个LED反向依次点亮;

一、系统分析与设计原理:

本次课程设计是利用中断的基本原理,通过外部中断控制8个LED灯闪烁。其中中断的概念是在单片机中,当CPU在执行程序时,由于单片机内部或外部的原因引起的随机事件要求CPU暂停正在进行的程序,而转向执行一个用于处理该随机事件的程序,处理完后又返回被中断的程序断点处继续执行的过程。我在本次设计中主要使用了外部中断,外部中断是由外部原因(如打印机、键盘、控制开关、外部故障等)引起;由两个固定引脚输入到单片机内。 INT0——外部中断0请求中断信号输入端,P3.2的 第二功能。

INT1——外部中断1请求中断信号输入端,P3.3的 第二功能。 在使用时具有以下特点: Ⅰ.可以提高CPU的工作效率 Ⅱ.实现实时处理 Ⅲ.处理故障

二、硬件设计

将P0口进行花样显示,显示规律为 (1)8个LED依次正向依次点亮;

(2)中断(INT0)时使8个LED闪烁5次;

(3)中断(INT1)时使8个LED反向依次点亮;

1、 中断系统的应用所用的元件 单片机AT89CC51 瓷片电容CAP 30pF 晶振CRYSTAL 12MHz 电解电容CAP-ELEC 排阻RESPACK-8 发光二级管LED-GREEN 发光二级管LED-BLUE 电阻RES 按钮BUTTON 发光二级管LED-RED 发光二级管LED-YELLOW

2、硬件原理图

三、程序流程图

开始 中断设置 开中断 发生中断 N Y INT0接地 N Y 调用中断子程序1 调用中断子程序2 LED正向闪烁 结束 (图一)

中断子程序1开始 保护现场 LED闪烁五次 恢复现场 中断返回 (图二) 中断子程序2开始 保护现场 LED反向闪烁 恢复现场 中断返回 (图三)

四、程序设计

#include\

#define uint unsigned int #define uchar unsigned char

const tab[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,}; const tab1[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,};

const tab2[]={0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00}; void delay() {

uint i,j;

for(i=0;i<256;i++) for(j=0;j<256;j++) {;} }

void int0()interrupt 0 {

uchar i;

for(i=0;i<10;i++) { P0=tab2[i]; delay();} }

void int1()interrupt 2 {

uchar i;

for(i=0;i<8;i++) { P0=tab1[i]; delay();} }

void main(void) {

EX0=1; IT0=1; EX1=1; IT1=1; EA=1; while(1)

{ uchar x;

for(x=0;x<8;x++) {P0=tab[x]; delay();} } }


单片机的中断系统设计.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:SIPOS、AUMA

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: