极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8111|回复: 0

pgmspace.h的非理论性研究

[复制链接]
发表于 2014-3-14 23:03:24 | 显示全部楼层 |阅读模式
标题写的好宏大哦。实际情况是我没研究理论,因为是在e文看不懂。 之前问 PROGMEM     一网友回复2个链接让我看,我实在是看不懂。就没在意。 之后在修改一个Oled显示屏的库,好不容易改的差不多了,总是有点小问题,说我重复定义了字库的数组。那个数组文件是  uint8_t  PROGMEM font6x8[] = {.....} 这样的,我只有改成 char font6x8[] 才能正常编译。后来折腾库就没在意它。今天仔细研究了一下例子库,发现他根本就没有 include这个字库的文件(文件名是*.c的)后来我改掉他的名字,依然可以编辑,改了扩展名后,终于报错了。后来发现在只要在字库文件的最开始加上
  1. #include <avr/pgmspace.h>
  2. #define PROGMEM

  3. uint8_t  PROGMEM font6x8[] = {......};
复制代码

这样的代码,再和.h文件放到同一个文件夹里就能自动被编译进去了。

结果是这样的,过程知道了,原因不明。。。



这是网友histamine 提供的那2个链接。
<avr/pgmspace.h>: Program Space Utilities
http://www.nongnu.org/avr-libc/u ... _avr__pgmspace.html
Arduino - PROGMEM
http://arduino.cc/en/Reference/PROGMEM

有明白的大侠可以给讲一下。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-3-29 09:57 , Processed in 0.040765 second(s), 17 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表