📄 bank_main.c
字号:
#include <iom128v.h>
#include "board.h"
#include "datatype.h"
#include "processor.h"
#include "cc1000.h"
#include "cal.h"
#include "timer.h"
static int cnt_mS,cnt_S;
//_________________________________checksum_test___________________________________________
/*void main(void)
{
unsigned char buf[]="GPGMC,013614.000,A,4037.8163,N,10950.7082,E,0.31,47.15,250407,,*3D";
unsigned char checksum1=0,checksum2=0,pos=0,i;
do
{
checksum1=checksum1^buf[pos++];
}while(buf[pos]!='*');
checksum2=((buf[pos+1]&0x0F)<<4)|(buf[pos+2]&0x0F);
for(;;)i++;
}
void main(void)
{ unsigned char i,j;
BYTE k;
DDRC=0xff;
j=0x30;i=0x20;
k=i^j;
PORTC=k;
} *//*
void spi_init(void)
{
SPCR = 0x14; //setup SPI
SPSR = 0x00; //setup SPI
}*/
//____________________________ATD04725304693;_test________________________________
/*void init_usart(BYTE ubl,BYTE ubh)
{
UCSR1B = 0x00; //disable while setting baud rate
UCSR1A = 0x20;
UCSR1C = 0x06;
UBRR1L = ubl; //set baud rate lo
UBRR1H &= ubh; //set baud rate hi BOUD_RATE 4800
UCSR1B = 0x08;
}
unsigned char SoftUART_Send(unsigned char data)
{
while (!CHECK_BIT(UCSR1A,1<<UDRE1));
UDR0 = data;
while (!CHECK_BIT(UCSR1A, 1<<TXC1));
return 0;
}
void main(void)
{//int i; BYTE buf[]={'A','T','D','0','4','7','2','5','3','0','4','6','9','3',';',0x0D},data;
//DDRE=0xff;DDRB|=0x40;
//PORTE|=0x40;PORTB&=0xBF;delay(2000);PORTE&=0xBF;PORTB|=0x40;delay(400);PORTB&=0xBF;PORTE|=0x40;delay(100000000);delay(100000000);delay(100000000);
//
DDRD|=0xC0;
DDRB|=0x10;
// init_usart0();
//for(ubl=0x01;ubl<=0xff;ubl++)
//for(ubh=0x00;ubh<=0x03;ubh++)
//{init_usart(ubl,ubh);
//for(j=0;j<4;j++)
//{ for(i=0x00;i<= 0xff;i++)
//for(i=0;i<=14;i++)SoftUART_Send(buf[i]);
cc1000_config_wr(TX_MODE);delay(100000000);delay(100000000);delay(100000000);delay(100000000);delay(100000000);delay(100000000);
// spi_init() ;
// SET_BIT( SPCR, SPE ) ;
// CHECK_BIT( SPSR, SPIF ) ;
}
/*
void main(void)
{
//init_usart0();
DDRE=0xff;DDRB|=0x40;
PORTE|=0x40;PORTB&=0xBF;delay(2000);PORTE&=0xBF;PORTB|=0x40;delay(400);PORTB&=0xBF;PORTE|=0x40;delay(100000000);delay(100000000);delay(100000000);delay(100000000);delay(100000000);
//SFIOR &= 0x40;
//DDRC=0xFF;PORTC=0x00;delay(300);PORTC=0xff;delay(300);PORTC=0x00;delay(300);PORTC=0xff;delay(300);
// delay(300);PORTC=0xff;delay(300);PORTC=0x00;delay(300);PORTC=0xff;delay(30000);
//PORTC=0xff;delay(1000);delay(990000);delay(10000000);//PORTC=0x00;}
//for(i=0;i<=10;i++){
//PORTB|=0x40;PORTE|=0x40;delay(300);PORTE&=0xBF;PORTB&=0xBF;delay(600);delay(200);i++;
//}
//while(1){
// if(is('$'))
// {PORTE|=0x40;delay(200);PORTE&=0xBF;delay(200);PORTE|=0x40;delay(200);delay(10000);}
// else {PORTE&=0xBF;delay(400);PORTE|=0x40;delay(400);}
//}
}
//_________________________int0_test______________________________________________________----
/*
#pragma interrupt_handler int0_isr:iv_INT0
void int0_isr(void)
{
//external interupt on INT0
}
//___________________________________gps_receiver_test____________________________________
void main(void)
{
GPS gps;int i;
init_usart0();
DDRC=0x01;
while(1)
{ for(i=0;i<=225;i++)
{
UDR0=i;
}
}
//while (1)gps=pickup_valid_data();//while(1) {if (is('$')){PORTC=0x00;delay(300);PORTC=0xff;delay(300);PORTC=0x00;delay(300);PORTC=0xff;delay(300);PORTC=0x00;delay(300);PORTC=0xff;delay(300);PORTC=0x00;delay(300);PORTC=0xff;delay(300);}}
}
BYTE start ( void )
{
XDIV = 0x80;XDIV=0x7F; //设置CLK(i/o)
TCCR1B = 0x01;
if (( TIMSK &= 0x04)==0x04)return YES;
return NO;
}
void main(void)
{
BYTE timeup ;
DDRC = 0xFF ;
while(1)
{
timeup=start(); if (timeup) { if (PORTC==0x00)PORTC=0xFF;PORTC=0x00;}
}
}
void main(void)
{
DDRE = 0xFF;
init_usart0();
while(1)
{
PORTE&=0xBF;delay(400);PORTE|=0x40;delay(400);PORTE&=0xBF;delay(400);PORTE|=0x40;delay(400);PORTE&=0xBF;delay(400);PORTE|=0x40;delay(400);PORTE&=0xBF;delay(400);PORTE|=0x40;delay(400);}
} */
//_______________________________________--test_timer0_______100uS_1mS_1S_______________________________
/*
#pragma interrupt_handler timer0_comp_isr:16
void timer0_comp_isr(void)
{
PORTE=0xff;
//compare occured TCNT0=OCR0
}
void timer0_init(void)
{
TIMSK = 0x01;
TCCR0 = 0x00; //stop
ASSR = 0x00; //set async mode
TCNT0 = 0x01; //set count
OCR0 = 0x7F;
TCCR0 = 0x41; //start timer
}
#pragma interrupt_handler timer0_ovf_isr:17
void timer0_ovf_isr(void)
{
cnt_mS++;
TCNT0 = 0x60 ;
//reload counter value
}
void main(void)
{
DDRE=0xff ;
timer0_init();
PORTE=0x00 ;
SREG = 0x80 ;
while(1){ if(cnt_mS==9) {cnt_mS=0;cnt_S++;}
else if(cnt_S==999&&PORTE==0x00){PORTE=0xFF;cnt_S=0;}
else if(cnt_S==999&&PORTE==0xFF){PORTE=0x00;cnt_S=0;}
}
}*/
//_______________________________________--test_timer0_______1uS_______________________________void main(void)
/* void timer0_init(void)
{
TIMSK = 0x01;
TCCR0 = 0x00; //stop
ASSR = 0x00; //set async mode
TCNT0 = 0xFE; //set count
OCR0 = 0x00;
TCCR0 = 0x01; //start timer
}
#pragma interrupt_handler timer0_ovf_isr:17
void timer0_ovf_isr(void)
{
if(PORTE==0x00)PORTE=0xFF;
else if(PORTE==0xFF)PORTE=0x00;
TCNT0 = 0xFE;
//reload counter value
}
void main(void)
{
DDRE=0xff ;
timer0_init();
PORTE=0x00 ;
SREG = 0x80 ;
while(1){} ;
}
*/
//_________________________CC1000_tansmit_test__________________________________
/*
#pragma interrupt_handler timer0_ovf_isr:17
void timer0_ovf_isr(void)
{
if(PORTE==0x00){PORTE=0xFF;}
else if(PORTE==0xFF){PORTE=0x00;}
TCNT0 = 0xB4;
//reload counter value
}
void main(void)
{
int i;
DDRD|=0xC0 ;
DDRE=0xFF ;
DDRB=0xFF ;
PORTE=0xFF ;
cc1000_config_wr(TX_MODE);delay(300);PORTE=0xFF;delay(300); PORTE=0x00 ;delay(300); PORTE=0xFF ;delay(300); PORTE=0x00 ;delay(300); PORTE=0xFF ;delay(300); PORTE=0x00 ;delay(300); PORTE=0xFF ;delay(300); PORTE=0x00 ;delay(1000);delay(300); PORTE=0x00 ;delay(300); PORTE=0xFF ;delay(300); PORTE=0x00 ;delay(300); PORTE=0xFF ;PORTB=0x00;
timer0_init();
start_timer();
while(1){} ;
}*/
void main(void)
{
DDRA=0xFF;DDRE=0xFF;
PORTA|=0x20;PORTE=0xFF;
delay(1000);
PORTA&=0xDF;PORTE=0x00;
delay(300);
PORTA|=0x20;PORTE=0xFF;while(1);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -