## 一、基本介绍

项目名:基于物联网的牲畜健康监测系统的设计与实现
项目编号:mcu-1184
单片机类型:STM32F103C8T6
具体功能:
1、通过MLX90614检测当前牲畜的体温,检测到体温不在设置的范围之内进行声光报警;
2、通过MAX30102检测当前牲畜的心率,检测到心率不在设置的范围之内进行声光报警;
3、通过MPU6050检测当前牲畜的步数、卡路里;
4、通过OLED将检测的数据进行显示;
5、通过WiFi模块将检测的数据传输到手机段,将检测的数据传输到阿里云后台、后台可以查看历史数据,数据可以生成折线图或者表格。
6、通过独立按键可以设置体温的最大值最小值、心率的最大值和最小值;。
## 二、32实物图

单片机型号:STM32F103C8T6

板子为绿色PCB板,两层板,厚度1.2,上下覆铜接地。元器件基本上为插针式,个别降压芯片会使用贴片式。

供电接口:TYPE-C

软件版本:AD2013

电路连线方式:网络标号连线方式

注意:原理图只是画出了模块的引脚图,而并不是模块的内部结构原理图

## 四、PCB图

由原理图导出,封装很大一部分都是作者自己绘制,不提供封装库,只提供连接好的源文件。中间有一个项目编号,隐藏在单片机底座下,插入单片机后不会看到。

两层板,上下覆铜接地。

## 五、系统框图
绘制软件:VISIO

## 六、软件设计流程


## 七、部分程序展示
软件版本:keil5
逻辑程序和驱动程序分开,分布于main.c和其他.c文件

/**********************************
函数名:处理函数
传参值:无
返回值:无
**********************************//**********************************
函数名:处理函数
传参值:无
返回值:无
**********************************/
void Manage_Function(void)
{
    if(display_num == 0)                                                                          //测量界面
    {
        if(temp_value > temp_max || temp_value < temp_min || heart_value > heart_max || heart_value < heart_min)            //温度不在设定的范围内,进行声光报警
        {
            if(time_num % 20 == 0)
            {
                ALERT = !ALERT;
            }
        }
        else
        {
            ALERT = 0;
        }
    }
    else                                                                                                            //设置界面,关闭声光报警
    {
        ALERT = 0;
    }
    
    if(flag_finish_5s == 1)                                                                        //5秒上传一次数据
  {
    flag_begin_5s = 0;
    Aliyun_Send_Data();
    flag_begin_5s = 1;
  }
}

Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