This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

在IAR下移植contiki到ms430f1611

最近在做在IAR下移植contiki的工作,在contiki/platform/sky/dev/sky-sensor.c中有
#define ADC12MCTL_NO(adcno) ((unsigned char *) ADC12MCTL0_)[adcno]语句。
1:解释一下这个句子的意思(特别是方括号的意思);
2:我在编译整个project的时候出现了如下图的问题,想问一下是什么情况;

  • 你好,

         这是一个宏定义,这里的adcno表示的应该是ADC通道数,所以当你在代码中写了ADC12MCTL_NO(3),则编译器会替换为

    ((unsigned char *) ADC12MCTL0_)[5]这是一个unsigned char型的指针数组。

    关于编译中出现的错误,应该是没有包含msp430.h所致

  • 你好,

    不知道你能不能在MSP430.h头文件中找到该定义,如果找到,确认你函数是否加载了MSP430的寄存器头文件。

    另外推荐一篇我读书文章供你学习:

    《Contiki学习笔记:Contiki内核移植》http://blog.chinaunix.net/uid-9112803-id-3146985.html

    应该对你有帮助。