云文档网 - 专业文章范例文档资料分享平台

单片机毕业设计(7)

来源:网络收集 时间:2024-05-07 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xuecool-com或QQ:370150219 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

基于无线射频模块的汽车防盗报警设计

#define RX_ADDR_P1 0x0B // 'RX address pipe1' register address #define RX_ADDR_P2 0x0C // 'RX address pipe2' register address #define RX_ADDR_P3 0x0D // 'RX address pipe3' register address #define RX_ADDR_P4 0x0E // 'RX address pipe4' register address #define RX_ADDR_P5 0x0F // 'RX address pipe5' register address #define TX_ADDR 0x10 // 'TX address' register address

#define RX_PW_P0 0x11 // 'RX payload width, pipe0' register address #define RX_PW_P1 0x12 // 'RX payload width, pipe1' register address #define RX_PW_P2 0x13 // 'RX payload width, pipe2' register address #define RX_PW_P3 0x14 // 'RX payload width, pipe3' register address #define RX_PW_P4 0x15 // 'RX payload width, pipe4' register address #define RX_PW_P5 0x16 // 'RX payload width, pipe5' register address #define FIFO_STATUS 0x17 // 'FIFO Status Register' register address #define MAX_RT 0x10 // Max #of TX retrans interrupt #define TX_DS 0x20 // TX data sent interrupt #define RX_DR 0x40 // RX data received

#define RF_PACKET_LEN 8 //8

#define TX_ADR_WIDTH 5 // 5 bytes TX(RX) address width #define TX_PLOAD_WIDTH RF_PACKET_LEN // 8 bytes TX payload

Uchar Rf_Rec_Buf[RF_PACKET_LEN] = {0}; Uchar Rf_Send_Buf[RF_PACKET_LEN] = {0x33,0x59,0x72,0x31,0x89,0x67,0x45,0x23};

Uchar code TX_ADDRESS[TX_ADR_WIDTH] = {0x34,0x43,0x10,0x10,0x01}; 定义一个静态发送地址

#define RF_UP_CMD 0x77 #define RF_DOWN_CMD 0x88

31

// 基于无线射频模块的汽车防盗报警设计

#define RF_TEST_CMD 0x99

Uchar code tab[] = {\ \Uchar code system[] = {\Uchar code tab1[] = {\ C\Uchar code tab3[] = {\ C TL: C\Uchar code qk[] = {\ \/*********************************************** 函 数: RF_Setup_transmiter() 功 能: A7102设置为发射状态 输 入: / 输 出: /

描 述: A7102使用12.8M晶体为基准源

***********************************************/ void Rf_Setup_Tx(void) {

Rf_Write_Buf(WRITE_REG + TX_ADDR, TX_ADDRESS, TX_ADR_WIDTH); // Writes TX_Address to nRF24L01

//SPI_Write_Buf(WRITE_REG + RX_ADDR_P0, TX_ADDRESS, TX_ADR_WIDTH); // RX_Addr0 same as TX_Adr for Auto.Ack

//SPI_Write_Buf(WR_TX_PLOAD, Buffer, TX_PLOAD_WIDTH); // Writes data to TX payload

Rf_Write_Buf(WR_TX_PLOAD, Rf_Send_Buf, TX_PLOAD_WIDTH); // Writes RF_CE_LOW; delayus(40);

data to TX payload rled=0;

//Rf_Write_Register(WRITE_REG + EN_AA, 0x01); // Enable

Auto.Ack:Pipe0

32

基于无线射频模块的汽车防盗报警设计

Rf_Write_Register(WRITE_REG + EN_AA, 0x00); // disable

Auto.Ack:Pipe0

Rf_Write_Register(WRITE_REG + EN_RXADDR, 0x01); // Enable Pipe0 Rf_Write_Register(WRITE_REG + SETUP_AW, 0x03);//5byte的地址 //Rf_Write_Register(WRITE_REG + SETUP_RETR, 0x1a); // 500us + 86us, 10 retrans...

Rf_Write_Register(WRITE_REG + SETUP_RETR, 0x00);//禁止重发

Rf_Write_Register(WRITE_REG + RF_CH, 20); // Select RF channel 2440M

Rf_Write_Register(WRITE_REG + RF_SETUP, 0x07); // TX_PWR:0dBm, Datarate:2Mbps, LNA:HCURR

//Rf_Write_Register(WRITE_REG + CONFIG, 0x0e); // Set PWR_UP bit, enable CRC(2 bytes) & Prim:TX. MAX_RT & TX_DS enabled.. }

/*********************************************** 函 数: RF_Setup_receiver() 功 能: A7102设置为接收状态 输 入: / 输 出: /

描 述: A7102使用12.8M晶体为基准源

33

Rf_Write_Register(WRITE_REG + CONFIG, 0x3e);//

RF_CE_HIGH;

delayus(1000);

Rf_Write_Register(FLUSH_TX, 0x00);

Rf_Write_Register(WRITE_REG + STATUS, 0x70);//RESET INTTERUPT

IE0 = 0;

基于无线射频模块的汽车防盗报警设计

***********************************************/ void Rf_Setup_Rx(void) {

Rf_Write_Buf(WRITE_REG + RX_ADDR_P0, TX_ADDRESS,

RF_CE_LOW; delayus(40);

TX_ADR_WIDTH);

//Rf_Write_Register(WRITE_REG + EN_AA, 0x01); // Enable Auto.Ack:Pipe0

Rf_Write_Register(WRITE_REG + EN_AA, 0x00); // disable

Auto.Ack:Pipe0

Rf_Write_Register(WRITE_REG + EN_RXADDR, 0x01); // Enable Pipe0

Rf_Write_Register(WRITE_REG + SETUP_AW, 0x03);//5byte的地址 Rf_Write_Register(WRITE_REG + SETUP_RETR, 0x00);//禁止重发 Rf_Write_Register(WRITE_REG + RF_CH, 20); // Select RF channel

2440M

Rf_Write_Register(WRITE_REG + RX_PW_P0, TX_PLOAD_WIDTH); // Select same RX payload width as TX Payload width

Rf_Write_Register(WRITE_REG + RF_SETUP, 0x07); // TX_PWR:0dBm, Datarate:2Mbps, LNA:HCURR

Rf_Write_Register(WRITE_REG + CONFIG, 0x0f); // Set PWR_UP bit, enable CRC(2 bytes) & Prim:RX. RX_DR enabled..

RF_CE_HIGH; }

34

delayus(1000); rled=1; IE0 = 0;

基于无线射频模块的汽车防盗报警设计

void main() {

uchar i; EA = 0; Init_1602lcd(); Ini_mcu(); tempa_h=TA_H/10; tempa_l=TA_L/10; write_com(0x80); for(i=0;i<16;i++) { write_data(tab[i]);

}

write_com(0x80+0x40+10); for(i=0;i<6;i++) { write_data('.'); delayms(1000); }

write_com(0x01); write_com(0x80); for(i=0;i<16;i++) { write_data(system[i]);

}

delayms(20); Rf_Set_Io(); Rf_Setup_Rx(); delayms(10);

35

百度搜索“yundocx”或“云文档网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,云文档网,提供经典综合文库单片机毕业设计(7)在线全文阅读。

单片机毕业设计(7).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.yundocx.com/wenku/545658.html(转载请注明文章来源)
Copyright © 2018-2022 云文档网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:370150219 邮箱:370150219@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:7 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219