如下代码为何不行呢

[复制链接]
945|7
 楼主| guoyt 发表于 2014-6-23 18:50 | 显示全部楼层 |阅读模式


void main(void)
{
         M8C_EnableGInt;
         M8C_ClearWDTAndSleep;
         
         SPIS_Start(SPIS_SPI_MODE_0|SPIS_SPI_MSB_FIRST);
         SPIS_SetupTxData(bInitSpiWriteBuffer[bCnt++]);
         SPIS_EnableInt();
         
         while(1)
         {
                 M8C_ClearWDTAndSleep;
         }
}

//-----------------------------------------------------------
//SPI interrupt_handler
//-----------------------------------------------------------
#pragma interrupt_handler MySPI_ISR
void MySPI_ISR(void)
{
         SPIS_SetupTxData(bInitSpiWriteBuffer[bCnt++]);
}

///////////////////////////////////////////////////////////////////////////////////////

hanwe 发表于 2014-6-23 18:52 | 显示全部楼层
问题表现是什么
 楼主| guoyt 发表于 2014-6-23 18:53 | 显示全部楼层
只能产生一次SPI 中断。后面就不会再有SPI中断了。
yufe 发表于 2014-6-23 18:54 | 显示全部楼层
到CY官网建个case吧
llia 发表于 2014-6-23 18:55 | 显示全部楼层
不懂,帮顶
 楼主| guoyt 发表于 2014-6-23 18:56 | 显示全部楼层
好吧,多谢大家了
happygirlwz 发表于 2014-6-23 22:21 | 显示全部楼层
lz是不是中断标志那里设置有问题??
dingsujie 发表于 2014-6-30 10:36 | 显示全部楼层
先把while里面的看门狗关了;把看门狗设置成disable;程序应该没有问题
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1018

主题

9067

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部