Part Number:MSP430F2132
使用MSP430F2132单片机驱动一个ADC,ADC是用I2C驱动的,现在只完成了I2C的初始化和ADC的数据采集部分的程序,这个ADC的初始化和数据读取并不复杂,但是编译时报错:program will not fit into available memory, or the section contains a call site that requires a trampoline that can't be generated for this section. placement with alignment fails for section ".text" size 0x233a. Available memory ranges:
请问这是因为单片机的8Kflash太小了吗?还是因为其他原因,如果不换单片机可以解决吗?
Yale Li:
很大的原因有可能是你给代码分配的内存空间太小了。
方便把报错信息以及内存分配图表上传上来吗?
,
chenxu mao:
FLASH分配只有8K,如果把flash长度改了以后虽然编译可以通过,但是不能烧录,应该是分配好的flash长度是不能修改的。
,
Yale Li:
看map文件来说代码确实是超出flash的大小了。
你有参考哪个例程吗?
,
chenxu mao:
参考的是官方的LED的例程,可能是由于一些计算函数占用了太多的内存空间,删掉计算函数或者用更简单的函数去代替就可以了,不过这个单片机确实内存比较小,不适合一些复杂的计算。
,
Yale Li:
这个系列的单片机的定位就是低功耗、内务管理。另外这款器件也比较老了。