大家好,我今天刚用MSP430G2553 完成一个项目,以前用别的芯片。
现在遇到一个我不能理解的问题,描述如下:
就是开一个串口中断,我现在代码有定时器的中断,运行都正常。但是当我开串口中断的时候编译error,错误提示如下:
available memory. placement with alignment fails for section ".int07" size
>> Compilation failure
0x4 . Available memory ranges:
INT07 size: 0x2 unused: 0x2 max hole: 0x2error #10010: errors encountered during linking; "msp430g2xx3_lpm3_vlo.out" not
———-end———
开中断代码如下:
#pragma vector = USCIAB0RX_VECTOR
__interrupt void USCIAB0RX(void)
{
// __bic_SR_register_on_exit(LPM0_bits); // Exit LPM3 on reti
}
我定时器的中断都是正常运行的,为啥开这个中断就提示错误呢?我尝试的办法如下:
1.开其他的中断———>正常编译
2将我的定时器中断服务代码屏蔽再开串口中断,——————编译错误
我简单的查了一下,这个错误应该是内存不够的意思,但是我开别的中断为啥不错误?就错误串口中断服务?
请大神指点,第一次接触TI
忘了说了,IDE 用CCS5
Susan Yang:
您现在有进入低功耗模式?串口中断的话,建议您先看一下官网的例程 www.ti.com.cn/…/toolssoftware
msp430g2xx3_uscia0_uart_05_9600.cUSCI_A0, Ultra-Low Pwr UART 9600 Echo ISR, 32kHz ACLK
msp430g2xx3_uscia0_uart_06_9600.cUSCI_A0, Ultra-Low Pwr UART 9600 String, 32kHz ACLK
msp430g2xx3_uscia0_uart_07_9600.cUSCI_A0, Ultra-Low Pwr UART 9600 RX/TX, 32kHz ACLK
msp430g2xx3_uscia0_uart_08_9600.cUSCI_A0, UART 9600 Full-Duplex Transceiver, 32kHz ACLK
灰小子:
建议楼主把完整的代码上传一下
可能哪里误操作.int07了