具体实现功能
具体功能:
(1)DS18B20温度传感器实时检测环境温度,根据测得的温度值控制直流电机(步进电机)的转动,LCD1602实时显示温度值及电机转速;
(2)当温度值大于25度时,电机正转,温度越高,转速越快;
(3)当温度值小于20度时,电机反转,温度越低,转速越慢;
(4)温度在20度至25度时,电机不转。
仿真演示视频:
基于51单片机的温控电机系统-仿真视频
设计介绍
51单片机简介
51单片是一种低功耗、高性能CMOS-8位微控制器,拥有灵巧的8位CPU和可编程Flash,使得51单片机为众多嵌入式控制应用系统提供灵活、高效的解决方案。
本设计所使用的芯片可兼容以下所有的51系列单片机(包括AT系列和STC系列)。
资料内容
仿真实现(protues8.7)
本设计利用protues8.7软件实现仿真设计,具体如图。
程序(Keil5)
本设计利用KEIL5软件实现程序设计。
主函数如下:
///
main()
{
uchar k;
LCD_Initial();
PWM1=0;
init();
while(1)
{
if(k==0)
{
EA=0;
wendu=ReadTemperature();//读取温度数据
EA=1;
}
if(k++>25) k=0;
if(wendu>=250)
{
IN1=1;
IN2=0;
jd=(wendu/10)-25;
}
else if(wendu<=200)
{
IN1=0;
IN2=1;
jd=(wendu/10);
}
else
{
jd=0;
}
if(k2==0)//PWM+
{
delay(10);
jd++;
while(k2==0);
}
if(k3==0)//PWM-
{
delay(10);
while(k3==0);
}
if(flang==1)
xianshi1[7]='-';
else
xianshi1[7]=' ';
xianshi1[8]=wendu/100+0x30;
xianshi1[9]=wendu/10%10+0x30;
xianshi1[11]=wendu%10+0x30;
xianshi2[8]=jd/10+0x30;
xianshi2[9]=jd%10+0x30;
GotoXY(0,0);
Print(xianshi1);
GotoXY(0,1);
Print(xianshi2);
}
}
程序运行结果如图:
全部内容
全部资料包括程序(keil5)、protues仿真(protues8.7)、设计说明、软硬件设计框图、答辩PPT、开发资料、资料使用介绍、仿真视频、最小系统介绍视频等。
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/m0_74966791/article/details/148461358
|