Кикроконтроллер: AT90USB1287
Только начинаю работать с IAR. Ни как не могу понять как обратиться к отдельноми биту в байте порта. Нашел вот, что:
Код
/*H**************************************************************************
* $RCSfile: mcu.h,v $
*****************************************************************************/
#ifndef MCU_H
#define MCU_H
/*==========================*/
/* Predefined SFR Addresses */
/*==========================*/
/******************************************************************************/
#if defined(__ICCAVR__) || defined(__IAR_SYSTEMS_ASM__)
/******************************************************************************/
SFR_B(PINA, 0x00) /* Input Pins, Port A */
SFR_B(DDRA, 0x01) /* Data Direction Register, Port A */
SFR_B(PORTA, 0x02) /* Data Register, Port A */
.......
#define PINA (*(volatile unsigned char *)0x20) /* Input Pins, Port A */
#define DDRA (*(volatile unsigned char *)0x21) /* Data Direction Register, Port A */
#define PORTA (*(volatile unsigned char *)0x22) /* Data Register, Port A */
..........
/*==========================*/
/* Bit Position Definitions */
/*==========================*/
/* PINA : Input Pins, Port A */
#define PINA7 7
#define PINA6 6
#define PINA5 5
#define PINA4 4
#define PINA3 3
#define PINA2 2
#define PINA1 1
#define PINA0 0
/* DDRA : Data Direction Register, Port A */
#define DDA7 7
#define DDA6 6
#define DDA5 5
#define DDA4 4
#define DDA3 3
#define DDA2 2
#define DDA1 1
#define DDA0 0
/* PORTA : Data Register, Port A */
#define PORTA7 7
#define PORTA6 6
#define PORTA5 5
#define PORTA4 4
#define PORTA3 3
#define PORTA2 2
#define PORTA1 1
#define PORTA0 0
Возник вопрос, что этим добиваются:
SFR_B(PINA, 0x00) /* Input Pins, Port A */ ???и
#define PINA7 7