freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于msp430的無(wú)線通信系統(tǒng)設(shè)計(jì)(參考版)

2025-06-25 01:18本頁(yè)面
  

【正文】 // 轉(zhuǎn)換未完成則等待 TxBuf[m]=ADC12MEM0。 //開(kāi)啟AD轉(zhuǎn)換 while ((ADC12IFG amp。= ~CCIE。 } }//中斷程序pragma vector = TIMERA0_VECTOR__interrupt void Timer_A(void){ unsigned char *FLASHADD。 //等待系統(tǒng)穩(wěn)定,也為了和上位機(jī)速度匹配 } else //沒(méi)有接收到數(shù)據(jù) { nRF2401_SetRXinit()。 //延時(shí),等待系統(tǒng)穩(wěn)定 nRF2401_SetRXinit()。 //開(kāi)啟AD轉(zhuǎn)換定時(shí)器 _EINT()。FLASHADD!=0) //發(fā)送數(shù)據(jù) { TxBuf[0]=0xEB。 //發(fā)送數(shù)據(jù)}//數(shù)據(jù)處理函數(shù)void Data_Pro(unsigned char *rx_buf){ if(nRF24L01_RxPacket(rx_buf)==1) //判斷是否接收到數(shù)據(jù) { unsigned char *FLASHADD。 //配置為發(fā)送狀態(tài) CE_H。 SPI_Write_Buf(WR_TX_PLOAD, tx_buf, TX_PLOAD_WIDTH)。 Delay(130)。 // 設(shè)置 PWR_UP位, 使能 CRC(2 bytes) amp。 Delay(130)。 Delay(130)。 //等待系統(tǒng)穩(wěn)定 SPI_RW_Reg(WRITE_REG + CONFIG, 0x0f)。 //延時(shí),發(fā)送完畢 CE_L。 //配置為發(fā)送狀態(tài) CE_H。 SPI_Write_Buf(WR_TX_PLOAD, tx_buf, TX_PLOAD_WIDTH)。 //返回返回值}//發(fā)送數(shù)據(jù)函數(shù),功能:配置24L01為發(fā)送模式,發(fā)送數(shù)據(jù)完畢后配置為接收狀態(tài)。 //返回值為1 } SPI_RW_Reg(WRITE_REG+STATUS, tmp)。 //待機(jī)模式 SPI_Read_Buf(RD_RX_PLOAD,rx_buf,TX_PLOAD_WIDTH)。 // 讀取24L01狀態(tài)寄存器的值 if(tmpamp。0x10)==1) //IRQ引腳為1,則沒(méi)有接收到數(shù)據(jù),返回值為0 return 0。 unsigned char tmp=0。 // 置 CSN 高 return(status)。 i++) // 像buffer(*pBuf)寫(xiě)字節(jié) { SPI_RW(*pBuf++)。 for(i=0。 // 置 CSN 為低,初始化SPI通信 status = SPI_RW(reg)。 unsigned char i=0。 // 置CSN為高 return(status)。i++) { pBuf[i] = SPI_RW(0)。 //選擇讀出寄去器 for(i=0。 CSN_L。 //返回寄存器的值}//從24L01接收寄存器中讀出數(shù)據(jù)unsigned char SPI_Read_Buf(unsigned char reg, unsigned char *pBuf, unsigned char bytes){ unsigned char status=0。 // 讀寄存器的值 CSN_H。 // CSN低, 初始SPI通信 SPI_RW(reg)。 //返回nRF24L01狀態(tài)字//讀指定寄存器的值unsigned char SPI_Read(unsigned char reg){ unsigned char reg_val。 // 寫(xiě)入值 CSN_H。 // CSN為低,初始化SPI status = SPI_RW(reg)。 //將接收到的數(shù)據(jù)返回}//向指定的寄存器里寫(xiě)入值unsigned char SPI_RW_Reg(unsigned char reg, unsigned char value){ unsigned char status=0。 byte=UCA0RXBUF。 //單片機(jī)忙,則等待 while((IFG2amp。 //往發(fā)送寄存器里寫(xiě)入一個(gè)字節(jié) while(UCA0STATamp。UCA0TXIFG)==0)。 //延時(shí)130uS CE_L。 // 配置為接收狀態(tài) CE_H。 //設(shè)置發(fā)送地址,發(fā)送數(shù)據(jù)長(zhǎng)度32個(gè)字節(jié) SPI_Write_Buf(WRITE_REG + RX_ADDR_P0, RX_ADDRESS, RX_ADR_WIDTH)。 //設(shè)置 RF控制 寄存器 // PLL RF_DR RF_PWR1 RF_PWR0 LNA //0 0 0 0 1 1 1 1 // PLL不允許 數(shù)據(jù)速率 發(fā)射功率 低噪聲放大增益 數(shù)據(jù)速率 2 Mbps 發(fā)射功率 0dB SPI_RW_Reg(WRITE_REG + RX_PW_P0, RX_PLOAD_WIDTH)。 //設(shè)置 自動(dòng)重發(fā)控制 //禁止自動(dòng)重發(fā) 0000 0000 SPI_RW_Reg(WRITE_REG + RF_CH, 0)。 //設(shè)置接收通道允許 // P5 P4 P3 P2 P1 P0 //0 0 0 0 0 0 0 1 接收通道0允許 SPI_RW_Reg(WRITE_REG + SETUP_AW, 0x03)。 //命令 001 00011 寫(xiě) 00 寄存器 // RX_RD TX_DS MAX_T EN_CRC CRCO PWR_UP PRIM_RX // 0 0 0 0 1 1 1 //中斷 中斷 中斷 CRC使能 16位CRC 上電 接收模式 SPI_RW_Reg(WRITE_REG + EN_AA, 0x00)。 //延時(shí)8000us CE_L。 //增計(jì)數(shù)模式 CCR0 = j。 break。 break。 break。 break。 //清除TAR TACTL |= TASSEL_2。 // 延時(shí),使配置完成 ADC12CTL0 |= ENC。 i。 ADC12MCTL0 = SREF_1。 ADC12CTL1 = SHP。 // 使能AD轉(zhuǎn)換通道0 ADC12CTL0 = REFON + REF2_5V + ADC12ON + SHT0_2。 //SPI使能 }//初始化ADvoid AD_Init(void){ //,通道A0單次轉(zhuǎn)換 int i。 UCA0CTL1 amp。 // 時(shí)鐘源選擇為SMCLK UCA0BR0 = 0x04。 //軟件復(fù)位使能 UCA0CTL0 |= UCMSB+UCMST+UCCKPH+UCSYNC。 //等待XT2穩(wěn)定}//初始化SPIvoid SPI_Init(void){ P7SEL |= 0x00E。//晶振忙則等待 FLL_CTL1|=SELM1+SELS。 //延時(shí),等待時(shí)鐘穩(wěn)定 } while((IFG1amp。=~OFIFG。=~XT2OFF。 }//時(shí)鐘初始化void CLOCK_Init(void){ _BIS_SR(SCG0+OSCOFF)。 P10SEL = 0。 P9OUT = 0。 P9DIR = 0xFF。 P8SEL = 0。 //普通io功能 P7OUT = 0x09。=~BIT4。=~BIT2。 P7DIR = 0xFF。 //,需要設(shè)為輸入 P6SEL = 0。 P6DIR amp。 P5OUT = 0。 P5DIR = 0xFF。 P4SEL = 0。 P3OUT = 0。 P3DIR = 0xFF。 //默認(rèn)端口為輸出模式 P2SEL = 0。 //默認(rèn)端口為輸出模式 P1SEL = 0 //選擇引腳為IO端口 P1OUT = 0。OFIFG)!=0)。 //晶振錯(cuò)誤中斷標(biāo)志 Delay(0xFF)。 //DCOMCLK,關(guān)閉XT2振蕩器 do { IFG1amp。 //關(guān)閉所有振蕩器 SCFI0|=FLLD_8。 }}//DCO初始化void DCO_Init(void){ _BIS_SR(SCG0+OSCOFF)。 _NOP()。 _NOP()。k++) { _NOP()。 for(k=0。 //指針地址每次+0x100 } while(p!=(unsigned char *)0x1F600);//當(dāng)p指到0x1FE600時(shí),結(jié)束循環(huán),擦除下一段空間 FCTL1=FWKEY+WRT。 //開(kāi)始擦除 *p=0。 //擦除起始地址 p=(unsigned char *)0x10000。 //開(kāi)啟寫(xiě)模式 FCTL2=FWKEY+FSSEL_1+FN1。 //指針地址每次+0x100 } while(p!=(unsigned char *)0xFE00)。 //開(kāi)始擦除 *p=0。 //擦除起始地址,總讀為096h p=(unsigned char *)0x3E00。 //注意數(shù)據(jù)類(lèi)型定義,不同類(lèi)型占不同大小空間 FCTL2=FWKEY+FSSEL_1+FN1。 //延時(shí)8000uS while(1) { Data_Pro(RxBuf)。 //時(shí)鐘初始化,SMCLK為1M nRF2401_SetRXinit()。 //配置nRF24L01模塊 AD_Init()。 //SPI始化 Erase()。 //端口初始化 CLOCK_Init()。 //關(guān)閉看門(mén)狗 DCO_Init()。 //接收數(shù)據(jù)寄存數(shù)組int m=0。//定義變量unsigned char TxBuf[32]。void TA0_Init(unsigned int i,unsigned int j)。void nRF24L01_Tx(unsigned char * tx_buf)。void nRF24L01_TxPacket(unsigned char * tx_buf)。unsigned char SPI_Write_Buf(unsigned char reg, unsigned char const *pBuf, unsigned char bytes)。void DMAInit(char channel,char trigger,char transMode,char srcMode,char dstMo
點(diǎn)擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1