Arduino利用PROGMEM将数据写到闪存 |
您所在的位置:网站首页 › ESP8266程序保存在闪存里面吗 › Arduino利用PROGMEM将数据写到闪存 |
在Arduino中,可以使用PROGMEM关键字将数据存储到程序存储器(闪存)中,而不是存储在RAM中。这对于保存大量的常量数据,如文本、图像、音频等非易失性数据非常有用。以下是一个示例,演示如何使用PROGMEM将数据写入闪存: #include // 声明一个存储在闪存中的字符串 const char myString[] PROGMEM = "Hello, World!"; void setup() { // 初始化串口通信 Serial.begin(9600); } void loop() { // 从闪存中读取字符串并通过串口发送 char buffer[20]; strcpy_P(buffer, (char*)pgm_read_word(&myString)); Serial.println(buffer); delay(1000); }在这个示例中,首先使用PROGMEM关键字将字符串存储到程序存储器中。然后,在loop函数中使用pgm_read_word来从闪存中读取字符串,并使用Serial.println将其发送到串口以进行输出。 请注意以下几点: 使用PROGMEM存储的数据不能直接使用标准函数(如strcpy)处理,需要使用特定的pgm_read_xxx函数来从闪存中读取数据。pgm_read_word用于读取16位数据。 由于闪存读取是比较耗时的操作,因此要确保代码不会频繁读取闪存中的数据,以免影响性能。 需要包含头文件来使用PROGMEM相关函数。 这只是一个简单的示例,可以根据需要将更多数据存储到闪存中,并使用PROGMEM来访问它们。 野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |