飞码网-免费源码博客分享网站

点击这里给我发消息

基于STC89C52RC单片机的无线水位监控系统的设计

飞码网-免费源码博客分享网站 爱上飞码网—https://www.codefrees.com— 飞码网-matlab-python-C++ 爱上飞码网—https://www.codefrees.com— 飞码网-免费源码博客分享网站
设计一个无线水位监测系统,系统硬件电路由STC89C52RC模块、LCD显示模块、按键控制模块、超声波检测模块、无线通信模块、电机驱动控制模块组成。软件采用C语言作为编程语言,在keil环境下进行编译。本系统主从机采用nRF24L01无线通信,在主机上通过按键设置水位阈值, 从机上HC-SR04超声波传感器测水位来实时监测水位变化,主机可根据需要设定水位控制的高度,同时具备超限报警功能。

主机主程序关键代码

void main()
{  
interrupt_int();
LCD1602_cls();
read_memory();
init_NRF24L01() ;   //初始化24L01
delay(40000);   //延时稳定一下
nRF24L01_TxPacket(TxBuf); //发送一下数据,也可以不要的
delay(8000);   //短延时稳定
while(1)
{
display();
 send_dispose();
if(memory_flag)
{
memory_flag=0;
memory();
}
if(A_M&&time!=0) police();
else
{
beep1=0;
led1=1;
led2=1;
}
}
}

 

从机主程序关键代码

void main()
 {
Set_Time0_chaosheng();
Set_Time1_Time();
Set_Timer2_Uart();
init_NRF24L01() ;    //对器件进行初始化
    delay(4000);    //短延时稳定一下数据
    nRF24L01_TxPacket(TxBuf);  //nRF24L01发送数据
delay(8000);               //短延时稳定一下数据
EA=1;
while(1)
 {
   
       send_dispose();
   if(ultrasonic_flag)
   {
     ultrasonic_flag=0;
 StartModule();
 UartSendString("Star_ultrasonic:");
 UartData(0x30+S/100%10);
 UartData(0x30+S/10%10);
 UartData(0x30+S%10);
 UartSendString("\r\n");
 UartSendString("Link_Time:");
 UartData(0x30+Nrf24l01_Link/10%10);
 UartData(0x30+Nrf24l01_Link%10);
 UartSendString("\r\n");
   }

主机原理图

从机原理图


 
飞码网-免费源码博客分享网站 爱上飞码网—https://www.codefrees.com— 飞码网-matlab-python-C++ 爱上飞码网—https://www.codefrees.com— 飞码网-免费源码博客分享网站
赞 ()

相关推荐

内容页底部广告位3
留言与评论(共有 0 条评论)
   
验证码: