arduino 動態內存不足問題


親測有用,

 

參考:https://blog.csdn.net/weixin_33915554/article/details/86975847

 

如果在代碼中使用到一個數組,但是數組容量超過20000個,數組內容供主程序調用。把數組放在loop里面編譯時出現 動態內存不足

 

 

解決方法:把這個靜態數組放在MCU的FLASHROM中,而不必存在RAM里。試試這樣:const unsigned char wav[] PROGMEM = {.......};這里的PROGMEM就是把數組放在flashrom中,讀取數組內容的時候,用pgm_read_byte(&wav[123]);//假設讀數組第124個元素這樣來讀取。程序開頭還要加上 #include <avr/pgmspace.h>更直接的去arduino官網看看吧http://www.arduino.cc/en/Reference/PROGMEM --------------------- 作者:weixin_33915554 來源:CSDN 原文:https://blog.csdn.net/weixin_33915554/article/details/86975847 版權聲明:本文為博主原創文章,轉載請附上博文鏈接!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM