亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? f905luointv.c

?? 430f1121與rf905接口
?? C
字號:
/*飽含文件*********************************************/
#include "msp430x11x1.h"
/*縮寫定義*********************************************/
#define uchar unsigned char
#define uint  unsigned int
#define ulint unsigned long int
/*常數定義***********************************************/
//#define wdt_time250 0x5a15
//#define wdt_close 	0x5a95
#define WC		0x00			// Write configuration register command
#define RC		0x10 			// Read  configuration register command
#define WTP		0x20 			// Write TX Payload  command
#define RTP		0x21			// Read  TX Payload  command
#define WTA		0x22			// Write TX Address  command
#define RTA		0x23			// Read  TX Address  command
#define RRP		0x24			// Read  RX Payload  command

#define chushi_time 0x2000	//2s
#define time_n          2
#define cishu_n		3

#define TX_EN1	P2OUT|=0x20;
#define TX_EN0	P2OUT&=0xdf;//p2.5
	
#define TRX_CE1	P2OUT|=0x02;
#define TRX_CE0	P2OUT&=0xfd;//p2.1

#define PWR_UP1 P2OUT|=0x04;
#define PWR_UP0 P2OUT&=0xfb;//p2.2

#define MOSI1	P2OUT|=0x01;
#define MOSI0	P2OUT&=0xfe;//p2.0

#define SCK1	P1OUT|=0x04;
#define SCK0 	P1OUT&=0xfb;//p1.2

#define CSN1	P1OUT|=0x08;
#define CSN0	P1OUT&=0xf7;//p1.3

#define led11  P1OUT|=0x20;
#define led10  P1OUT&=0xdf;//p1.5

#define led21  P1OUT|=0x80;
#define led20  P1OUT&=0x7f;//p1.7

#define led31  P1OUT|=0x10;
#define led30  P1OUT&=0xef;//p1.4

#define MISO	(P1IN&0x02)//p1.1
//#define AM	(P1IN&0x04) 
#define DR	(P1IN&0x01)  //p1.0
#define CD  (P1IN&0x40)  //p1.6

typedef struct RFConfig
{
	char n;
	char buf[10];
}RFConfig;

const RFConfig RxTxConf =
{
	0x0a,
	0x01, 0x0c, 0x44, 0x02, 0x02, 0xaa, 0xaa, 0xaa,0xaa, 0x58	
};
//0x01,0x00,//-10db
//0x01,0x10,//-10db 低功耗


const uchar Tx_address[4]={0xcc,0xcc,0xcc,0xcc};//rf905卡公共地址
const uchar  address[2]={0x00,0x02};

uchar  RxBuf[2];
uchar  no_rec_n;		//
uchar  time_dingshi;
uint   shijian;
uchar  start_flag;
float  vcc_value;
uchar  led_bit;
uchar  led_bit1=0;

void InitIO(void);	//初始化IO
void Initt905(void);			// Initialize t905
void SetTxMode(void);	//將905置成發射模式		// Set nRF905 in Tx mode
void SetRxMode(void);	//將905置成接收模式		// Set nRF905 in Rx mode
void TxPacket(void);	//將發送緩沖區TxBuf[]中(32BYTE)的數據發送出去		// Send data by nRF905
void RxPacket(void);	//將接收的數據放入接收緩沖區RxBuf[](32BYTE)		// Recive data by nRF905
void SpiWrite(uchar byte);	//將1字節數據通過IO發送出去			// Write data to nRF905
char SpiRead(void);	//接收1字節數據		// Read data to nRF905
void Delay(uchar n);			// Delay 100us
void init_cpu(void);
void init_ram(void);
void measure_vcc(void);		//電池電壓檢測

void init_ram(void)
{no_rec_n=0;
 time_dingshi=time_n;
 RxBuf[1]=time_n;
 RxBuf[0]=0;
 vcc_value=3.0;
 led_bit=0xb0;
 led11
 led21
 led31
}
void init_cpu(void)
{ WDTCTL=WDTPW+WDTHOLD;	//關閉看門狗定時器
 TACTL=TASSEL0+TACLR+ID0+ID1;		//ACLK,清TAR,1/8,
 CCTL0=CCIE;										//CCR0中斷允許
 CCR0=chushi_time;							//定時時間5s
 TACTL|=MC0;										//增計數
 _EINT();												//中斷允許
 LPM3;
}

