Matriz com Struct e union no C18 é possivel?

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

Matriz com Struct e union no C18 é possivel?

Mensagempor FabioSom12 » 20 Mar 2012 13:25

Eu preciso de uma estrutura de 4 matrizes de 20 chars com o mesmo endereço de uma matriz de 80 chars.

Eu tentei usar union mas não funcionou, será que no c18 struct só funciona com bits?


#pragma udata access lcd_env = 0x1b0
unsigned char lcd_L1[20];
unsigned char lcd_L3[20];
unsigned char lcd_L2[20];
unsigned char lcd_L4[20];
#pragma udata

union {
struct {
unsigned char L1[20];
unsigned char L3[20];
unsigned char L2[20];
unsigned char L4[20];
};
struct {
unsigned char lcd_80[80];
};
}LCDbits;
FabioSom12
Nibble
 
Mensagens: 94
Registrado em: 26 Nov 2009 14:01

Mensagempor barboza » 20 Mar 2012 15:09

Qual foi o erro??

Acho que faltou o nome das suas structs.


p.s. Você tem 1 matriz de 4 linhas e 20 colunas, não 4 matrizes e sim 4 vetores.


Poderia ser assim tb:

Código: Selecionar todos

union {
unsigned char lines[4][20];

unsigned char lcd[80];
}LCDbits;


Os homens mentiriam muito menos se as mulheres fizessem menos perguntas.
Avatar do usuário
barboza
Word
 
Mensagens: 948
Registrado em: 17 Out 2006 13:42
Localização: Longe de onde gostaria de estar

Mensagempor FabioSom12 » 20 Mar 2012 16:24

Valeu Barboza.

Eu pensava que matriz, vetor e array era tudo a mesma coisa.
Tem diferença entre eles?


Funcionou. Foi erro na construção.

Código: Selecionar todos
#pragma udata lcd_env = 0x1b0
union {
struct {
unsigned char L1[20];
unsigned char L3[20];
unsigned char L2[20];
unsigned char L4[20];
};
struct {
unsigned char lcd_80[80];
};
}LCDbits;
FabioSom12
Nibble
 
Mensagens: 94
Registrado em: 26 Nov 2009 14:01


Voltar para PIC

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

x