标签: hi-tech-c

我们在嵌入式c或嵌入式c ++中有'@'运算符吗?如果是,请解释下面的代码?

码:

static volatile unsigned char   TMR0    @ 0x01;

static volatile unsigned char   PORTA   @ 0x05;

static volatile unsigned char   PORTB   @ 0x06;

static volatile unsigned char   PORTC   @ 0x07;
Run Code Online (Sandbox Code Playgroud)

此代码来自PIC16F877A的HT-PICC编译器pic.h库文件

我理解静态volatile和其他关键字的含义.这里Timer0的寄存器地址是0x01,但为什么它们@在它前面使用呢?它与指针有关吗?

c embedded pic hi-tech-c

4
推荐指数
1
解决办法
191
查看次数

变量声明冲突,类型重新声明

我有这些错误和警告...我对编程很陌生,我不知道这意味着什么。你们能看一下这个并告诉我我做错了什么吗?

提前致谢

错误和警告:

Looplicht v2.0.c:226:警告:(361)函数声明为隐式 int
Looplicht v2.0.c:237: 错误: (984) 类型重新声明
Looplicht v2.0.c:237:错误:(1098)变量“integer_reverse”的冲突声明(Looplicht v2.0.c:237)

有错误的代码(我已将错误的行号放在描述中):

void mode_single_right() {

output_integer = 0x0001;        //start right

    for (unsigned char i = 0; i < number_of_outputs; i++) {
        if (jump) {
            jump = 0;
            
            output_integer = integer_reverse(output_integer);       //line 226
            switch_outputs(output_integer);                         
            output_integer = (output_integer << 1);                 
        } else {
            i--;
        }
    }


}

unsigned int integer_reverse (unsigned int input_br) {          //line 237

unsigned int output_br = 0;
bit bit_in_reverse = 0;

for (unsigned char ibr …
Run Code Online (Sandbox Code Playgroud)

c hi-tech-c

1
推荐指数
1
解决办法
1万
查看次数

标签 统计

c ×2

hi-tech-c ×2

embedded ×1

pic ×1