stm32f103通过485协议读取7合一传感器数据(温度、湿度、氮、磷、钾、ph、电导率)

stm32f103通过485协议读取7合一传感器数据(温度、湿度、氮、磷、钾、ph、电导率)

本代码原章均为原创、盗发必究

作者手里因为暂时没有大一点的屏幕,所以直接摆烂用了一块0.96寸的屏幕,但并不影响使用,后期将使用机智云平台,通过4G,WIFL数据上云,实现手机查看数据,且将会继续开发,实现智能施肥、浇水、等等功能,既可以做一个很好的毕设,也可以实际落地作为一个完整的项目,作者会持续更新,请随时关注
文章展示部分代码,完整代码文章底部下载
硬件展示:

stm32f103c8t6系统板

485转TTL模块

0.96寸OLED显示屏幕在这里插入图片描述

485转TTL模块请添加图片描述

七合一土壤检测传感器485通信协议,宽电压5-30V
七合一土壤检测传感器

在这里插入图片描述
数据读取代码展示:

#include "user_usart.h"


/**
  * @brief  配置嵌套向量中断控制器NVIC
  * @param  无
  * @retval 无
  */
	
	
	char USART_flag;
	char USART_data[20];
	int i=0;
	int USART_Ready=0;//数据接收完成标志
	void DEBUG_USART_IRQHandler(void) 
{
  
	if(USART_GetITStatus(DEBUG_USARTx,USART_IT_RXNE)!=RESET)
	{		
		USART_flag = USART_ReceiveData(DEBUG_USARTx);
		if(USART_flag==0x01)//检测包头
		{
		USART_Ready=1;
		}
		else if(i==18)//捕捉完成18个字节数据
		{
		USART_Ready=0;
		i=0;	
		}
		if(USART_Ready==1)
		{
		USART_data[i]=USART_flag;
		i++;
		}
   USART_ClearFlag(DEBUG_USARTx,USART_IT_RXNE);		
	}	 
}
static void NVIC_Configuration(void)
{
  NVIC_InitTypeDef NVIC_InitStructure;
  
  /* 嵌套向量中断控制器组选择 */
  NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
  
  /* 配置USART为中断源 */
  NVIC_InitStructure.NVIC_IRQChannel = DEBUG_USART_IRQ;
  /* 抢断优先级*/
  NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1;
  /* 子优先级 */
  NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1;
  /* 使能中断 */
  NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
  /* 初始化配置NVIC */
  NVIC_Init(&NVIC_InitStructure);
}

 /**
  * @brief  USART GPIO 配置,工作参数配置
  * @param  无
  * @retval 无
  */
void USART_Config(void)
{
	GPIO_InitTypeDef GPIO_InitStructure;
	USART_InitTypeDef USART_InitStructure;

	// 打开串口GPIO的时钟
	DEBUG_USART_GPIO_APBxClkCmd(DEBUG_USART_GPIO_CLK, ENABLE);
	
	// 打开串口外设的时钟
	DEBUG_USART_APBxClkCmd(DEBUG_USART_CLK, ENABLE);

	// 将USART Tx的GPIO配置为推挽复用模式
	GPIO_InitStructure.GP
  • 15
    点赞
  • 55
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 23
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 23
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

忧忧工控

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值