基于STM32F103ZET6的DS18B20温度检测
DS18B20的温度检测精度比dht11温湿度模块要高,程序基本也比较简单,通过ds18b20的字节读写函数获取到温度数值在加以转换通过温度输出函数输出数值,ds18b20可以测零下的温度所以在输出温度到屏幕或者通过串口检测时如果是零下的温度需要在显示的时候手动加上负号(至于不加会显示为什么,这个我具体也没测过,感兴趣的可以自行测试)
DS18B20的温度检测精度比dht11温湿度模块要高,程序基本也比较简单,通过ds18b20的字节读写函数获取到温度数值在加以转换通过温度输出函数输出数值,ds18b20可以测零下的温度所以在输出温度到屏幕或者通过串口检测时如果是零下的温度需要在显示的时候手动加上负号(至于不加会显示为什么,这个我具体也没测过,感兴趣的可以自行测试)
通过读取dht11返回的数据,从而得到温湿度的具体数值,再通过串口返回。如有屏幕也可以显示在屏幕上,具体参照我的另一个资源
用到的主要就是pwm以及输入捕获功能实现测距,将测到的距离通过串口返回。实测测量精度还是比较高的,误差也比较小。如测量误差较大,可以在HC_SR04_Measure()函数中进行重复测量求平均值后作为最终的返回结果。有问题可私信,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
通过串口助手向单片机直接发送所需舵机转动的角度即可控制sg90舵机的运转,要注意sg90舵机的转动范围。适合新手学习过pwm和串口通信后用于练手。有问题可私信。。。。 编译后有一个atoi函数的警告,这是正常的,不用管。