Buenas tardes y gracias de antemano, se puede crear un registro o un puerto ficticio en cual este compuesto por ejemplo por el puerto A (solo parte alta) y puerto B (solo parte baja)? o por ejemplo coger 2 pines del puerto A, 3 del puerto B y 3 del puerto C?
Algo asi:
#define PORTconf1 DDRA&0xF0 | DDRB&0x0C | DDRC&0x03
#define PORTconf2 DDRA&0xF0 | DDRB&0x0C | DDRC&0x03
#define PORTin PINA&0xF0 | PINB&0x0C | PINC&0x03
#define PORTout PORTA&0x0F | PORTD&0xF0
Se que asi no se hace pero es para explicarme. Necesito poder poner por ejemplo
No se si me he explicado bien, esto se puede hacer?
Un saludo.
PD: Estoy con MPLABX y XC8 con Atmega328 pero tambien seria interesante para PICs supongo que de poderse hacer seria similar.
Me parece que si se puede. podrías ir a donde está creado, por ejemplo PORTAbits (clic derecho sobre eso y escoger "ir a definición") y puedes ver como está creado la estructura de ese registro con sus bits.
Podrías tomar de referencia eso y crear tu propio puerto.
Sería algo así MiPuerto.bit0 sería un bit del PortB y MiPuerto.bit7 sería un bit de PortA, etc.
Me parece que vi alguna vez eso en algún código.
¿La pregunta es porque lo necesitas hacer?