Ajuda para entender detalhes do C30.

Boa tarde a todos.
Atualmente, estou tentando me adaptar ao C30, pois fui convidado por um amigo para participar de um projeto, porem como a maioria aqui do fórum apenas utilizo CCS e MikroC.
Este é meu primeiro contato com DSPIC, e como utilizaremos o C30 estou meio perdido com algumas declarações que tenho encontrado, principalmente algumas dentro de STRUCTS.
Segue um exemplo abaixo.
Neste trecho acima pertencente ao handler do dsPIC33FJ32MC204.h, temos todas as variáveis dentro da estrutura seguidas por “:” e algum valor. Ex “unsigned PEN1L:1;” e tambem temos “unsigned :3;”.
Será que alguém poderia explicar o por que disto, seria uma inicialização das variáveis? Se for nunca tinha visto isso desta forma.
Ainda dentro do contexto DSPIC, qual a opinião de vocês sobro CCS e Mikoc para DSPIC?
Desde já agradeço.
Atualmente, estou tentando me adaptar ao C30, pois fui convidado por um amigo para participar de um projeto, porem como a maioria aqui do fórum apenas utilizo CCS e MikroC.
Este é meu primeiro contato com DSPIC, e como utilizaremos o C30 estou meio perdido com algumas declarações que tenho encontrado, principalmente algumas dentro de STRUCTS.
Segue um exemplo abaixo.
- Código: Selecionar todos
extern volatile unsigned int PWM2CON1 __attribute__((__sfr__));
typedef struct tagPWM2CON1BITS {
unsigned PEN1L:1;
unsigned :3;
unsigned PEN1H:1;
unsigned :3;
unsigned PMOD1:1;
} PWM2CON1BITS;
extern volatile PWM2CON1BITS PWM2CON1bits __attribute__((__sfr__));
Neste trecho acima pertencente ao handler do dsPIC33FJ32MC204.h, temos todas as variáveis dentro da estrutura seguidas por “:” e algum valor. Ex “unsigned PEN1L:1;” e tambem temos “unsigned :3;”.
Será que alguém poderia explicar o por que disto, seria uma inicialização das variáveis? Se for nunca tinha visto isso desta forma.
Ainda dentro do contexto DSPIC, qual a opinião de vocês sobro CCS e Mikoc para DSPIC?
Desde já agradeço.