#ldscript is wonky
GCCINC=-T ldscripts/161x.x
-CC=msp430-gcc -g -mmcu=$(mcu) -DGCC $(GCCINC) -I include
+CC=msp430-gcc -Wall -g -mmcu=$(mcu) -DGCC $(GCCINC) -I include
apps= apps/monitor/monitor.o apps/spi/spi.o apps/i2c/i2c.o apps/chipcon/chipcon.o apps/jtag/jtag.o apps/jtag/jtag430.o
libs= lib/msp430f1612.o lib/command.o apps/jtag/jtag430asm.o
#define CCREAD P5DIR&=~MISO
//! Set up the pins for CC mode. Does not init debugger.
-unsigned char ccsetup(){
+void ccsetup(){
P5OUT|=MOSI+SCK+RST;
P5DIR|=MOSI+SCK+RST;
//P5DIR&=~MISO; //MOSI is MISO
void cchandle(unsigned char app,
unsigned char verb,
unsigned char len){
- unsigned char i;
switch(verb){
//PEEK and POKE will come later.
case READ: //Write a command and return 1-byte reply.
//Return the word.
toret=cmddata[1];
- toret=toret<<8+cmddata[1];
+ toret=(toret<<8)+cmddata[1];
return toret;
}
//! Set up the pins for JTAG mode.
-unsigned char jtagsetup(){
+void jtagsetup(){
P5DIR|=MOSI+SCK+TMS;
P5DIR&=~MISO;
P5OUT|=0xFFFF;
void jtag430handle(unsigned char app,
unsigned char verb,
unsigned char len){
- unsigned char i;
switch(verb){
case START:
//Enter JTAG mode.
#include "command.h"
+#include "platform.h"
//! Handles a monitor command.
void monitorhandle(unsigned char app,
//! Set up the pins for SPI mode.
-unsigned char spisetup(){
+void spisetup(){
P5DIR|=MOSI+SCK+SS;
P5DIR&=~MISO;
P5OUT|=SS;
\r
//! Initialize registers and all that jazz.\r
void init(){\r
- volatile unsigned int i;\r
WDTCTL = WDTPW + WDTHOLD; // Stop watchdog timer\r
\r
//LED and TX OUT\r
void txdata(unsigned char app,
unsigned char verb,
unsigned char len);
+//! Transmit a string.
+void txstring(unsigned char app,
+ unsigned char verb,
+ const char *str);
//! Delay
void delay(unsigned int count);
+
+
+void monitorhandle(unsigned char, unsigned char, unsigned char);
+void spihandle(unsigned char, unsigned char, unsigned char);
+void i2chandle(unsigned char, unsigned char, unsigned char);
+void cchandle(unsigned char, unsigned char, unsigned char);
+void jtaghandle(unsigned char, unsigned char, unsigned char);
+void jtag430handle(unsigned char, unsigned char, unsigned char);
//! Stop JTAG, release pins
void jtag_stop();
+void jtagsetup();
// JTAG430 Commands
//! \file platform.h
+unsigned char serial_rx();
+void serial_tx(unsigned char);
+void setbaud(unsigned char);
+void msp430_init_uart();
+void msp430_init_dco();
+
//LED on P1.0
#define PLEDOUT P1OUT
#define PLEDDIR P1DIR
+#include "command.h"
+#include "platform.h"
+#include <string.h>
+
//! Different command handling functions.
unsigned char cmddata[256];