void InitIO(void)
{P1DIR=0xbc;			
 P2DIR=0x27;			
	WDTCTL=WDTPW+WDTHOLD;	//關閉看門狗定時器
	Delay(200);
	Delay(200);	
	Delay(200);
	Delay(200);	
	Delay(200);
	Delay(200);	
	Delay(200);
	Delay(200);	
	Delay(200);
	Delay(200);	
	MOSI1
	SCK1
	CSN1
	SCK0	
	PWR_UP1										// nRF905 power on
	TRX_CE0										// Set nRF905 in standby mode
	TX_EN0 						        // set radio in Rx mode	
}

void Config905(void)
{
	char i;					
	CSN0	          						// Spi enable for write a spi command
	SpiWrite(WC);								// Write config command
	for (i=0;i<RxTxConf.n;i++)	// Write configration words
	{
		SpiWrite(RxTxConf.buf[i]);
	}
	CSN1	      								// Disable Spi
}


void Initt905(void)			// Initialize t905
{ InitIO();					//Set nRF905 in standby mode
	Config905();			//Config nRF905 module
	SetRxMode();			//Set nRF905 in Rx mode
}

void Delay(uchar n)
{	uchar i;
	while(n--)
	for(i=0;i<72;i++)
	    {;
	    }
}

void SpiWrite(uchar  byte)
{
	char i;	
	for (i=0;i<8;i++)			// Setup byte circulation bits
	{	
		
		if ((byte&0x80)==0x80)//if(flag)				// Put DATA_BUF.7 on data line
			MOSI1			
		else
			MOSI0				
		SCK1							// Set clock line high
		byte=byte<<1;			// Shift DATA_BUF
		SCK0							// Set clock line low 
	}	
}

char SpiRead(void)
{
	char i,j;	
	for (i=0;i<8;i++)			  // Setup byte circulation bits
	{	
		j=j<<1;								// Right shift DATA_BUF
		SCK1							    // Set clock line high
		if (MISO)
			j=j|0x01;						// Read data
		else
			j=j&0xfe;		
		SCK0									// Set clock line low
	}
	return(j);			  // Return function parameter
}

void TxPacket(void)
{
	uchar i;
	SetTxMode();
	//Config905();
	CSN0					// Spi enable for write a spi command
	SpiWrite(WTP);				// Write payload command
	//for(i=0;i<2;i++)
	//     {SpiWrite(0xaa);
	//     }
	SpiWrite(address[0]);		// Write 32 bytes Tx data
	SpiWrite(address[1]);
	//address[0]++;
	CSN1					// Spi disable
	Delay(1);
	CSN0					// Spi enable for write a spi command
	SpiWrite(WTA);				// Write address command
	for (i=0;i<4;i++)			// Write 4 bytes address
	{
		SpiWrite(Tx_address[i]);
	}
	CSN1					// Spi disable
	TRX_CE1				// Set TRX_CE high,start Tx data transmission
	Delay(1);				// while (DR!=1);
	TRX_CE0	
	PWR_UP1		// Set TRX_CE low
	SetRxMode();
}

void RxPacket(void)
{ //uint i;

	TRX_CE0									// Set nRF905 in standby mode
	CSN0										// Spi enable for write a spi command
	SpiWrite(RRP);					// Read payload command
	RxBuf[0]=SpiRead();
	RxBuf[1]=SpiRead();		
	CSN1										// Disable spi
	/*for(i=0;i<0xb000;i++)
	    {if(DR||AM)
	    	   _NOP();
	     else
	         break;
	    }										//接受完以后處于standby mode*/
/*	while(DR||AM)
	     {;}
	TRX_CE1	*/				//RxMode
	no_rec_n=0;
  if(RxBuf[1]!=0x00)
       time_dingshi=RxBuf[1];
  else
       {time_dingshi=time_n;
        RxBuf[1]=time_n;
       }
  if((RxBuf[0]&0x01)!=0x01)
      led_bit=led_bit|0x80;
  else
      led_bit=led_bit&0x7f;
  if((RxBuf[0]&0x02)!=0x02)
      led_bit=led_bit|0x10;
  else
      led_bit=led_bit&0xef;
}

void SetTxMode(void)
{
	TX_EN1
	TRX_CE0
	Delay(1); 				// delay for mode change(>=650us)
}


void SetRxMode(void)
{
	TX_EN0 
	TRX_CE1
	Delay(1); // delay for mode change(>=650us)				
}

void init(void)
{init_ram();
 Initt905();
 init_cpu();
}

