找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2154|回复: 0
打印 上一主题 下一主题
收起左侧

NY8A051D单片机外部中断_下降沿上升沿触发 程序调试OK

[复制链接]
跳转到指定楼层
楼主
ID:136083 发表于 2022-4-5 19:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
2年前在一玩灯的方案公司,画了好多的NY8A051一些板子,但一直没时间搞来玩程序,今天试着调试了一把,发布。

单片机源程序如下:
  1. /* =========================================================================
  2. * Project:       PB0 External Interrupt
  3. * File:          main.c
  4. * Author:        JasonLee
  5. * Version:       V1.0
  6. * Date:          2022/04/05
  7. =========================================================================*/
  8. #include <ny8.h>
  9. #include "ny8_constant.h"
  10. #define UPDATE_REG(x)        __asm__("MOVR _" #x ",F")

  11. #define RESULT 1 //定义 RESULT 为 0

  12. void main(void)
  13. {
  14.     PORTB = 0;          //PORTB data buffer = 0 (output low)
  15. #if 1==RESULT //低电平触发
  16.     IOSTB&=~(1<<0);   //PB0设为输出模式
  17.     PORTB |= (1<<0);  //PB0输出高电平
  18.     IOSTB&=~(1<<2);   //PB2设为输出模式,点LED灯
  19.     T0MD &=~(1<<6);   //T0MD的第6位INTEDG=0,当PB0引脚发生下降沿时产生外部中断   
  20. #else //高电平触发
  21.     IOSTB&=~(1<<0);   //PB0设为输出模式
  22.     IOSTB&=~(1<<2);   //PB2设为输出模式,点LED灯
  23.     PORTB&=~(1<<0);   //PB0默认是低电平
  24.     T0MD |=(1<<6);    //T0MD的第6位INTEDG=1,当PB0引脚发生上升沿时产生外部中断
  25. #endif

  26.         PCON |= (1<<6);   //EIS:外部中断选择位,EIS=1时,PB0是外部中断输入。  
  27.         PCON |= (1<<7);   //WDTEN=1时开启WDT。
  28.         INTE |= (1<<2);   //INTIE:外部中断使能位,INTIE=1时开启外部中断。               
  29.          
  30.         UPDATE_REG(PORTB);
  31.         INTF = 0;                  // Clear all interrupt flags
  32.         ENI();                          // Enable all unmasked interrupts                       
  33.        
  34.     while(1)
  35.     {
  36.          CLRWDT();
  37.     }
  38. }

  39. //! interrupt service routine
  40. void isr(void) __interrupt(0)
  41. {
  42.         if(INTFbits.INTIF)
  43.         {
  44.                 PORTBbits.PB2 ^=1;        //PB2翻转
  45.                 INTFbits.INTIF=0;
  46.         }
  47.        
  48. }
复制代码


评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表