NEC-V850/ES 外部中断
编译环境 IAR for NEC 仿真器 MiniCube2 MCU:70f3630先上代码:
=================================================
void main(void)
{
// 这里是设置一个LED,初始化让其亮,进入中断让其灭
PMC9L_bit.no4 = 0 ;// 设置为端口模式
PM9L_bit.no4= 0 ;// 设置端口方向为输出
P9L_bit.no4 = 1 ;// 设置端口电平为高
//这里是设置外部中断的寄存器
__DI(); // 关全局中断
INTF0_bit.no4 = 1 ;// 设置使能下降沿
INTR0_bit.no4 = 0 ;// 设置禁止上升沿
PMC0_bit.no4= 1 ;// 设置端口为第二功能模式
PFCE0_bit.no4 = 0 ;
PFC0_bit.no4= 0 ;
PIC1= 0x07 ; // 设置清中断标置,开启外部中断,并且优先级设置为最低
PMK1 = 0 ; // 开外部中断1
__EI(); // 开全局中断
while(1);
}
#pragma vector = INTP1_vector
__interrupt void MD_INTP1(void)
{
P9L_bit.no4= 0 ;
PIF1 = 0;
}
=================================================
用软件仿真调试的时候,可以进入中断,但是用硬件仿真就怎么也进不去了,
请大家一起看看,我看网上有关于设置MCU 的OptionBytes的文章。
我这里需要设置么?
用MiniCube2仿真普通IO口操作是可以的,到了中断这样的内容还需要进行什么具体的设置么? 放上去两天了,还没有回音连一个回复都没有,自己自问自答吧。
只要在工程里包含这么一个文件就可以了。
下面是文件的内容:
;/*
;*****************************************************************************
;*Global define
;*****************************************************************************
;*/
#define CG_OPTION7A 0x00
#define CG_OPTION7B 0x80
#define OPT7C 0x00
#define OPT7D 0x00
#define OPT7E 0x00
#define OPT7F 0x00
;/*
;*****************************************************************************
;*This is the default initialization string of the Option Byte(s).
;*For details about valid values and their meaning,
;*please have a look into the device User's manual
;*****************************************************************************
;*/
COMMON INTVEC:CODE:ROOT(2)
ORG 7AH
`OPTBYTES`:
DB CG_OPTION7A
DB CG_OPTION7B
DB OPT7C
DB OPT7D
DB OPT7E
DB OPT7F
END
//================================================================
然后要在main函数里开始加上关闭看门狗定时器的语句:WDTM2 = 0x1F ;
剩下的事情就按照用户手册来操作寄存器就OK了。 wanghengzhi 发表于 2012-2-25 21:13
放上去两天了,还没有回音连一个回复都没有,自己自问自答吧。
只要在工程里包含这么一个文件就可以了。
下 ...
楼主有没有用到V850 can总线的,能提供一个can例子来研究么?
页:
[1]