interrupt[TIMERA0_VECTOR] void Timer_A(void)
{uint i;
 time_dingshi--;
 if((time_dingshi==0)&&(vcc_value>=2.0))
   {    PWR_UP1
   	Delay(5);
   	SetRxMode();						//啟動接受模式
   // for(i=0;i<0x1000;i++)
   //     {if(!CD)						//判斷CD信號
   //  	      {
    	       TxPacket();		  //發送數據
   // 	       break;
   // 	      }
   //     }
    if(i!=0x1000)
        {for(i=0;i<0x1000;i++)
    	     { if(DR)
    	  	     {RxPacket();
    	  	      break;
    	  	     }	//等待接受數據    	  	   
    	     }
        }
    TRX_CE0										//Set nRF905 in standby mode
    PWR_UP0
    if(i==0x1000)
          {no_rec_n++;
   	       if(no_rec_n>=cishu_n)
   	            {no_rec_n=0;
   	             time_dingshi=time_n;
   	             led_bit=0xb0;
   	             RxBuf[1]=time_n;
   	            }
   	       else
   	            time_dingshi=RxBuf[1];
   	      }
   }
  shijian++;
  if(shijian>=3600)
     {
      shijian=0;
      measure_vcc();
     }
  if(led_bit1)
        {led_bit1=0;
         P1OUT=(P1OUT&0x4f)|led_bit;
        }
  else
        {led_bit1=1;
         P1OUT=P1OUT|0xb0;
        } 
}

void measure_vcc(void)		//電池電壓檢測
{uint i,value;
 CACTL1=CAON;							//比較器打開,上升沿中斷允許
 CACTL2=P2CA0+P2CA1;			//CA0,CA1均與外部連接
 P2DIR|=BIT0;
 P2OUT&=~BIT0;
 P2OUT|=BIT0;
 for(i=0;i<1000;i++)
     ;						//關閉比較器中斷
 value=0;
 for(i=0;i<5000;i++)
     {if((CACTL2&CAOUT)==1)
     	     P2OUT&=~BIT0;
      else
          {P2OUT|=BIT0;
           value++;
          }
     }
 CACTL1=0x00;
 CACTL2=0x00;
 vcc_value=1.23*5000/(float)value;
 if(vcc_value<2.2)
       led_bit=led_bit&0xdf;
 else if(vcc_value>2.3)
       led_bit=led_bit|0x20;
}



main(void)
{
 init();
 while(1)
    {;}
}
	










