X-Git-Url: http://git.rot13.org/?p=goodfet;a=blobdiff_plain;f=firmware%2Finclude%2Fplatform.h;h=dfc46816681d44fc1f1caaae33ae2cf440271556;hp=e6cbcec2401b60e3c75698b77e18aff6d778c6f0;hb=6373a97ac3426c9d9966cf6a08286ecd13cc2ced;hpb=c28cce5afcc1e1747f51e5afe15e338dae030376 diff --git a/firmware/include/platform.h b/firmware/include/platform.h index e6cbcec..dfc4681 100644 --- a/firmware/include/platform.h +++ b/firmware/include/platform.h @@ -1,46 +1,70 @@ -//! \file platform.h +/*! \file platform.h + \author Travis Goodspeed + \brief Port and baud rate definitions. -#include -#include -#include + The functions specified here are defined in the platform + definition file, such as msp430x1612.c or msp430x2618.c. +*/ +#ifndef __PLATFORM_H +#define __PLATFORM_H -//Use P3 instead of P5 for target I/O on chips without P5. -#ifndef __MSP430_HAS_PORT5__ -#ifndef __MSP430_HAS_PORT5_R__ -//#warning "No P5, using P3 instead. Will break 2618 and 1612 support." -#define P5OUT P3OUT -#define P5DIR P3DIR -#define P5REN P3REN -#define P5IN P3IN -#endif +#include "gfports.h" + +#include + +#ifdef MSP430 +#ifdef __MSPGCC__ +#include +#else +#include +#include +#include #endif -//Use false P5REN for 1612. -#ifdef __MSP430_HAS_PORT5__ -#ifndef __MSP430_HAS_PORT5_R__ -//#warning "1xx, using fake P5REN for external pulling resistors." -#define P5REN P5OUT +void msp430_init(); +void led_init(); //deprecated +void led_on(); +void led_off(); +void led_toggle(); #endif + +#include "config.h" + +#ifdef useuart1 +//TelosB uses second serial port. +#define serial_tx serial1_tx +#define serial_rx serial1_rx +#define setbaud setbaud1 +#define msp430_init_uart msp430_init_uart1 +#else +//Other targets use first uart. +#define serial_tx serial0_tx +#define serial_rx serial0_rx +#define setbaud setbaud0 +#define msp430_init_uart msp430_init_uart0 #endif -unsigned char serial_rx(); -void serial_tx(unsigned char); +unsigned char serial0_rx(); +void serial0_tx(unsigned char); unsigned char serial1_rx(); void serial1_tx(unsigned char); -void setbaud(unsigned char); +void setbaud0(unsigned char); void setbaud1(unsigned char); //! Initialize the UART -void msp430_init_uart(); +void msp430_init_uart0(); +//! Initialize the UART +void msp430_init_uart1(); + //! Initialize the DCO Clock void msp430_init_dco(); +//! Called by monitor() when the DCO is correct and communication established. +void msp430_init_dco_done(); + -//LED on P1.0 -#define PLEDOUT P1OUT -#define PLEDDIR P1DIR -#define PLEDPIN 0x1 +#endif