51外部中断测试

发布者:数据之翼最新更新时间:2017-11-21 来源: eefocus关键字:外部中断测试 手机看文章 扫描二维码
随时随地手机看文章

#include

#include


#define GPIO_LED P2

//外部中断的IO

sbit K3=P3^2;

sbit K4=P3^3;


void IntConfiguration();

void Delay(unsigned int n);

unsigned char KeyValue=0;

void main(void)

{

GPIO_LED=0Xfe;

IntConfiguration();

while(1)

{

if(KeyValue)

GPIO_LED=_crol_(GPIO_LED,1);

else

GPIO_LED=_cror_(GPIO_LED,1);

Delay(2000);

}

}

void IntConfiguration()

{

//设置INT0

IT0=1;//跳变沿出发方式(下降沿)

EX0=1;//打开INT0的中断允许。

//设置INT1

IT1=1;

EX1=1;

EA=1;//打开总中断

}


void Delay(unsigned int n)   //延时50us误差 0us

{

    unsigned char a,b;

for(;n>0;n--)

{

    for(b=1;b>0;b--)

        for(a=22;a>0;a--);

}

}


void Int0() interrupt 0 //外部中断0的中断函数

{

Delay(1); //延时消抖

if(K3==0)

KeyValue=1;

}


void Int1() interrupt 2 //外部中断1的中断函数

{

Delay(1); //延时消抖

if(K4==0)

KeyValue=0;

}


关键字:外部中断测试 引用地址:51外部中断测试

上一篇:51IO输入测试代码
下一篇:用AT90S8515单片机实现LED数码显示

推荐阅读最新更新时间:2024-03-16 15:46

