Reorganize repository structure
This commit is contained in:
parent
f2259c5424
commit
3c44927e0a
364 changed files with 0 additions and 14028 deletions
176
betty_scart/main.c
Normal file
176
betty_scart/main.c
Normal file
|
@ -0,0 +1,176 @@
|
|||
/*
|
||||
main.c
|
||||
Copyright (C) 2007
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include <P89LPC932.h> // special function register declarations
|
||||
// for the Philips P89C931 device
|
||||
|
||||
#include "rf.h"
|
||||
#include "serial.h"
|
||||
#include "cmd.h"
|
||||
#include "cc1100.h"
|
||||
#include "timer.h"
|
||||
|
||||
volatile bit terminal;
|
||||
volatile bit redirector;
|
||||
|
||||
__sfr __at (0xAD) CMP2_ ;
|
||||
|
||||
void main(void) {
|
||||
|
||||
unsigned char x;
|
||||
unsigned char len;
|
||||
|
||||
P0M1 &= 0x6c;
|
||||
P0M2 |= 0x92;
|
||||
P0 = 0x83;
|
||||
|
||||
P1M1 &= 0x3e;
|
||||
P1M2 |= 0xcd;
|
||||
P1 = 0xcd;
|
||||
|
||||
P3M1 &= 0xfe;
|
||||
P3M2 |= 0x01;
|
||||
P3 = 0;
|
||||
|
||||
/*PT0AD = 0x24;
|
||||
TMOD = 0x22;
|
||||
TAMOD = 0x10;
|
||||
TCON = 0x50;
|
||||
AUXR1 = 0x20;
|
||||
TH0 = 0x22;
|
||||
TH1 = 0x80;
|
||||
CMP2_ = 0x24;
|
||||
*/
|
||||
|
||||
initTimer0();
|
||||
initSerial();
|
||||
RF_init();
|
||||
RF_startIRQ();
|
||||
|
||||
EA = 1;
|
||||
|
||||
send_string(crlf);
|
||||
send_string("Ready");
|
||||
send_string(crlf);
|
||||
|
||||
terminal = 1;
|
||||
//redirector = 1;
|
||||
len =0;
|
||||
|
||||
while (1) {
|
||||
if(redirector) {
|
||||
if(inbuflen >= 58) {
|
||||
transmitRedir(58,redir_dest);
|
||||
}
|
||||
else if(inbuflen && TF0) {
|
||||
transmitRedir(inbuflen,redir_dest);
|
||||
}
|
||||
}
|
||||
else if (terminal) {
|
||||
if(len < inbuflen) {
|
||||
x=get_inbuf_index(len++);
|
||||
if (x == 0x0d) {
|
||||
send_string(crlf);
|
||||
inbuf[(inbufindex + len-1) & 0x3F] = 0;
|
||||
x=get_inbuf();
|
||||
len--;
|
||||
if(len) {
|
||||
switch(x) {
|
||||
case 't':
|
||||
if (inbuflen) {
|
||||
transmit(len);
|
||||
len = 0;
|
||||
send_string(crlf);
|
||||
}
|
||||
break;
|
||||
case 'r':
|
||||
if (inbuflen) {
|
||||
transmitRedir(len,0);
|
||||
len = 0;
|
||||
send_string("TX Done");
|
||||
}
|
||||
break;
|
||||
case 's':
|
||||
print_cc1100status();
|
||||
break;
|
||||
case 'c':
|
||||
print_cc1100confi();
|
||||
break;
|
||||
case 'b':
|
||||
terminal = 0;
|
||||
send_byte(0x01);
|
||||
break;
|
||||
case 'w':
|
||||
sendWOR(0x00);
|
||||
break;
|
||||
default:
|
||||
send_string("Syntax error");
|
||||
}
|
||||
while(len) {
|
||||
get_inbuf();
|
||||
len--;
|
||||
}
|
||||
}
|
||||
else {
|
||||
send_string("Ready");
|
||||
}
|
||||
send_string(crlf);
|
||||
}
|
||||
else {
|
||||
send_byte(x);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
else {
|
||||
if (inbuflen) {
|
||||
x=get_inbuf();
|
||||
switch(x) {
|
||||
case 0x00:
|
||||
|
||||
break;
|
||||
case 0x01:
|
||||
transmitB();
|
||||
break;
|
||||
case 0x02:
|
||||
cmd_strobeB();
|
||||
break;
|
||||
case 0x03:
|
||||
read_byteB();
|
||||
break;
|
||||
case 0x04:
|
||||
write_byteB();
|
||||
break;
|
||||
case 0x05:
|
||||
read_burst_byteB();
|
||||
break;
|
||||
case 0x06:
|
||||
write_burst_byteB();
|
||||
break;
|
||||
case 0x07:
|
||||
send_WORb();
|
||||
break;
|
||||
default:
|
||||
send_byte(0x00);
|
||||
}
|
||||
if (!terminal)
|
||||
send_byte(0x01);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue