你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

stm8单个定时器中断没有问题,加入UART/SPI中断就异常

[复制链接]
arm0756 提问时间:2015-12-12 21:30 /
各位大师,帮忙看看程序!
工程是EWSTM8-2105版本的,在main函数里面,只有任意开三个中断的其中一个,程序就会死机,这是哪里出了问题?
//UART2_ITConfig(UART2_IT_RXNE , ENABLE);
//UART2_ITConfig(UART2_IT_TC , ENABLE);
//SPI_ITConfig(SPI_IT_TXE, ENABLE);
不开中断,UART2和SPI都能发送出数据来,再开其中任意一个中断,程序就死机了。

调试跟踪,发现程序会死在 assert_failed函数里面
void assert_failed(u8* file, u32 line)
{
    /* User can add his own implementation to report the file name and line number,
       ex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */
    /* Infinite loop */
    while (1)
    {
    }
}

中断处理函数没有用到指针,都是很简单的调试程序。
//------------------------------------------------------------------------------
//接收中断处理
void UART2_RXD_IRQ(void)
{
  UART2_ClearITPendingBit(UART2_IT_RXNE);
  UART2_SendData8(UART2_ReceiveData8());
}

//------------------------------------------------------------------------------
//发送中断处理
void UART2_TXD_IRQ(void)
{
  UART2_ClearITPendingBit(UART2_IT_TC);
}

//------------------------------------------------------------------------------
void SPI_TXD_IRQ(void)
{
  SPI_ITConfig(SPI_IT_TXE,DISABLE);   //禁止中断
  SPI_ClearITPendingBit(SPI_IT_TXE);  //清_中断标志位
  SPI_ClearFlag(SPI_FLAG_TXE);
  SPI_SendData(0x01);
}


高手帮帮忙。



有最新版本的EWSTM8的 注 册 文 件?




收藏 评论4 发布时间:2015-12-12 21:30

举报

4个回答
dsjsjf 回答时间:2015-12-12 21:57:44
帮顶一下
arm0756 回答时间:2015-12-12 22:12:19
忘记工程文件了,补上。

STM8S_Test_V01.rar

下载

1.61 MB, 下载次数: 1, 下载积分: ST金币 -1

超級稻草人 回答时间:2015-12-13 10:11:33
先了解下。。。
arm0756 回答时间:2015-12-13 10:50:33
问题在哪,求指点!

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版