嵌入式课程设计(Proteus+STM32CubeMX+Keil) 您所在的位置:网站首页 keil软件不报错 嵌入式课程设计(Proteus+STM32CubeMX+Keil)

嵌入式课程设计(Proteus+STM32CubeMX+Keil)

2023-06-22 01:09| 来源: 网络整理| 查看: 265

        这次分享当年的嵌入式课程设计,本次课程设计基于Proteus开发农场环境监测系统,采用Proteus、STM32CubeMX、Keil嵌入式开发框架,通过Proteus搭建硬件仿真电路,模拟现实世界中的农场环境监测。

        话不多说,先看最终的实现效果。

        界面划分为几个区域:温度显示器、状态显示器、温度传感器、报警系统、温控电机、控制台等,界面分区较为清晰。

        STM32F103R6中用到的主要引脚如下:PA0~PA7作为LCD12864的数据线输入,其使能等信号端分布在PC5~PC9。PB0~PB7作为LM016L的数据线输入,其使能等信号端为PB10~PB12。PC0~PC4为控制台的输入信号端,PA11~PA14为模拟家畜移动的按键输入端。

1 主要功能        

        本次课程设计的内容主要是设计一款基于家畜养殖场的环境监测系统,用Proteus硬件仿真的方式,模拟显示世界中用到的硬件设备。基于上述嵌入式开发背景,主要实现以下几个功能:

1 显示交互信息

2 获取农场实时温度

3 报警系统与异常情况处理系统

4 家畜活动情况模拟监测

2 设计方案 2.1 主要任务

        针对项目中所描述的功能,在Proteus仿真设计中作了相应的抽象,具体任务如下表所示:

任务名称

任务内容

温度采集

读取DS18B20的数据,并将其在LM016L液晶显示器上显示

报警系统

实现对蜂鸣器以及LED灯的控制

温控系统

实现对模拟温控电机的控制

家畜活动监测与交互信息显示

实现LCD12864的输出控制

控制台

对系统中所有按键进行统一控制

2.2 STM32CubeMx相关配置

        根据Proteus电路原理图,STM32CubeMX的芯片引脚图如下图所示:

         其中PA11~PA14、PC0~PC4较特殊,其GPIO设置为External Interrupt Mode with Falling edge trigger detection即下降沿触发外部中断,Pull-up上拉模式。如下图所示:

2.3 功能模块实现 DS18B20获取温度 short DS18B20_Get_Temp(void) { u8 temp; u8 TL,TH; short tem; DS18B20_Start (); // DS18B20开始转化 DS18B20_Rst(); DS18B20_Check(); DS18B20_Write_Byte(0xcc); // 跳过ROM DS18B20_Write_Byte(0xbe); // 读温度值 TL=DS18B20_Read_Byte(); // LSB TH=DS18B20_Read_Byte(); // MSB if(TH>7) { TH=~TH; TL=~TL; temp=0; //温度为负 }else temp=1; //温度为正 tem=TH; //获得高八位 tem


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有