找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 6719|回复: 8
打印 上一主题 下一主题
收起左侧

基于stm32精英版的温控风扇源码

  [复制链接]
跳转到指定楼层
楼主
用stm32F103ZET6精英版,温度传感器是DS18B20,1602液晶显示屏,利用温度来控制转速,液晶显示屏显示实时转速,也可手动调节转速。(采用pi控制)

电路原理图如下:


单片机源程序如下:

  1. #include "delay.h"
  2. #include "key.h"
  3. #include "sys.h"
  4. #include "timer.h"
  5. #include "lcd1602.h"
  6. #include "encoder.h"
  7. #include "control.h"
  8. #include "usart.h"                          
  9. #include "usart3.h"                          
  10. #include "hc05.h"  
  11. #include "string.h"          
  12. #include "usmart.h"       
  13. #include "ds18b20.h"



  14.         u8 w=0;
  15.         int k=0;
  16. extern int real;
  17. vu8 key=0;
  18. u8 reclen=0;
  19. extern int temperature;
  20. int main(void)
  21. {               
  22.         delay_init();          
  23.         LCD_GPIO_Configuration();
  24.         LCD1602_Init();
  25.         KEY_Init();//按键初始化;
  26.   ENCODER_Init();
  27.   TIM2_Int_Init(19999,35);
  28.         TIM3_PWM_Init(7199,0); //不分频。PWM频率=72000000/900=80Khz         
  29.         DS18B20_Init();
  30. //usmart_dev.init(72);         //初始化USMART                         
  31.         delay_ms(5000);                        //等待蓝牙模块上电稳定
  32.         LCDshowNum(0,0,"EV:",SpeedSet);       
  33.         LCDshowNum(0,1,"RV:", real);
  34.         LCDshowTNum(9,1,"T:",temperature);
  35. //        while(HC05_Init())                 //初始化ATK-HC05模块  
  36. //{
  37. //                delay_ms(500);
  38. //        }                                                                                                      
  39. //        delay_ms(100);
  40. //        USART3_RX_STA=0;
  41.        
  42. while(1)
  43. {  
  44.          delay_ms(200);       
  45.          temperature=(int)DS18B20_Get_Temp();       
  46.          LCDshowNum(0,0,"EV:",SpeedSet);       
  47.          LCDshowNum(0,1,"RV:", real);
  48.          LCDshowTNum(9,1,"T:",temperature);
  49.          key=KEY_Scan(0);
  50.                  switch(key)
  51.             {
  52.                              case KEY0_PRES:
  53.                              SpeedSet+=100;               
  54.                                          k++;
  55.                        LCDshowNum(0,0,"EV:",SpeedSet);       
  56.                               break;
  57.                             case KEY1_PRES:
  58.                              SpeedSet-=100;       
  59.              k++;                                         
  60.                        LCDshowNum(0,0,"EV:",SpeedSet);       
  61.                               break;
  62.                              default:break;
  63.                     }
  64.          if(k==0&&temperature>270)
  65.                 {
  66.                                    SpeedSet=2200;                       
  67.                       LCDshowNum(0,0,"EV:",SpeedSet);                                       
  68.     }
  69.          if(k==0&&temperature<270&&temperature>250)
  70.                  {
  71.                                    SpeedSet=2100;                       
  72.                                        
  73.                       LCDshowNum(0,0,"EV:",SpeedSet);       
  74.                                        
  75.       }
  76.                  if(k==0&&temperature<250&&temperature>200&&temperature==200&&temperature==250)
  77.                  {
  78.                                   SpeedSet=2000;                       
  79.                       LCDshowNum(0,0,"EV:",SpeedSet);               
  80.       }
  81.                  if(k==0&&temperature<200)
  82.      {
  83.                                    SpeedSet=1800;         
  84.                        LCDshowNum(0,0,"EV:",SpeedSet);                               
  85.       }
  86.                  
  87. }
  88.        
  89.          }
复制代码

所有资料51hei提供下载:
test1 - 1602正常 1x4键盘 加减调速 加温控.rar (368.76 KB, 下载次数: 193)


评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏10 分享淘帖 顶1 踩
回复

使用道具 举报

沙发
ID:482003 发表于 2019-2-28 10:45 | 只看该作者
这个设计好不错哦
回复

使用道具 举报

板凳
ID:633427 发表于 2019-11-2 08:56 | 只看该作者
请问用开发板做的吗
回复

使用道具 举报

地板
ID:593339 发表于 2019-12-2 23:59 来自手机 | 只看该作者
电路图有文件吗?
回复

使用道具 举报

5#
ID:792573 发表于 2020-6-29 11:00 | 只看该作者
电路图有文件吗?
回复

使用道具 举报

6#
ID:343056 发表于 2020-7-4 15:33 | 只看该作者
电路图是用什么画的,有源文件吗
回复

使用道具 举报

7#
ID:821549 发表于 2020-9-22 10:04 | 只看该作者
很棒刚好需要部分内容
回复

使用道具 举报

8#
ID:525238 发表于 2021-4-22 16:09 | 只看该作者
正准备做个个小项目不错
回复

使用道具 举报

9#
ID:1061976 发表于 2023-2-2 10:39 | 只看该作者
我需要原理图
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表