找回密码
 注册
关于网站域名变更的通知
查看: 454|回复: 1
打印 上一主题 下一主题

C51的PID算法

[复制链接]
  • TA的每日心情
    开心
    2023-5-30 15:22
  • 签到天数: 1 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2019-9-29 17:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
    //PID算法温控C语言2008-08-17 18:58
    0 x, K/ g! n" K; L8 }5 b" H#include<w77e58.h> " R) [" s6 ?" Y3 y0 A- L
    #include<intrins.h>
    3 C1 ?9 T9 ~$ `2 }#include<math.h> * {+ r; j. F$ y3 _& g! T% i1 Q! @: u+ r
    #include<string.h>
    * s' O8 z. Y. r/ s5 x$ hstruct PID { 1 G8 C3 g& e( Z5 U* G! u' ]1 g
    unsigned int SetPoint; // 设定目标 Desired Value 5 ^+ G. x0 u( B% t4 L
    unsigned int Proportion; // 比例常数 Proportional Const 6 ^( j/ Z+ d- g9 F5 c) o# `; x
    unsigned int Integral; // 积分常数 Integral Const 1 F) H  J0 i# t6 y, e0 f1 O+ J! w2 d
    unsigned int Derivative; // 微分常数 Derivative Const - Z& ~( `1 Q  z/ x$ V+ V
    unsigned int LastError; // Error[-1] ! S0 {: G( H8 ]1 t& H. u- u
    unsigned int PrevError; // Error[-2]
    , G8 W) f2 I$ V1 |9 J+ C: t  Tunsigned int SumError; // Sums of Errors 6 M% R  g+ e: ~# l* i0 a
    };
    3 l$ I/ S* ]4 P& P5 ]! `6 o, ~+ qstruct PID spid; // PID Control Structure
    8 y- B& J9 _+ G7 Punsigned int rout; // PID Response (Output) ; Q5 A) C4 S0 j, I* W: {/ p8 P
    unsigned int rin; // PID Feedback (Input) ! ?6 \' p6 G$ v( b* H4 r) c
    sbit data1=P1^0; 1 c2 A! i* x7 M0 ~. b, U% \& E! Z
    sbit clk=P1^1;
    1 ?: N3 G. s  Y* C+ ~' @sbit plus=P2^0; ) N' e4 y* d/ a# {* ?5 @9 Z: G
    sbit subs=P2^1;
    % E2 S* s: `0 J5 |sbit stop=P2^2; ' ^9 Q( K* k9 O1 l/ Y6 T' o( }4 [
    sbit output=P3^4;
    - D% p" k- f6 l$ T# E, F- `sbit DQ=P3^3;
    . h. F; q8 t4 s& |& wunsigned char flag,flag_1=0; % r6 {/ t- j; r9 f6 Z
    unsigned char high_time,low_time,count=0;//占空比调节参数 5 o! r7 {0 Q( S
    unsigned char set_temper=35; ( w8 ~: r$ n- z( Q- B& h
    unsigned char temper; . a* K( o2 e$ x- }
    unsigned char i;
    + I8 D6 A! U+ p. l$ i. H0 ]unsigned char j=0; ; ^7 N* E* o6 A9 G4 `* l
    unsigned int s; 3 a2 p. U1 y/ |8 H! S$ Z: J$ c
    /***********************************************************
    0 Z  Z9 P$ ?8 \- g- U+ A+ B! x# O延时子程序,延时时间以12M晶振为准,延时时间为30us×time 1 O$ L: _! r' {7 i5 d- I) O
    ***********************************************************/
    ( l( g9 x% ~7 R* ?# D: P+ Cvoid delay(unsigned char time) 2 u1 W7 E/ D; `+ r8 ^4 s1 O
    { ! X6 H' e3 o. [2 `' B
    unsigned char m,n; 3 X1 {' S- i% i2 z( b
    for(n=0;n<time;n++)
    8 Q0 k5 ^7 c. g4 f3 Sfor(m=0;m<2;m++){} / a; Y: A$ Q) j% s
    }
    - }8 V  ?: v5 @8 m+ R/***********************************************************
    9 }+ t, S( E' N# ?. v; M4 V% O写一位数据子程序
    % g# Q& L; H/ G( l+ _2 {" g3 T- @$ ?, A***********************************************************/ 6 p8 R! ^7 f$ Y
    游客,如果您要查看本帖隐藏内容请回复

    6 U8 J' u1 S6 Z2 ?. J+ a/ C2 O- }( B4 r' x+ s$ N- s, d

    该用户从未签到

    2#
    发表于 2019-9-29 20:28 | 只看该作者
    什么程序还隐藏,还要回复才能看看
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-7-15 21:19 , Processed in 0.109375 second(s), 23 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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