?? fh_jyh.c
字號:
/**************************************************
*
* 跳頻通信源程序
*
*
* Copyright 1996 - 2003 IAR Systems. All rights reserved.
*
* $Revision: 1.0 $
*design by jiangyunhua
**************************************************/
#include <stdio.h>
//FEC EN---------P1.1
//CA EN----------P1.5
//ADDR BIT-------P1.2
//CA CLK---------P1.6
//CA DAT---------P1.7
//9853 RST-------P1.3
//9853 DAT-------P3.1
//9853 CLK-------P3.3
//DATA IN--------P4.2
//Tx EN----------P4.1
//led------------P4.5
#include <msp430x14x.h>
#define ucahr unsigned char
unsigned char kkk;
void rst_high (void)
{
P1OUT|=BIT3;
}
void rst_low (void)
{
P1OUT&=~BIT3;
}
void dat_high (void)
{
P3OUT|=BIT1;
}
void dat_low (void)
{
P3OUT&=~BIT1;
}
void clk_high (void)
{
P3OUT|=BIT3;
}
void clk_low (void)
{
P3OUT&=~BIT3;
}
void tx_low (void)
{
P4OUT&=~BIT1;
}
void tx_high ()
{
P4OUT|=BIT1;
}
void ad9853_int (void)
{
P1SEL=0X00; //P1 USED AS I/O.
P3SEL=0X00; //P3 USED AS I/O.
P4SEL=0X00; //P4 USED AS I/O.
P1DIR|=BIT1; //FEC EN=0,disable the fec fuction.
P1OUT&=~BIT1;
P1DIR|=BIT2; //ADDR BIT =0,9853ADDRESS SET TO 0.
P1OUT&=~BIT2;
P3DIR|=0xff;
// P3DIR|=0xff;
P4DIR|=0xff;
P1DIR|=0xff;
}
void send_dat (unsigned char a) //send 8bit data
{
// unsigned char a;
int i;
for (i=0;i<8;i++)
{
if ((a&0x80)==0x80)
{
dat_high();
clk_high();
clk_low();
}
else
{
dat_low();
clk_high();
clk_low();
}
a=a<<1;
}
}
void send_start (void) //start bit
{
dat_high();
clk_high();
dat_low();
clk_low();
}
void send_stop (void) //stop bit
{
dat_low();
clk_high();
dat_high();
clk_low();
// dat_low();
// clk_low();
}
void get_ack (void)
{
P3DIR&=~BIT1;
clk_high();
clk_low();
kkk=P3IN;
do
{;
}
while ((P3IN&BIT1)==BIT1);
P3DIR|=BIT1;
// clk_low();
}
void send_con_dat (unsigned char a)
{
// unsigned char a;
// send_start();
send_dat(a);
// send_stop();
get_ack();
}
void change_f (unsigned char f1,unsigned char f2,
unsigned char f3,unsigned char f4)
{
//unsigned char f1,f2,f3,f4;
tx_low();
rst_high();
rst_low();
rst_high();
send_start();
send_con_dat (0x04);
send_con_dat (0x16);
send_con_dat (0xcf);
send_con_dat (0x8b);
send_con_dat (0x00);
send_con_dat (0x00);
send_stop();
rst_low ();
rst_high ();
send_start();
send_con_dat (0x04);
send_con_dat (0x05);
send_con_dat (0x80);
send_stop();
rst_low ();
rst_high ();
send_start();
send_con_dat (0x04);
send_con_dat (0x48);
send_con_dat (0x20);
send_stop();
tx_high();
}
main()
{
/* ad9853_int();
clk_low();
clk_high();
clk_low();
rst_low();
rst_high();
rst_low();
dat_low();
dat_high();
dat_low();
tx_low();
tx_high();
tx_low(); */
unsigned char f1,f2,f3,f4;
f1=0x00;
f2=0x00;
f3=0x05;
f4=0x02;
ad9853_int ();
change_f (f4,f3,f2,f1);
WDTCTL = WDTPW + WDTHOLD; // Stop WDT
// BCSCTL1 |= XTS; // ACLK = LFXT1 = HF XTAL
// ad9853_int();
// BCSCTL1=0X30;
// BCSCTL2=0X8E;
// TACTL = TASSEL1 + TACLR;
// CCTL0 =CCIE;
//CCR0 =50000;
// TACTL|=MC1;
// _EINT();
do
{
}
while(1);
}
//interrupt[TIMERA0_VECTOR] void timer_a (void)
//{
// P4OUT^=0X10;
//}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -