设为首页
收藏本站
开启辅助访问
登录
注册
论坛
BBS
资讯
商城
阿里云1688商城批发
排行榜
Ranklist
帮助
Help
淘帖
Collection
日志
Blog
相册
Album
分享
Share
记录
Doing
搜索
搜索
本版
帖子
用户
松翰单片机论坛和资料中心
»
论坛
›
松翰单片机
›
8Bit OTP SN8P25xx/26xx/27xx/28xx/29xx等系列
›
SN2501B,T0这样设置怎么不能进入中断
返回列表
发新帖
回复
SN2501B,T0这样设置怎么不能进入中断
[复制链接]
3948
|
0
|
2015-9-5 21:59:57
|
显示全部楼层
|
阅读模式
void f_MCU_InitSFR(void)
{
FGIE = 0; // 关闭中断
OSCM = 0x00;
P0M = 0x00;
P1M = 0x08; // 1:output 0:input
P5M = 0x10;
P0UR = 0x00;
P1UR = 0x00;
P5UR = 0x00;
P5 = 0x00;
T0M = 0xe0; //T0外部时钟控制寄存器,用Fcpu时钟源
T0C = 256-25; //溢出时间值 256-x Fcpu/4 定时100us
FT0IRQ = 0; //中断请求寄存器INTRQ,存放各种中断请求标志,T0中断请求标志位清零
FT0IEN = 1; //中断请求使能寄存器INTEN,T0中断打开
TC0M= 0xe4; //TC0定时器,Fcpu/4=1M、内部时钟源、TCO自动重装、P5.4蜂鸣器输出使能打开、启动TC0定时器
TC0C= 256-131;
TC0R = 256-131; //溢出时间值 256-x Fcpu/4 定时500us
FGIE = 1; // 开启中断
}
/*=========================================================
* 函 数 名: __interrupt isr(void)
* 功能描述: 100us时间中断处理程序
* 调用方法: __interrupt isr(void)
* 全局变量:
=========================================================*/
void __interrupt [0x08] isr(void)
{
T0C = 256-25;
/* T0定时中断 */
if(FT0IRQ)
{
FT0IRQ = 0;
COUNT_10MS++;
if(COUNT_10MS >= 100)
{
COUNT_10MS = 0;
FLAG_10MS = 1;
}
}
/* TC0定时中断 */
if(FTC0IRQ)
{
FTC0IRQ = 0;
COUNT_2HZ++;
if(COUNT_2HZ >= 2)
{
COUNT_2HZ = 0;
Buzz = ~Buzz;
}
}
}
复制代码
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
显身卡
返回列表
发新帖
回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
gaozhiquan87
回复楼主
返回列表
8051核 Flash SN8F52xx/57xx/58xx/59xx/SZC系列
8Bit OTP SN8P25xx/26xx/27xx/28xx/29xx等系列
32Bit Cortex-M0 SN32F100/200/700/800等系列
OID/Wifi/NFC 点读笔芯片 无线传输芯片 近场通讯芯片等
松翰语音IC Voice Controllers
音视频控制 Video/Image Controllers
USB系列 USB Controllers