123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124 |
- /*
- ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
- http://www.apache.org/licenses/LICENSE-2.0
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- */
- #ifndef _BOARD_H_
- #define _BOARD_H_
- /*
- * Setup for the Olimex AVR-MT-128 proto board.
- */
- /*
- * Board identifier.
- */
- #define BOARD_OLIMEX_AVR_MT_128
- #define BOARD_NAME "Olimex AVR-MT-128"
- /* PA7 RLY DS B5 B4 B3 B2 B1
- * IN OUT IN IN IN IN IN IN
- * DDRA 0 1 0 0 0 0 0 0
- * PU VAL HiZ HiZ HiZ HiZ HiZ HiZ
- * PORTA 1 0 0 0 0 0 0 0
- */
- #define VAL_DDRA 0x40
- #define VAL_PORTA 0x80
- /*
- * All inputs with pullups.
- */
- #define VAL_DDRB 0x00
- #define VAL_PORTB 0xFF
- /* D7 D6 D5 D4 PC3 E R/W RS
- * OUT OUT OUT OUT IN OUT OUT OUT
- * DDRC 1 1 1 1 0 1 1 1
- * PU PU PU PU PU VAL VAL VAL
- * PORTC 0 0 0 0 1 0 0 0
- */
- #define VAL_DDRC 0xF7
- #define VAL_PORTC 0x08
- /* PD7 PD6 PD5 PD4 TXD RXD PD1 PD0
- * IN IN IN IN OUT IN IN IN
- * DDRD 0 0 0 0 1 0 0 0
- * PU PU PU PU VAL HiZ PU PU
- * PORTD 1 1 1 1 1 0 1 1
- */
- #define VAL_DDRD 0x08
- #define VAL_PORTD 0xFB
- /* PE7 PE6 BZ2 BZ2 PE3 PE2 PE1 PE0
- * IN IN OUT OUT IN IN OUT IN
- * DDRE 0 0 1 1 0 0 1 0
- * PU PU VAL VAL PU PU VAL PU
- * PORTE 1 1 1 1 1 1 1 1
- */
- #define VAL_DDRE 0x32
- #define VAL_PORTE 0xFF
- /* TDI TDO TMS TCK PF3 PF2 PF1 PF0
- * x x x x IN IN IN IN
- * DDRF 0 0 0 0 0 0 0 0
- * x x x x PU PU PU PU
- * PORTF 0 0 0 0 1 1 1 1
- *
- */
- #define VAL_DDRF 0x00
- #define VAL_PORTF 0x0F
- /* x x x x x PG2 PG1 PG0
- * x x x x x IN IN IN
- * DDRG 0 0 0 0 0 0 0 0
- * x x x x x PU PU PU
- * PORTG 0 0 0 0 0 1 1 1
- *
- */
- #define VAL_DDRG 0x00
- #define VAL_PORTG 0x07
- #define PORTA_BUTTON1 0
- #define PORTA_BUTTON2 1
- #define PORTA_BUTTON3 2
- #define PORTA_BUTTON4 3
- #define PORTA_BUTTON5 4
- #define PORTA_DALLAS 5
- #define PORTA_RELAY 6
- #define PORTC_44780_RS_MASK (1 << 0)
- #define PORTC_44780_RW_MASK (1 << 1)
- #define PORTC_44780_E_MASK (1 << 2)
- #define PORTC_44780_D4_MASK (1 << 4)
- #define PORTC_44780_D5_MASK (1 << 5)
- #define PORTC_44780_D6_MASK (1 << 6)
- #define PORTC_44780_D7_MASK (1 << 7)
- #define PORTC_44780_DATA_MASK (PORTC_44780_D4_MASK | PORTC_44780_D5_MASK | \
- PORTC_44780_D6_MASK | PORTC_44780_D7_MASK)
- #define PORTE_BUZZ1 (1 << 4)
- #define PORTE_BUZZ2 (1 << 5)
- #if !defined(_FROM_ASM_)
- #ifdef __cplusplus
- extern "C" {
- #endif
- void boardInit(void);
- #ifdef __cplusplus
- }
- #endif
- #endif /* _FROM_ASM_ */
- #endif /* _BOARD_H_ */
|