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

无线温度湿度采集系统的设计(6)

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

无线温度湿度采集系统的设计

{ uchar i; i--; i--; i--; i--; i--; i--; }

void longdelay(uchar s) //长延时 { while(s--) { delay(10) ; } }

/************************LCD模******************************************/

BOOL lcd_bz()//测试LCD忙碌状态 { BOOL result ; rs = 0 ; rw = 1 ; ep = 1 ; result = (BOOL)(P0 & 0x80) ; ep = 0 ; return result ; }

void write_cmd(uchar cmd)// 写指令 { while(lcd_bz()) ; rs = 0 ; rw = 0 ; ep = 0 ; P0 = cmd ; ep = 1 ; ep = 0 ; }

void write_addr(uchar addr)//写地址 { write_cmd(addr|0x80) ; }

void write_byte(uchar dat)//写字节

20

{ while(lcd_bz()) ; rs = 1 ; rw = 0 ; ep = 0 ; P0 = dat ; ep = 1 ; ep = 0 ; }

void lcd_init()// 初始化 { write_cmd(0x38) ; delay(1); write_cmd(0x08) ; delay(1); write_cmd(0x01) ; delay(1); write_cmd(0x06) ; delay(1); write_cmd(0x0c) ; delay(1); }

display(uchar addr, uchar q)//在某一地址上显示一字节 { delay(1) ; write_addr(addr) ; write_byte(q) ; longdelay(1) ; }

void show1() { lcd_init();// 初始化 // Welcome display(0x03,'W'); display(0x04,'e'); display(0x05,'l'); display(0x06,'c'); display(0x07,'o'); display(0x08,'m'); display(0x09,'e'); NRFDelay(1000);//短暂延时

21

无线温度湿度采集系统的设计

/**************

display(0x43,'u'); display(0x42,'G');

display(0x44,'a'); display(0x45,'n'); display(0x46,'g'); display(0x48,'M'); display(0x49,'i'); display(0x4a,'n'); display(0x4b,'g');

display(0x01,'h');

display(0x07,'i'); display(0x08,':');

display(0x0d,'R'); display(0x0e,'H');

display(0x40,'T'); display(0x41,'h');

display(0x47,'P');

display(0x4d,'C'); }

NRFDelay(800);//短暂延时 *************************/ lcd_init();// 初始化

//\ %RH\ display(0x00,'T'); display(0x02,'e');

display(0x04,'H'); display(0x05,'u'); display(0x06,'m');

display(0x0c,'%');

//\ C\

display(0x42,'e');

display(0x44,'T'); display(0x45,'e'); display(0x46,'m'); display(0x48,':');

display(0x4c,0xdf);

22

unchar code TxAddr[]={0x34,0x43,0x10,0x10,0x01};//发送地址

/*****************状态标志*****************************************/ unchar bdata sta; //状态标志 sbit RX_DR=sta^6; sbit TX_DS=sta^5; sbit MAX_RT=sta^4;

/*****************SPI时序函数******************************************/ unchar NRFSPI(unchar date) {

unchar i; for(i=0;i<8;i++) // 循环8次 { if(date&0x80) MOSI=1; else MOSI=0; // byte最高位输出到MOSI date<<=1; // 低一位移位到最高位 SCLK=1; if(MISO) // 拉高SCK,nRF24L01从MOSI读入1位数据,同时从MISO输出1位数据 date|=0x01; // 读MISO到byte最低位 SCLK=0; // SCK置低 }

return(date); // 返回读出的一字节 }

/**********************NRF24L01初始化函数*******************************/ void NRF24L01Int() { NRFDelay(2);//让系统什么都不干 CE=0; CSN=1; SCLK=0; IRQ=1; }

/*****************SPI读寄存器一字节函数*********************************/ unchar NRFReadReg(unchar RegAddr) {

unchar BackDate; CSN=0;//启动时序

NRFSPI(RegAddr);//写寄存器地址

BackDate=NRFSPI(0x00);//写入读寄存器指令 CSN=1;

return(BackDate); //返回状态 }

23

无线温度湿度采集系统的设计

/*****************SPI写寄存器一字节函数*********************************/ unchar NRFWriteReg(unchar RegAddr,unchar date) {

unchar BackDate; CSN=0;//启动时序

BackDate=NRFSPI(RegAddr);//写入地址 NRFSPI(date);//写入值 CSN=1;

return(BackDate); }

/*****************SPI读取RXFIFO寄存器的值********************************/

unchar NRFReadRxDate(unchar RegAddr,unchar *RxDate,unchar DateLen) { //寄存器地址//读取数据存放变量//读取数据长度//用于接收 unchar BackDate,i; CSN=0;//启动时序 BackDate=NRFSPI(RegAddr);//写入要读取的寄存器地址 for(i=0;i

return(BackDate); }

/*****************SPI写入TXFIFO寄存器的值**********************************/

unchar NRFWriteTxDate(unchar RegAddr,unchar *TxDate,unchar DateLen) { //寄存器地址//写入数据存放变量//读取数据长度//用于发送 unchar BackDate,i; CSN=0;

BackDate=NRFSPI(RegAddr);//写入要写入寄存器的地址 for(i=0;i

return(BackDate); }

/*****************NRF设置为发送模式并发送数据******************************/ void NRFSetTxMode(unchar *TxDate) { //发送模式 CE=0; NRFWriteTxDate(W_REGISTER+TX_ADDR,TxAddr,TX_ADDR_WITDH);//写寄存器指令+P0地址使能指令+发送地址+地址宽度 NRFWriteTxDate(W_REGISTER+RX_ADDR_P0,TxAddr,TX_ADDR_WITDH);//为了应答接收设备,接收通道0地址和发送地址相同

24

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库无线温度湿度采集系统的设计(6)在线全文阅读。

无线温度湿度采集系统的设计(6).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/622823.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: