资源简介
自己做的课程设计,打包上传,温度pid调节,带完美proteus仿真
代码片段和文件信息
#include“reg51.h“
#define uchar unsigned char
#define uint unsigned int
#define ulong unsigned long
/*****************引脚定义*********************************/
sbit output=P2^5;
/********************************/
sbit CLOCK=P3^1;
sbit D_IN=P2^7;
sbit D_OUT=P2^6;
sbit _CS=P3^0;
/********************************/
sbit lcdrs=P2^0;
sbit lcdrw=P2^1;
sbit lcden=P2^2;
/********************************/
sbit in1=P2^3;
sbit in2=P2^4;
/********************************/
sbit led=P3^2;
sbit speaker=P3^3;
/*****************引脚定义*********************************/
/*****************变量定义(申明)*********************************/
int freq=500pwm=0;
uchar setflag=0pageflag=0ok=0;
float pwm_temp=0;
float KP=100KI=10KD=0;
uint pul_count=0;
float ek=0ek1=0ek2=0;
float keytemp=0;
uchar code str[16]=“ welcome! “;
uchar code str1[16]=“ temperature PID“;
uchar code str2[16]=“set-T pra-T “ ;
uchar code str3[16]=“P: I: D:“ ;
uchar code str4[16]=“set-P: “ ;
uchar code str5[16]=“set-I: “ ;
uchar code str6[16]=“set-D: “ ;
void Init(void);
uint adcread(uchar port);
void delay(uint n);
void writecom(uchar com);
void writedata(uchar date);
void initlcd();
float keyscan(void);
uchar keyscans(void);
void lcdnumdisplay(uchar posdouble f);
void lcdnumdisplays(uchar posdouble f);
uint read_pul();
void mypid(float Kpfloat Kifloat Kduint countuint point);
/*****************变量定义(申明)*********************************/
void main()
{
uchar i;float scantemp;
float adnum0=0;
float adnum1=0;
bit init0init1init2init3init4;
Init();
initlcd();
writecom(0x80);
for(i=0;i<16;i++)writedata(str[i]); //huanyin
writecom(0x80+0x40);
for(i=0;i<16;i++)writedata(str1[i]); //shuming
delay(400);
while(1)
{
pwm_temp=500*(float)(adnum0)/4095;
//pwm=pwm_temp;
mypid(KPKIKDadnum1pwm_temp);
scantemp=keyscan();
if(adnum1>=pwm_temp-1.5&&adnum1<=pwm_temp+1.5)
{
led=0;
speaker=1;
}
else{
led=1;
speaker=0;
}
if(setflag==0)
{
adnum0=adcread(0);
adnum1=adcread(1)/10;
if(init0==0)
{
initlcd();
writecom(0x80);
for(i=0;i<16;i++)writedata(str2[i]); //shuming
init0=1;init1=0;init2=0;init3=0;init4=0;
}
lcdnumdisplays(0x80+0x40(float)pwm_temp); //pwm_temp
lcdnumdisplays(0x80+0x4a(float)adnum1);
}
if(setflag!=0&&pageflag==0)
{
if(init1==0)
{
initlcd();
writecom(0x80);
for(i=0;i<16;i++)writedata(str3[i]);
init0=0;init1=1;init2=0;init3=0;init4=0;
}
lcdnumdisplays(0x80+0x40KP);
lcdnumdisplays(0x80+0x46KI);
lcdnumdisplays(0x80+0x4DKD);
}
if(setflag!=0&&pageflag==1)
{
if(init2==0)
{
initlcd();
writecom(0x80);
for(i=0;i<16;i++)writedata(str4[i]);
init0=0;init1=0;init2=1;init3=0;init4=0;
}
lcdnumdisplays(0x80+0x40scantemp);
if(ok==1){KP=scantemp;ok=
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 164264 2014-12-27 23:10 51单片机温度PID调节\Last Loaded 温度PID调节.DBK
文件 6376 2009-05-07 14:37 51单片机温度PID调节\STARTUP.A51
文件 14077 2014-12-28 22:46 51单片机温度PID调节\STARTUP.LST
文件 749 2014-12-28 22:46 51单片机温度PID调节\STARTUP.OBJ
文件 35396 2014-12-28 22:46 51单片机温度PID调节\温度PID调节
文件 16201 2014-12-28 22:44 51单片机温度PID调节\温度PID调节.c
文件 164264 2014-12-28 22:46 51单片机温度PID调节\温度PID调节.DSN
文件 23103 2014-12-28 22:46 51单片机温度PID调节\温度PID调节.hex
文件 55 2014-12-28 22:46 51单片机温度PID调节\温度PID调节.lnp
文件 39601 2014-12-28 22:46 51单片机温度PID调节\温度PID调节.LST
文件 36004 2014-12-28 22:46 51单片机温度PID调节\温度PID调节.M51
文件 46996 2014-12-28 22:46 51单片机温度PID调节\温度PID调节.OBJ
文件 8114 2014-12-28 22:46 51单片机温度PID调节\温度PID调节.plg
文件 792 2017-02-21 05:00 51单片机温度PID调节\温度PID调节.PWI
....... 55690 2014-12-28 22:46 51单片机温度PID调节\温度PID调节.uvopt
文件 13429 2014-12-26 22:02 51单片机温度PID调节\温度PID调节.uvproj
....... 55690 2014-12-28 21:57 51单片机温度PID调节\温度PID调节_uvopt.bak
文件 13241 2014-12-26 19:45 51单片机温度PID调节\温度PID调节_uvproj.bak
目录 0 2017-02-21 05:00 51单片机温度PID调节
----------- --------- ---------- ----- ----
694042 19
- 上一篇:合肥工业大学 850真题14-20.pdf
- 下一篇:基于单片机+FPGA的频率计
相关资源
- 六路 抢答器 课程设计
- 数据结构散列表电话号码查询系统课
- 51单片机多机通讯程序及仿真
- 数据库 课程设计 合同订单
- 三种方法将51单片机设置为115200波特率
- 基于STM32的温度采集系统设计.docx
- 通过485Modbus读取DS18B20温度和控制LED(
- 出租车计价器 proteus
- 广工最新2020操作系统课程设计
- 宿舍管理数据库系统的设计与实现-
- 直流PWM可逆调速系统设计与仿真
- 51单片机实现交通灯压缩文件.rar
- 大三通信系统课程设计_语音信号线性
- 测试压力和温度改进版.zip
- 数据挖掘大作业.docx
- 基于51单片机的温湿度控制程序
- 计网文件传输协议课设.rar
- CC2530 的 ZigBee 的温度监控系统 课程设
- 基于51单片机的智能电子秤设计-程序
- 基于51单片机的GPS全球定位系统的设计
- 基于51单片机的万年历设计-完整程序
- 基于51单片机的脉搏测量仪设计-完整
- 温度检测及控制系统的设计(毕业设
- 超声波测距仪温度补偿
- 广州大学计算机大四上专业方向课程
- 基于ZigBee的大棚无线温度监测系统.
- 基于MCS-51单片机的智能 时钟控制系统
- 基于arduino的温度检测和显示
- 基于51单片机DS1302四位数码管可调时钟
- sct15单片机读取mpl3115a2高度温度
评论
共有 条评论