?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人永久aaa| 精品国精品自拍自在线| 4438x成人网最大色成网站| 欧美成人vps| 亚洲乱码国产乱码精品精小说| 日本亚洲一区二区| 97精品电影院| 久久久精品天堂| 免费人成精品欧美精品| 97精品超碰一区二区三区| 久久久久国产精品人| 国产美女精品人人做人人爽| 91丨porny丨蝌蚪视频| www国产精品av| 亚洲已满18点击进入久久| 成人毛片在线观看| 国产亚洲欧美日韩日本| 久久精品噜噜噜成人av农村| 91黄色免费观看| 亚洲欧美日韩国产一区二区三区| 国内国产精品久久| 欧美一区二区免费观在线| 亚洲一区二区在线观看视频| 91浏览器入口在线观看| 国产精品久久久久三级| 国产盗摄精品一区二区三区在线 | 黄色精品一二区| 91精品国产91久久综合桃花| 亚洲色图色小说| 成人av网在线| 国产精品你懂的在线欣赏| 国产成人免费高清| 国产女人水真多18毛片18精品视频| 麻豆国产精品777777在线| 在线综合视频播放| 日本在线观看不卡视频| 91精品国产美女浴室洗澡无遮挡| 香蕉久久一区二区不卡无毒影院| 欧美日韩黄视频| 日韩精品乱码av一区二区| 在线观看91av| 毛片av一区二区| 精品国产乱码久久久久久免费| 激情六月婷婷综合| 精品久久人人做人人爰| 国产成人综合网| 中文字幕在线观看一区二区| 91在线一区二区| 一区二区高清免费观看影视大全| 色婷婷国产精品久久包臀 | 欧美色电影在线| 天天亚洲美女在线视频| 欧美一二三在线| 国产乱码一区二区三区| 中文字幕人成不卡一区| 欧洲生活片亚洲生活在线观看| 亚洲成人免费电影| 欧美精品一区二区三区蜜桃视频| 国产成人精品aa毛片| 亚洲欧洲精品一区二区三区| 在线观看一区不卡| 麻豆精品国产91久久久久久| 久久久蜜臀国产一区二区| 97se亚洲国产综合自在线 | 国产精品久久毛片| 欧美在线免费播放| 韩国女主播一区| 亚洲免费在线看| 欧美v日韩v国产v| 91香蕉视频在线| 久久精品国产在热久久| 欧美国产欧美亚州国产日韩mv天天看完整 | 欧美精品高清视频| 国产成人av电影在线播放| 亚洲一区二区三区激情| 久久精品一级爱片| 在线视频你懂得一区二区三区| 奇米色一区二区三区四区| 国产精品久久久久久久久快鸭| 欧美精品丝袜中出| 国产xxx精品视频大全| 日韩精品一级二级| 国产精品久久久久久久久久免费看 | 日韩精品一区二区三区视频| 91免费在线播放| 国产综合色在线视频区| 亚洲国产日韩在线一区模特| 中文字幕av一区二区三区| 欧美一区二区精品久久911| 色婷婷香蕉在线一区二区| 国产一区二区三区四区五区入口| 夜夜亚洲天天久久| 国产精品国产三级国产| 精品成人一区二区| 制服丝袜日韩国产| 91国产视频在线观看| 国产 欧美在线| 国产在线播放一区| 日本大胆欧美人术艺术动态| 亚洲人成精品久久久久久| 国产亚洲欧美中文| 精品国产乱码久久久久久1区2区| 欧美伊人久久大香线蕉综合69| 国产传媒一区在线| 精品一区二区久久久| 五月天亚洲婷婷| 亚洲午夜久久久久久久久电影网 | 天堂在线亚洲视频| 一区二区三区蜜桃| 自拍偷拍欧美激情| 国产亚洲欧美日韩在线一区| 日韩欧美一级精品久久| 7777精品伊人久久久大香线蕉的| 日本韩国一区二区| 色综合久久久久综合体桃花网| 成人av电影在线观看| www.亚洲人| 成人动漫中文字幕| 成人国产在线观看| 91片在线免费观看| 91美女片黄在线| 91亚洲精品乱码久久久久久蜜桃| 不卡高清视频专区| 99久久精品情趣| 91免费观看视频| 欧美亚洲国产bt| 4438x亚洲最大成人网| 日韩欧美国产小视频| 久久影音资源网| 国产精品拍天天在线| 综合电影一区二区三区| 亚洲综合另类小说| 日韩精品一级二级| 国产一区二区三区在线观看免费| 国产一区二区三区视频在线播放| 国产精品一区专区| 99久久精品国产观看| 欧美性大战久久| 日韩三级视频中文字幕| 久久五月婷婷丁香社区| 中文字幕日韩欧美一区二区三区| 一区二区在线观看视频在线观看| 偷窥少妇高潮呻吟av久久免费| 美女在线观看视频一区二区| 国产成人自拍网| 91农村精品一区二区在线| 欧美精品少妇一区二区三区| 精品国产3级a| 亚洲色大成网站www久久九九| 午夜伊人狠狠久久| 国产美女在线精品| 欧美唯美清纯偷拍| 久久九九全国免费| 午夜视频在线观看一区| 国产成人a级片| 欧美绝品在线观看成人午夜影视| 欧美精品一区二区三| 亚洲另类中文字| 国产一区日韩二区欧美三区| 欧美亚洲综合在线| 国产日韩欧美在线一区| 亚洲一二三级电影| 国产成人精品1024| 91精品在线免费| 亚洲欧美视频在线观看视频| 男人的天堂久久精品| 97se亚洲国产综合在线| 精品欧美一区二区在线观看| 一区2区3区在线看| 国产成人午夜99999| 正在播放一区二区| 亚洲黄色在线视频| 国产精品白丝jk黑袜喷水| 91精品国产手机| 一区二区成人在线观看| 成人动漫一区二区三区| 日韩欧美123| 亚洲成人av一区| 91麻豆精品视频| 国产欧美视频一区二区三区| 青青草91视频| 欧美日韩和欧美的一区二区| 亚洲精品国产精品乱码不99| 国产精品一区二区x88av| 91精品国产91热久久久做人人 | 中文幕一区二区三区久久蜜桃| 日韩av一二三| 9191国产精品| 午夜精品久久久久久久久久 | 91亚洲精华国产精华精华液| 久久先锋影音av鲁色资源网| 蜜臀久久久久久久| 欧美日本乱大交xxxxx| 亚洲一区二区三区四区五区黄 | 欧美刺激午夜性久久久久久久| 日韩制服丝袜先锋影音| 欧美日韩国产综合久久| 三级亚洲高清视频| 欧美美女一区二区三区| 日韩精品亚洲一区|