⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c.bak

📁 我写的atmega16驱动的nrf24l01程序
💻 BAK
字号:

#include "WDCT_02.h"	
#include "init.c"		
#include "key.c"	    
#include "int.c"	   	
#include "nrf24l01.c"
#include "deal.c"
 	




//--------------------------------------------------------
//--------------------------------------------------------
void main(void)
{
unsigned char i;	
	init_devices();
	
	SPI_MasterInit();
//	_ClrNRF_SS;
//	while(1);
	bSignal2Hz=0;
	bTest=0;
	ComRxCount=0;
	_ClrNRF_CE;//standby mode 
	nrf24l01_init();
	while(1)
	{
//	_ClrNRF_SS;
		if(bKeyGetted == dTrue)	
		{
			switch (KeyValue)
			{
				case dKeyE:nrf24l01_init();;break;
				case dKey5:ReadRegisters();break;
				case dKey6:SendTest();break;
				case dKey7:SetRxMode();break;
				case dKey8:SetTxMode();break;
				case dKeyD:ReadNextRegister();break;
//				case dKeyE:ReadLastRegister();break;
				default:break;
			}


			bKeyGetted = dFalse;	
		}
		if(bTime2ms==dTrue)
		{
			FlashLed();
			
			if(bComRxing==dTrue)
			{
				ComRxingTimeLimited++;
				if(ComRxingTimeLimited>=50)//100ms没收到数据认为接受结束
				{
					bComRxing=dFalse;
					bCom2Spi=dTrue;
				}
				
			}
			
			bTime2ms=dFalse;	
		}	
//	_SetNRF_SS;
		
		if((bCom2Spi == dTrue) && (bSpiTxing == dFalse))
		{
			bBusy = dTrue;
			for(i=0;i<ComRxCount;i++)
			{
				nrfTxBuf[i]=ComRxBuf[i];	
			}
			bCom2Spi = dFalse;
			ComRxCount=0;
			
		    SPI_SendData(nrfTxBuf, ComTxBuf, i);
		    
			ComTxCount=i;
			PtComTx = &ComTxBuf[0];
			UDR=i;			
			while(ComTxCount>0)	WDR();
			bBusy = dFalse;
		}
		
		if(bEx0Interrupt == dTrue)
		{
			bEx0Interrupt = dFalse;
			Ex0Deal();
		}
		WDR();
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -