資源簡介
自己做的課程設(shè)計,打包上傳,溫度pid調(diào)節(jié),帶完美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調(diào)節(jié)\Last?Loaded?溫度PID調(diào)節(jié).DBK
?????文件???????6376??2009-05-07?14:37??51單片機溫度PID調(diào)節(jié)\STARTUP.A51
?????文件??????14077??2014-12-28?22:46??51單片機溫度PID調(diào)節(jié)\STARTUP.LST
?????文件????????749??2014-12-28?22:46??51單片機溫度PID調(diào)節(jié)\STARTUP.OBJ
?????文件??????35396??2014-12-28?22:46??51單片機溫度PID調(diào)節(jié)\溫度PID調(diào)節(jié)
?????文件??????16201??2014-12-28?22:44??51單片機溫度PID調(diào)節(jié)\溫度PID調(diào)節(jié).c
?????文件?????164264??2014-12-28?22:46??51單片機溫度PID調(diào)節(jié)\溫度PID調(diào)節(jié).DSN
?????文件??????23103??2014-12-28?22:46??51單片機溫度PID調(diào)節(jié)\溫度PID調(diào)節(jié).hex
?????文件?????????55??2014-12-28?22:46??51單片機溫度PID調(diào)節(jié)\溫度PID調(diào)節(jié).lnp
?????文件??????39601??2014-12-28?22:46??51單片機溫度PID調(diào)節(jié)\溫度PID調(diào)節(jié).LST
?????文件??????36004??2014-12-28?22:46??51單片機溫度PID調(diào)節(jié)\溫度PID調(diào)節(jié).M51
?????文件??????46996??2014-12-28?22:46??51單片機溫度PID調(diào)節(jié)\溫度PID調(diào)節(jié).OBJ
?????文件???????8114??2014-12-28?22:46??51單片機溫度PID調(diào)節(jié)\溫度PID調(diào)節(jié).plg
?????文件????????792??2017-02-21?05:00??51單片機溫度PID調(diào)節(jié)\溫度PID調(diào)節(jié).PWI
????.......?????55690??2014-12-28?22:46??51單片機溫度PID調(diào)節(jié)\溫度PID調(diào)節(jié).uvopt
?????文件??????13429??2014-12-26?22:02??51單片機溫度PID調(diào)節(jié)\溫度PID調(diào)節(jié).uvproj
????.......?????55690??2014-12-28?21:57??51單片機溫度PID調(diào)節(jié)\溫度PID調(diào)節(jié)_uvopt.bak
?????文件??????13241??2014-12-26?19:45??51單片機溫度PID調(diào)節(jié)\溫度PID調(diào)節(jié)_uvproj.bak
?????目錄??????????0??2017-02-21?05:00??51單片機溫度PID調(diào)節(jié)
-----------?---------??----------?-----??----
???????????????694042????????????????????19
評論
共有 條評論