51单片机矩形键盘控制数码管显示0-F,以及LED灯的亮灭
电路图 总图 部分图1 部分图2 部分图3 元件清单 C语言程序 #include reg51.h #define uint unsigned int #define uchar unsigned char //共阳数码管编码表&LED灯 uchar code table = {0xc0,0xf9,0xa4,0xb0, 0x99,0x92,0x82,0xf8, 0x80,0x90,0x88,0x83, 0xc6,0xa1,0x86,0x8e}; //函数声明 void delay(uint time); //延时函数 void display(uchar k); //数码管显示0-F以及LED
[单片机]
基于51单片机的语音万年历设计
一.硬件方案 本电路是由AT89C52单片机为控制核心,具有在线程功能,低功耗,能在3V超低压工作;时钟电路有DS1302提供,它是一种高性能.低功耗,带RAM的实时时钟电路,它可以对年,月,日,周日,时,分,秒进行及时,同时具有闰年补偿功能,工作电压为2.5~5.5V.采用三线接口与CPU进行同步通信,并可采用突发方式一次产送多个字节的时钟信号或RAM数据.具有寿命长精度高和低功耗等特点.温度数据有DS18B20采集.显示部分有LCD12864液晶显示。 主要由51单片机+最小系统+LCD12864液晶显示模块+时钟模块+温度采集模块+按键模块+语音芯片及喇叭;如图: 二.设计功能 (1)采用DS1302时钟芯片、DS1
[单片机]
基于<font color='red'>51</font>单片机的语音万年历设计
基于51单片机的nrf24l01无线的接收和发射程序
通过灯的闪烁来判断数据的接受和发射 有接收端和发射段的程序 如果24L01用reg51那么两个设备都要用reg51,如果用reg52就都得用reg52! PC通过串口发送给单片机命令 ,单片机把命令通过24L01无线发送给另一个单片机,另一个单片机控制灯LED1,LED2,LED3,LED4闪烁。 无线发射程序: #include 2401.h #define uint unsigned int #define uchar unsigned char //1//sbit KEY1=P0^0; //发送按键 //1//sbit KEY2=P0^1; //1//sbit KEY3=P0^2
[单片机]
基于<font color='red'>51</font>单片机的nrf24l01无线的接收和发射程序
80C51和CH375的USB打印机驱动设计
引 言   本课题来源于北京普析通用公司的一个项目。由于公司现有单机版光谱仪器产品(如1810、T6等)采用的是并行口打印技术,而随着USB打印机技术的逐渐普及,并行口打印机越来越不好买到,而且有些用户的打印机只是USB接口而非并行口,因此现有仪器产品对打印机的支持变得不能适应用户需要。为了实现能将公司的并行口仪器直接和USB打印机相连进行打印,决定设计开发一款LPT-USB打印机的驱动器,负责并口仪器和USB打印机的连接。   本文利用单片机和USB总线接口芯片实现LPT-USB打印机的驱动器设计。利用该设计将能够实现并行打印口数据可以在USB打印机上的直接打印工作,克服了有些并口仪器必须连接并口打印机才能打印的弊端,极大地方
[单片机]
基于FPGA的IP核8051上实现TCP/IP的设计
引言 随着芯片规模的越来越大、资源的越来越丰富, 芯片的设计复杂度也大大增加。事实上, 在芯片设计完成后, 有时还需要根据情况改变一些控制, 这在使用过程中会经常遇到。这时候如果再对芯片设计进行改变将是很不可取的, 因为需要设计人员参与这种改变, 这无论是对设计者还是用户都是不能接受的。于是就有必要让这种可以改变的简单控制在芯片设计时就存在, 而且同时还应该使这种改变相对容易, 比较通用, 并且与芯片的其它设计部分尽量不相关。为了满足上述的要求, 在FPGA中嵌入一个比较理想的选择, 而这个即通用又控制简单的IP核最好选择8051微处理器。 在FPGA中植入8051后, 还可在上面实现简单的TCP/IP协议, 以支持远程访问或进行
[单片机]
基于FPGA的IP核80<font color='red'>51</font>上实现TCP/IP的设计
AT89C2051单片机开发点钞机外接显示屏
从图上可以清楚的看出:点钞机的外接显示屏主要由 单片机 Atmel公司生产的AT89C2051、三只七段共阳数码管LED1~LED3、晶体三极管V1~V3和相应的电阻电容及插头所组成。 大家知道,LED数码管是由发光二极管作为显示字段的数码型显示器件。在数码管显示器中,一般情况下都采用动态扫描式显示方式。所谓扫描式,就是当有多个七段(带小数点的为八段)显示器要显示时,将其各个对应引脚接在一起,也就是说,所有的a段接在一起,b段也接在一起,依此类推。而利用各七段显示器的共阳(或共阴)极来确定哪一个七段显示器要显示。这样做的目的有二:(1)省电;(2)节省输出端口。 本电路利用89C2051的端口与数码的笔段接法为: P
[单片机]
AT89C20<font color='red'>51</font>单片机开发点钞机外接显示屏
51单片机实现控制网卡芯片进行数据传输的设计
在网络技术应用日益广泛的今天,网络传输是最经济有效的数据传输方式。如何利用廉价的51单片机来控制网卡芯片进行数据传输,加载TCP/IP协议连接到互联网,实现网络通信成了众多设计者的目标。但由于指令及资源的限制,实施过程会有许多困难。我们在设计方案中舍弃了耗费资源的高级协议,采用发送小数据包的方式以避免分段,来简化TCP协议和UDP协议,实现互联接入。 硬件设计与实现 系统的硬件结构框图如图1所示。本系统的微控制器是Winbond公司的78E58,网络接口芯片是与NE2000系列兼容的ReaLTEk公司的RTL8019AS。RTL8019AS内置了10BASE-T收发器,外接一个隔离LPF滤波器,经RJ-45接口输出。外部RAM
[单片机]
<font color='red'>51</font>单片机实现控制网卡芯片进行数据传输的设计
51单片机红外解码过程时序图
红外解码过程: Ray_Read_bit_timer 103us自增变量 Ray_Read_bit_count 保存位置编号 Ray_bit_timer_Buffer 33字节数组 Ray_Flag 保存标志 Ray_Read_ok 允许分析长短 (1)、按下遥控器,单片机就会有下降沿中断。启动定时器TR0=1; (2)、定时器从0开始增加到255溢出,需要时间103us。 (3)、产生定时器中断。中断里面变量Ray_Read_bit_timer增加1。 (4)、在下降沿的中断服务,判断这个时候Ray_Read_bit_timer * 103us,是不是大于11.5ms 。 (5)、如果大于11.5,肯定大于9
[单片机]
<font color='red'>51</font>单片机红外解码过程时序图
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved