完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
实验四_中断
代码 **#include"reg51.h" typedef unsigned int u16; typedef unsigned char u8; ***it led=P0^0; //位定义 ***it key=P3^2; //位定义 void delay(u16 i) //延时函数 { while(i--); } void int0_init() //串口配置 { EA=1; //中断总允许位 EX0=1; //外部中断允许位 IT0=1; //中断触发方式 下降沿触发 } void main() { int0_init(); led=0; while(1); } void int0() interrupt 0 { if(key==0) { delay(1000); //消抖 if(key==0) { led=~led; } } } 仿真图 元器件名: AT89C51 (AT89C52也可以) res (电阻) power (电源5V) button (按键) ground (接地) 备注 此为外部中断方式0 如果用外部中断1 需要将中断初始化函数中EX0改为EX1;IT0改为IT1; 中断服务函数intrrupt 0改为interrupt 2(因为intrrupt 1是定时器0) |
|
|
|
只有小组成员才能发言,加入小组>>
3263 浏览 9 评论
2944 浏览 16 评论
3443 浏览 1 评论
8955 浏览 16 评论
4036 浏览 18 评论
1079浏览 3评论
559浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
552浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2287浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1848浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-10 16:27 , Processed in 0.834493 second(s), Total 47, Slave 39 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号