函数更新指针变量不成功,不知道问题在哪?

2020-01-12 17:22发布

全局指针变量:
  1. ws2812_pixel_t *gtp_PixelList;
复制代码更新指针的函数:

  1. void WS2812_UpdatePixels(ws2812_pixel_t *ftp_PixelList,ws2812_pixel_t *ftp_PixelNewList)
  2. {
  3.     if(se_Ws2812Status == WS2812_IDLE)
  4.     {
  5.         ftp_PixelList   = ftp_PixelNewList;
  6.         se_Ws2812Status = WS2812_SNEDING_DATA;
  7.     }
  8. }
复制代码数组:
  1. ws2812_pixel_t code switch_1_steady_on[] =
  2. {
  3.     PIXEL_IS_RED,
  4.     PIXEL_IS_RED,
  5.     PIXEL_IS_RED,
  6.     PIXEL_IS_RED,
  7.     PIXEL_IS_RED,
  8.     PIXEL_IS_RED,
  9.     PIXEL_IS_RED,
  10. };
复制代码
函数应用:
  1. WS2812_UpdatePixels(gtp_PixelList,switch_1_steady_on);
复制代码执行上述语句之后,观察断点可以执行到ftp_PixelList   = ftp_PixelNewList;
但最终switch_1_steady_on的地址并没有传递给ftp_PixelList。一下脑塞了。
请坛友帮忙看看。
另,keil中除了用print的方法,可以直接观察到指针变量指向到什么地址吗?

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
20条回答
xuwuhan
1楼-- · 2020-01-15 03:48
得好好复习指针的用法
zcllom
2楼-- · 2020-01-15 06:28
neutronlmk 发表于 2019-8-30 11:29
我把新的代码传一下。
声明:
函数:

这次重发的代码,变量命名的可读性好了很多!
要弄透一个东西,非得亲手做做。纸上得来终觉浅,绝知此事要躬行。