AVR 的 __attribute__((progmem)) 在51下如何表达

2020-02-01 16:17发布

  1. unsigned int fill(unsigned int *buf, unsigned int pos, const char __attribute__((progmem)) *progmem_s)
  2. {
  3.     char c;

  4.     while ((c = pgm_read_byte(progmem_s++)))
  5.     {
  6.         buf[0x33 + 3 + pos] = c;
  7.         pos++;
  8.     }
  9.     return(pos);
  10. }
复制代码上面是AVR代码,我想progmem可以不用吧,直接SRAM运行,那么如何修改?我改这个明显错了.
  1. unsigned int fill(unsigned int *buf, unsigned int pos, const char *progmem_s)
  2. {
  3.     char c;

  4.     while (c = progmem_s++)
  5.     {
  6.         buf[0x33 + 3 + pos] = c;
  7.         pos++;
  8.     }
  9.     return(pos);
  10. }
复制代码
0条回答

一周热门 更多>