基于STM32F103C8T6最小开发板设计的户外环境监测系统(运用了DHT11模块,GY-30数字光照模块,低电平触发蜂鸣器,OLED显示)

基于STM32F103C8T6最小开发板设计的户外环境监测系统(运用了DHT11模块,GY-30数字光照模块,低电平触发蜂鸣器,OLED显示)

这个户外监测系统自己还在完善,在这个上传给onenet中移物联网上传出现一点小问题,不过上传数据还是不是很稳定,所以目前个人发表的是自己实现在周遭环境监测系统的1.0版本。后续还会发表自己的升级版,敬请期待吧!

首[在这里插入图片描述是我们这个系统运行的载体是STM32F103C8T6最小系统板
然后就是大家比较熟知的传感器模块:
(1):温湿度传感器
在这里插入图片描述
这个传感器运行是需要经过两次的上拉电平,才能实现将AD转换成数据转发传输,想要更加深入理解这个传感器的原理可以这个大佬学习-(我也是看这个的)

static void DHT11_Rst(void)
{                 
		GPIO_SETOUT();											//配置成输出模式
    GPIO_ResetBits(DHT11_IO,DHT11_PIN); //拉低数据线
    delay_ms(20);    										//拉低至少18ms
    GPIO_SetBits(DHT11_IO,DHT11_PIN); 	//拉高数据线 
	  delay_us(30);     									//主机拉高20~40us
		GPIO_ResetBits(DHT11_IO,DHT11_PIN);
}

这是启动让DHT11可是进行数据传输。(后面我把代码打个包)
这里是接线安排

OUT管脚接最小系统板的PB11管脚

(2):GY-30光照强度传感器
在这里插入图片描述
这个代码实现的逻辑是由下图
|

GPIO配置配置使能,管脚配置为PB5\6
初始化BH1750设置地址,内存地址,还有IIC信号停止源
延时函数Delay()
读取光照强度读取BH1750内部结构
合成数据运算设置value值

想要了解更多的同学可以看这个博主的博文帅奎奎
管脚插线方法:

GND、ADDGND
VCCVcc
SDAPB5
SCLPB6

(3)OLED显示屏:
在这里插入图片描述
我用的OLED代码是正点原子的,通过这个实验例程移植到我这边的代码上。当然为了更好的实现我自己也改了一些内容:

void OLED_Show(u8 temp,u8 humi,u8 Light)
{	
  
	OLED_ShowString(35,2, ":",16);//显示温度中文
	OLED_ShowCHinese(0,4,10);
	OLED_ShowCHinese(17,4,11);
	OLED_ShowString(35,4, ":",16);//显示湿度中文
	OLED_ShowCHinese(0,6,12);
	OLED_ShowCHinese(17,6,13);
	OLED_ShowString(35,6, ":",16);//显示光照中文
	OLED_ShowNum(45,2,temp,3,16);//显示温度
	OLED_ShowNum(45,4,humi,3,16);//显示湿度的码值 
	OLED_ShowNum(45,6,Light,3,16);//显示湿度的码值	 
	delay_ms(10);

}

这是我自己修改的地方,为了代码的客观性,将冗余的代码用函数的形式实现。

接线设置:

SDAPA7
SCLPA5

这样就可以将这些模块整合在最小系统里了。
OLED显示

串口实时反馈

遇到的问题总结
一个是运行总线IIC上面的知识,自己运用的不是很熟练,同时在将这些代码初始时,整体的客观性不强,现在改过来啦
在这里插入图片描述
整体自己这样过来还是颇有感触,网上有各种各样的方法和代码,都不如自己慢慢调试,形成自己传感器库,在后面的开发中直接调用就可以了,当然我们还是要借鉴别人的代码,感谢那些引路人,谢谢你们

源码给你哇,一起加油喂

  • 3
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 10
    评论
### 回答1: C8T6 GY-30是一种光敏传感器,常用于测量环境光强度。它由一个光敏电阻组成,当光照射到其中时,材料的电阻值会发生变化。通过测量电阻值的变化,可以了解光线的强弱。 C8T6 GY-30光敏传感器具有灵敏度高、响应快、反应范围广等特点。它可以用于诸如光照控制、光强测量、反射光电检测等应用中。 在光照控制方面,C8T6 GY-30能够根据环境光强度的变化,自动调节照明设备的亮度,如室内灯光和户外路灯等。这样可以提高能源利用效率,同时也能提供更加舒适的光照环境。 在光强测量方面,C8T6 GY-30传感器可以用来检测不同光源的强弱,从而帮助我们调整光线,以满足特定任务或活动的需要。例如,在摄影领域,它可以用来测量光线的亮度,以便确定合适的相机曝光参数。 此外,C8T6 GY-30光敏传感器还可以用于反射光电检测。通过将其与其他电子元件结合使用,可以实现自动检测物体是否存在、物体的颜色等功能。这对于一些自动化和智能控制系统非常有用,如智能家居中的人体检测和自动门控制。 综上所述,C8T6 GY-30光敏传感器是一种功能强大且广泛应用的光敏设备,可以帮助我们实现光照控制、光强测量和反射光电检测等应用。 ### 回答2: C8T6 GY-30光敏传感器是一种用于检测光照强度的设备。它是一种数字光敏传感器,可以通过I2C接口与微控制器进行通信。 C8T6 GY-30光敏传感器基于光敏二极管,并配有一个内置的模数转换器,可以将光照强度转换为数字信号。它可以测量光照强度的范围从0到65535勒克斯(Lux),并具有高精度和快速响应的特点。 C8T6 GY-30光敏传感器的应用广泛,常见的应用包括室内照明控制、自动亮度调节、智能家居系统和植物生长灯等。通过使用该传感器,可以实现对光照强度的准确检测和监控,在不同的环境下调整照明设备的亮度,以提供更符合需求的照明效果。 为了使用C8T6 GY-30光敏传感器,我们需要连接其电源引脚和I2C通信引脚到微控制器。通过使用合适的软件库和指令,我们可以读取传感器测量到的光照强度,并进行相应的处理和控制。 总的来说,C8T6 GY-30光敏传感器是一种常用的光敏传感器,可以用于测量和监控光照强度,并应用于各种需要对照明进行自动控制和调节的场景中。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值