求助:STC8H2K17U RTC使用内部32K晶振,配置1S中断没有反应。
STC8H2K17U RTC使用内部32K晶振,配置1S中断没有反应。配置函数如下:
u8 RTC_config(void)
{
IRC32KCR = 0x80;
while (!(IRC32KCR & 1));
RTCCFG = 0x02;
RTCCR = 0x01;
while(RTCCFG & 0x01);
NVIC_RTC_Init(RTC_ALARM_INT|RTC_SEC_INT,Priority_0);
return SUCCESS;
}
中断函数如下:
//========================================================================
// 函数: RTC_ISR_Handler
// 描述: RTC中断函数.
// 参数: none.
// 返回: none.
// 版本: V1.0, 2022-03-21
//========================================================================
void RTC_ISR_Handler (void) interrupt 13//RTC_VECTOR
{
// TODO: 在此处添加用户代码
if(RTCIF & 0x80) //闹钟中断
{
// P01 = !P01;
RTCIF &= ~0x80;
B_Alarm = 1;
}
if(RTCIF & 0x08) //秒中断
{
// P00 = !P00;
RTCIF &= ~0x08;
B_1S = 1;
}
}
STC8H2K17U的中断向量表好像也是有问题的。
/////////////////////////////////////////////////
//Interrupt Vector
/////////////////////////////////////////////////
#define INT0_VECTOR 0 //0003H
#define TMR0_VECTOR 1 //000BH
#define INT1_VECTOR 2 //0013H
#define TMR1_VECTOR 3 //001BH
#define UART1_VECTOR 4 //0023H
#define ADC_VECTOR 5 //002BH
#define LVD_VECTOR 6 //0033H
#define UART2_VECTOR 8 //0043H
#define SPI_VECTOR 9 //004BH
#define INT2_VECTOR 10 //0053H
#define INT3_VECTOR 11 //005BH
#define TMR2_VECTOR 12 //0063H
#define USER_VECTOR 13 //006BH
#define INT4_VECTOR 16 //0083H
#define UART3_VECTOR 17 //008BH
#define UART4_VECTOR 18 //0093H
#define TMR3_VECTOR 19 //009BH
#define TMR4_VECTOR 20 //00A3H
#define CMP_VECTOR 21 //00ABH
#define I2C_VECTOR 24 //00C3H
#define USB_VECTOR 25 //00CBH
#define PWMA_VECTOR 26 //00D3H
#define PWMB_VECTOR 27 //00DBH
#define TKSU_VECTOR 35 //011BH
#define RTC_VECTOR 36 //0123H
#define P0INT_VECTOR 37 //012BH
#define P1INT_VECTOR 38 //0133H
#define P2INT_VECTOR 39 //013BH
#define P3INT_VECTOR 40 //0143H
#define P4INT_VECTOR 41 //014BH
#define P5INT_VECTOR 42 //0153H
#define P6INT_VECTOR 43 //015BH
#define P7INT_VECTOR 44 //0163H
#define DMA_M2M_VECTOR 47 //017BH
#define DMA_ADC_VECTOR 48 //0183H
#define DMA_SPI_VECTOR 49 //018BH
#define DMA_UR1T_VECTOR 50 //0193H
#define DMA_UR1R_VECTOR 51 //019BH
#define DMA_UR2T_VECTOR 52 //01A3H
#define DMA_UR2R_VECTOR 53 //01ABH
#define DMA_UR3T_VECTOR 54 //01B3H
#define DMA_UR3R_VECTOR 55 //01BBH
#define DMA_UR4T_VECTOR 56 //01C3H
#define DMA_UR4R_VECTOR 57 //01CBH
#define DMA_LCM_VECTOR 58 //01D3H
#define LCM_VECTOR 59 //01DBH
是否有文档说明可以看 你 用最新的 AiCube-ISP 图形化配置,型号选 STC8H8K64U-LQFP64 生成后编译无法通过。
报错如下:
Rebuild started: Project: RTC
Rebuild target 'RTC'
compiling main.c...
compiling clock.c...
compiling wdt.c...
compiling timer.c...
compiling uart.c...
compiling i2c.c...
Sources\i2c.c(44): warning C206: 'DMA_I2C_EnableACKErrorInt': missing function-prototype
compiling rtc.c...
Sources\rtc.c(53): error C130: 'interrupt': value out of range
Target not created.
Build Time Elapsed:00:00:00 sz_cwh 发表于 2026-2-4 20:22
生成后编译无法通过。
报错如下:
Rebuild started: Project: RTC
https://www.stcai.com/gjrj
https://www.stcaimcu.com/data/download/Tools/%E6%8B%93%E5%B1%95Keil%E7%9A%84C%E4%BB%A3%E7%A0%81%E4%B8%AD%E6%96%AD%E5%8F%B7.zip
谢谢。问题已解决。
页:
[1]