关于51内核的N76E003单片机
创始人
2025-05-30 07:18:23

资料

  1. 官方开发板硬件资料下载
    在这里插入图片描述

  2. 官网BSP及例程下载(支持 KEIL 及 IAR)
    在这里插入图片描述

  3. N76E003_datasheet

疑问

我想实现一个管脚中断,然后在用官方给的头文件时发现一个问题:发生管脚中断的端口配置。
其datasheet相关内容如下:
在这里插入图片描述
在这里插入图片描述
我不知道是我自己考虑错了,还是官方的头文件出现了问题,暂且先在这里记录一下。我觉得这里应该修改为如下定义才更准确:
在这里插入图片描述

总结

虽然很多很多年都没再接触过51单片机了,但是现在看起来感觉还是比较简单了。
既然已经研究了大半天,就记录一下吧,说不定啥时候又得用上呢。。。
在这里插入图片描述

N76E003的管脚中断和外部中断:在这里插入图片描述

管脚中断:可以随意配置任一管脚产生(datasheet说的)中断,但是一个程序中最多配置8个中断;而且所有管脚触发的中断都是通过中断号7处理的,也就是说这些中断源共用一个中断;
外部中断:指定的管脚才可以配置为外部中断源,从上面的管脚图可以看到,外部中断0 INT0只能由P30触发,而外部中断1 INT1只能由P17触发。

中断处理函数

// 首先就是关于中断函数,比如下面这个。其实它的函数名怎么取都没有关系,重点是 "interrupt 0",
// 这个"interrupt 0"就指定了这是0号中断触发中断服务函数。
void EXT_INT0(void) interrupt 0
{ cnt_int0++;
}

寄存器配置

// 以下定义了 P00 作为管脚中断触发源,上升沿触发
Enable_INT_Port0;								// set P0 as interrupt port
Enable_BIT0_RasingEdge_Trig;			// set Px0 as interrupt pin// 那上面的功能到底是怎么实现的呢?
// 可以F12看看其定义:
#define 	Enable_INT_Port0					PICON &= 0xFC;
#define		Enable_BIT2_RasingEdge_Trig			PICON|=0x10;PINEN&=0xFB;PIPEN|=0x04// 然后,直接在datasheet中搜索寄存器名,查看每个bit的功能

相关内容

热门资讯

平安与华夏幸福七年“联姻”破裂... 平安投资华夏幸福的失败案例,为中国金融业提供了深刻的教训。文/每日财报 南黎大股东平安系与华夏幸福...
助“燃”体育热 浙江稠州商业银... 当“浙BA”的加油呐喊穿越街头巷尾,当队员们的飒爽英姿跃动于城市赛场,深厚的体育基因正催生出一条蓬勃...
儿药龙头葫芦娃药业及董事长被立... 红星资本局12月29日消息,知名儿药企业ST葫芦娃(605199.SH,或称“葫芦娃药业”)昨日晚间...
洗牌+革新!2026公募五大趋... 即将过去的2025年,中国公募基金行业在经历了一场深刻的“自我革命”之后,走上了从“高速增长”向“高...
2025商业札记|观察家 这些点滴,记录的不是“成功”和失败,是商业世界中的“行之于途而应于心”,欢欣地接纳意外,与变革一起沉...