欢迎来到天天文库
浏览记录
ID:12387902
大小:33.50 KB
页数:4页
时间:2018-07-16
《基于avr的2401的程序》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、#include#defineucharunsignedchar#defineuintunsignedint//------------------------------------------------------------------------------//spi标志#defineDDR_SPIDDRB#defineDD_MOSI5#defineDD_SCK7#defineDD_SS4//--------------------------------NRF24L01接口定义-------
2、-------------------------//------------------------------------------------------------------------------//#defineNRF24L01_MISO PB6 //输入0 #define Hign_24L01_MISO PORTB
3、=(1<4、(1<5、=(1<6、=(1<7、 Low_24L01_SCK PORTB&=~(1<8、=(1<9、 PORTB10、=(1<11、(1<12、(1<13、(1<14、(1<15、(1<16、口,主机模式,MSB低位在前,模式0,16分频,SPI时钟1MHZ SPSR=0;}ucharSPI_RW(uchardate){ SPDR=date; while(!(SPSR&(1<17、ertoreadfrom.. reg_val=SPI_RW(0); //..thenreadregistervalue Hign_24L01_CSN; //CSNhigh,terminateSPIcommunication return(reg_val); //returnregistervalue}ucharSPI_RW_Reg(ucharreg,ucharvalue){ ucharstatus; Low_24L01_CSN; //CSNlo18、w,initSPItransaction status=SPI_RW(reg); //selectregister SPI_RW(value); //..andwritevaluetoit.. Hign_24L01_CSN; //CSNhi
4、(1<5、=(1<6、=(1<7、 Low_24L01_SCK PORTB&=~(1<8、=(1<9、 PORTB10、=(1<11、(1<12、(1<13、(1<14、(1<15、(1<16、口,主机模式,MSB低位在前,模式0,16分频,SPI时钟1MHZ SPSR=0;}ucharSPI_RW(uchardate){ SPDR=date; while(!(SPSR&(1<17、ertoreadfrom.. reg_val=SPI_RW(0); //..thenreadregistervalue Hign_24L01_CSN; //CSNhigh,terminateSPIcommunication return(reg_val); //returnregistervalue}ucharSPI_RW_Reg(ucharreg,ucharvalue){ ucharstatus; Low_24L01_CSN; //CSNlo18、w,initSPItransaction status=SPI_RW(reg); //selectregister SPI_RW(value); //..andwritevaluetoit.. Hign_24L01_CSN; //CSNhi
5、=(1<6、=(1<7、 Low_24L01_SCK PORTB&=~(1<8、=(1<9、 PORTB10、=(1<11、(1<12、(1<13、(1<14、(1<15、(1<16、口,主机模式,MSB低位在前,模式0,16分频,SPI时钟1MHZ SPSR=0;}ucharSPI_RW(uchardate){ SPDR=date; while(!(SPSR&(1<17、ertoreadfrom.. reg_val=SPI_RW(0); //..thenreadregistervalue Hign_24L01_CSN; //CSNhigh,terminateSPIcommunication return(reg_val); //returnregistervalue}ucharSPI_RW_Reg(ucharreg,ucharvalue){ ucharstatus; Low_24L01_CSN; //CSNlo18、w,initSPItransaction status=SPI_RW(reg); //selectregister SPI_RW(value); //..andwritevaluetoit.. Hign_24L01_CSN; //CSNhi
6、=(1<7、 Low_24L01_SCK PORTB&=~(1<8、=(1<9、 PORTB10、=(1<11、(1<12、(1<13、(1<14、(1<15、(1<16、口,主机模式,MSB低位在前,模式0,16分频,SPI时钟1MHZ SPSR=0;}ucharSPI_RW(uchardate){ SPDR=date; while(!(SPSR&(1<17、ertoreadfrom.. reg_val=SPI_RW(0); //..thenreadregistervalue Hign_24L01_CSN; //CSNhigh,terminateSPIcommunication return(reg_val); //returnregistervalue}ucharSPI_RW_Reg(ucharreg,ucharvalue){ ucharstatus; Low_24L01_CSN; //CSNlo18、w,initSPItransaction status=SPI_RW(reg); //selectregister SPI_RW(value); //..andwritevaluetoit.. Hign_24L01_CSN; //CSNhi
7、 Low_24L01_SCK PORTB&=~(1<8、=(1<9、 PORTB10、=(1<11、(1<12、(1<13、(1<14、(1<15、(1<16、口,主机模式,MSB低位在前,模式0,16分频,SPI时钟1MHZ SPSR=0;}ucharSPI_RW(uchardate){ SPDR=date; while(!(SPSR&(1<17、ertoreadfrom.. reg_val=SPI_RW(0); //..thenreadregistervalue Hign_24L01_CSN; //CSNhigh,terminateSPIcommunication return(reg_val); //returnregistervalue}ucharSPI_RW_Reg(ucharreg,ucharvalue){ ucharstatus; Low_24L01_CSN; //CSNlo18、w,initSPItransaction status=SPI_RW(reg); //selectregister SPI_RW(value); //..andwritevaluetoit.. Hign_24L01_CSN; //CSNhi
8、=(1<9、 PORTB10、=(1<11、(1<12、(1<13、(1<14、(1<15、(1<16、口,主机模式,MSB低位在前,模式0,16分频,SPI时钟1MHZ SPSR=0;}ucharSPI_RW(uchardate){ SPDR=date; while(!(SPSR&(1<17、ertoreadfrom.. reg_val=SPI_RW(0); //..thenreadregistervalue Hign_24L01_CSN; //CSNhigh,terminateSPIcommunication return(reg_val); //returnregistervalue}ucharSPI_RW_Reg(ucharreg,ucharvalue){ ucharstatus; Low_24L01_CSN; //CSNlo18、w,initSPItransaction status=SPI_RW(reg); //selectregister SPI_RW(value); //..andwritevaluetoit.. Hign_24L01_CSN; //CSNhi
9、 PORTB
10、=(1<11、(1<12、(1<13、(1<14、(1<15、(1<16、口,主机模式,MSB低位在前,模式0,16分频,SPI时钟1MHZ SPSR=0;}ucharSPI_RW(uchardate){ SPDR=date; while(!(SPSR&(1<17、ertoreadfrom.. reg_val=SPI_RW(0); //..thenreadregistervalue Hign_24L01_CSN; //CSNhigh,terminateSPIcommunication return(reg_val); //returnregistervalue}ucharSPI_RW_Reg(ucharreg,ucharvalue){ ucharstatus; Low_24L01_CSN; //CSNlo18、w,initSPItransaction status=SPI_RW(reg); //selectregister SPI_RW(value); //..andwritevaluetoit.. Hign_24L01_CSN; //CSNhi
11、(1<12、(1<13、(1<14、(1<15、(1<16、口,主机模式,MSB低位在前,模式0,16分频,SPI时钟1MHZ SPSR=0;}ucharSPI_RW(uchardate){ SPDR=date; while(!(SPSR&(1<17、ertoreadfrom.. reg_val=SPI_RW(0); //..thenreadregistervalue Hign_24L01_CSN; //CSNhigh,terminateSPIcommunication return(reg_val); //returnregistervalue}ucharSPI_RW_Reg(ucharreg,ucharvalue){ ucharstatus; Low_24L01_CSN; //CSNlo18、w,initSPItransaction status=SPI_RW(reg); //selectregister SPI_RW(value); //..andwritevaluetoit.. Hign_24L01_CSN; //CSNhi
12、(1<13、(1<14、(1<15、(1<16、口,主机模式,MSB低位在前,模式0,16分频,SPI时钟1MHZ SPSR=0;}ucharSPI_RW(uchardate){ SPDR=date; while(!(SPSR&(1<17、ertoreadfrom.. reg_val=SPI_RW(0); //..thenreadregistervalue Hign_24L01_CSN; //CSNhigh,terminateSPIcommunication return(reg_val); //returnregistervalue}ucharSPI_RW_Reg(ucharreg,ucharvalue){ ucharstatus; Low_24L01_CSN; //CSNlo18、w,initSPItransaction status=SPI_RW(reg); //selectregister SPI_RW(value); //..andwritevaluetoit.. Hign_24L01_CSN; //CSNhi
13、(1<14、(1<15、(1<16、口,主机模式,MSB低位在前,模式0,16分频,SPI时钟1MHZ SPSR=0;}ucharSPI_RW(uchardate){ SPDR=date; while(!(SPSR&(1<17、ertoreadfrom.. reg_val=SPI_RW(0); //..thenreadregistervalue Hign_24L01_CSN; //CSNhigh,terminateSPIcommunication return(reg_val); //returnregistervalue}ucharSPI_RW_Reg(ucharreg,ucharvalue){ ucharstatus; Low_24L01_CSN; //CSNlo18、w,initSPItransaction status=SPI_RW(reg); //selectregister SPI_RW(value); //..andwritevaluetoit.. Hign_24L01_CSN; //CSNhi
14、(1<15、(1<16、口,主机模式,MSB低位在前,模式0,16分频,SPI时钟1MHZ SPSR=0;}ucharSPI_RW(uchardate){ SPDR=date; while(!(SPSR&(1<17、ertoreadfrom.. reg_val=SPI_RW(0); //..thenreadregistervalue Hign_24L01_CSN; //CSNhigh,terminateSPIcommunication return(reg_val); //returnregistervalue}ucharSPI_RW_Reg(ucharreg,ucharvalue){ ucharstatus; Low_24L01_CSN; //CSNlo18、w,initSPItransaction status=SPI_RW(reg); //selectregister SPI_RW(value); //..andwritevaluetoit.. Hign_24L01_CSN; //CSNhi
15、(1<16、口,主机模式,MSB低位在前,模式0,16分频,SPI时钟1MHZ SPSR=0;}ucharSPI_RW(uchardate){ SPDR=date; while(!(SPSR&(1<17、ertoreadfrom.. reg_val=SPI_RW(0); //..thenreadregistervalue Hign_24L01_CSN; //CSNhigh,terminateSPIcommunication return(reg_val); //returnregistervalue}ucharSPI_RW_Reg(ucharreg,ucharvalue){ ucharstatus; Low_24L01_CSN; //CSNlo18、w,initSPItransaction status=SPI_RW(reg); //selectregister SPI_RW(value); //..andwritevaluetoit.. Hign_24L01_CSN; //CSNhi
16、口,主机模式,MSB低位在前,模式0,16分频,SPI时钟1MHZ SPSR=0;}ucharSPI_RW(uchardate){ SPDR=date; while(!(SPSR&(1<17、ertoreadfrom.. reg_val=SPI_RW(0); //..thenreadregistervalue Hign_24L01_CSN; //CSNhigh,terminateSPIcommunication return(reg_val); //returnregistervalue}ucharSPI_RW_Reg(ucharreg,ucharvalue){ ucharstatus; Low_24L01_CSN; //CSNlo18、w,initSPItransaction status=SPI_RW(reg); //selectregister SPI_RW(value); //..andwritevaluetoit.. Hign_24L01_CSN; //CSNhi
17、ertoreadfrom.. reg_val=SPI_RW(0); //..thenreadregistervalue Hign_24L01_CSN; //CSNhigh,terminateSPIcommunication return(reg_val); //returnregistervalue}ucharSPI_RW_Reg(ucharreg,ucharvalue){ ucharstatus; Low_24L01_CSN; //CSNlo
18、w,initSPItransaction status=SPI_RW(reg); //selectregister SPI_RW(value); //..andwritevaluetoit.. Hign_24L01_CSN; //CSNhi
此文档下载收益归作者所有