Arduino:将数据存入片内FLASH解决…

Arduino 的IDE默认都是将一些字符串,数组存储在RAM中,而RAM虽然速度快但是328p只有区区2K,很多时候完全不够用。类似字符数组,还有自定义的LCD文字,这类对存取速度没有太高要求的数据,我们可以储存在328p的FLASH中,FLASH有32K,足够应付大多情况

要使用FLASH首先需要包括头文件:

#include

之后便可以使用PROGMEM来定义

比如有一段定义12864液晶字符的语句

//显示龙字样
const unsigned char F14x16[] = {
  0x10,0x10,0x10,0x10,0x10,0xFF,0x10,0xF0,0x12,0x1C,0xD0,0x10,0x10,0x10,
  0x40,0x20,0x10,0x0C,0x03,0x10,0x08,0x3F,0x42,0x41,0x40,0x40,0x40,0x70//龙
};


将这一段数组存入到FLASH只需要在函数后加入PROGMEM

const unsigned char F14x16[] PROGMEM= {
  0x10,0x10,0x10,0x10,0x10,0xFF,0x10,0xF0,0x12,0x1C,0xD0,0x10,0x10,0x10,
  0x40,0x20,0x10,0x0C,0x03,0x10,0x08,0x3F,0x42,0x41,0x40,0x40,0x40,0x70//龙
};


即可节约出宝贵的RAM空间


Arduino:将数据存入片内FLASH解决RAM不足


  • 2
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值