基于430单片机的PID温度控制毕业设计 联系客服

发布时间 : 星期一 文章基于430单片机的PID温度控制毕业设计更新完毕开始阅读4a419b4fde80d4d8d15a4f5b

中北大学信息商务学院2013届本科毕业设计说明书

Delay(60000); //延时800ms以上 do {

i = Init_18B20(); } while(i); Skip(); Read_SP();

return ReadTemp(); // 后街换算处理和显示 去看门狗 }

void Disp_Numb(uint temper) {

b=temper/16;

hang6[1] = b% 10+48; hang6[0] = b / 10+48; Disp_HZ(0x80,hang1,5); Disp_HZ(0x85,hang6,2); }

void init_TB(void) {

P4DIR = 0x0f; // p4.1 output mode

P4SEL = 0x03; // p4.1 option select / 选择SMCLK = HF xtal TBCTL = TBSSEL_2 + TBCLR; // ACLK, clear TBR TBCTL |= MC_1; // 设置递增模式 TBCCR0 = 2535; //初始化CCR0 TBCCTL1 = OUTMOD_7;

TBCCR1 = 1; // ccr1 Pwm cycle }

33

中北大学信息商务学院2013届本科毕业设计说明书

void init_PID(void) {

K=15; //比例项 Ti=0.01; //积分 Td=10; //微分 ev=0;//误差

Mi=0;//上次回路初始值 gei=50;// 给定值 Xx=-20; Sx=2000; }

void PID(void) {

ev=gei-b; // 误差计算 BL=K*ev;// 比例项计算 Wl=KB*Wl+BL;// 比例增量 if(Wl<0)//增量下线 Wl=0;

if(Wl>2000)//增量上线 Wl=2000;

JF=Ti*ev+Mi;// 积分项 (滞后严重) Mi=Mi+JF; //

if(Mi>Sx) //积分上线 Mi=Sx;

if(Mi

WF=Td*(ev-ev1); //微分 ev1=ev;

34

中北大学信息商务学院2013届本科毕业设计说明书

chu=BL+WF+Wl; //PID 输出 if(chu>0) if(chu<65535) TBCCR1=chu; if(chu<0) TBCCR1=1; if(chu>65535) TBCCR1=65534; }

#pragma vector=WDT_VECTOR //中断程序入口地址 __interrupt void watchdog_timer (void) {

uint f,g,h; a++; if(a==0) PID(); if(a>=240) a=0;

hang7[4]= TBCCR1+48; hang7[3]=(TBCCR1/10)+48; hang7[2]=( TBCCR1/100)+48; hang7[1]=( TBCCR1/1000)+48; hang7[0]=( TBCCR1/10000)+48;

Disp_HZ(0x90,hang8,4); Disp_HZ(0x94,hang7,4); f=K;

hang9[6]= f+48;

35

中北大学信息商务学院2013届本科毕业设计说明书

hang9[5]=(f/10)+48; Disp_HZ(0x88,hang9,4); g=Td;

hang10[6]= g+48; hang10[5]=(g/10)+48; Disp_HZ(0x8c,hang10,4); h=KB;

hang11[9]= g+48; hang11[10]=(g/10)+48; Disp_HZ(0x98,hang11,6); }

void main(void) {

P1DIR = 0XFF;P1OUT = 0XFF; P2DIR = 0XFF;P2OUT = 0XFF; P3DIR = 0XFF;P3OUT = 0XFF; P4DIR = 0XFF;P4OUT = 0XFF; P5DIR = 0XFF;P5OUT = 0XFF; P6DIR = 0XFF;P6OUT = 0XFF; WDTCTL =WDT_ADLY_1000; IE1 |= WDTIE;

BCSCTL1 &= ~XT2OFF; // do {

IFG1 &= ~OFIFG; // for (i = 0xFF; i > 0; i--); // }

while ((IFG1 & OFIFG)); //

打开XT2高频晶体振荡器 清除晶振失败标志 等待8MHz晶体起振 晶振失效标志仍然存在?

36