日产精品视频无码免费_亚洲蜜臀AV日韩熟妇在线_国产亚洲精品女人久久久久久 _妞中文字幕在线视频导航

電子開發網

電子開發網電子設計 | 電子開發網Rss 2.0 會員中心 會員注冊
搜索: 您現在的位置: 電子開發網 >> 電子開發 >> 單片機 >> 正文

PID 控制的51匯編程序

作者:佚名    文章來源:本站原創    點擊數:    更新時間:2011/2/18

;//**************************************************************************************************************
;//功    能: 電機控制的PID(積分分離)  PID(void)    執行時間少于70uS/932-12MHz
;//設 計 者: 牟聯樹
;//日    期: 2003.12.28
;//版 本 號: 1.0
;//申    明:
;//**************************************************************************************************************
$NOMOD51
    OCRAH  equ 0EFh
    OCRAL  equ 0EEh
    OCRBH  equ 0FBh
    OCRBL  equ 0FAh
    OCRCH  equ 0FDh
    OCRCL  equ 0FCh
    OCRDH  equ 0FFh
    OCRDL  equ 0FEh
    TCR21  equ 0f9h
$include (REG52.INC)
       NAME       PIDWork
    ?PR?PID?PIDWork     SEGMENT    CODE
    ?PR?PID_MUL?PIDWork SEGMENT    CODE
    ?PR?PID_out?PIDWork SEGMENT    CODE
    ?DT?PID_k?PIDWork   SEGMENT    DATA

    PUBLIC   PID_Kp,PID_Ki,PID_Kd,PID_Umax,PID_Emax
    PUBLIC   PID_U,PID_En1,PID_En2,PID_Temp,PID_TempL
   RSEG  ?DT?PID_k?PIDWork
     PID_Kp:  DS   2                    ;比例系數
     PID_KpL  data PID_Kp+1
     PID_Ki:  DS   2                    ;積分系數
     PID_KiL  data PID_Ki+1
     PID_Kd:  DS   2                    ;微分系數
     PID_KdL  data PID_Kd+1           
   PID_Umax:  DS   2                    ;期望最大值設定
   PID_UmaxL  data PID_Umax+1         
   PID_Emax:  DS   2                    ;積分分離的誤差最大值設定
   PID_EmaxL  data PID_Emax+1
      PID_U:  DS   2                    ;當前的采樣值
      PID_UL  data PID_U+1
    PID_En1:  DS   2                    ;上一次計算的誤差值
    PID_En1L  data PID_En1+1
    PID_En2:  DS   2                    ;上一次計算的誤差的誤差值
    PID_En2L  data PID_En2+1
   PID_Temp:  DS   4                    ;計算過程中的暫存
   PID_TempL  data PID_Temp+1
   PID_Temp1  data PID_Temp+2
  PID_Temp1L  data PID_Temp+3

   PUBLIC  _PID
   RSEG  ?PR?PID?PIDWork
   _PID: push  acc
         push  psw
         clr   c                        ;有符號減法
         mov   a,PID_UmaxL              ;計算當前的誤差En(PID_U里暫存運算結果)
         subb  a,PID_UL
         mov   PID_UL,a
         mov   a,PID_Umax
         subb  a,PID_U
         mov   PID_U,a
         jnb   acc.7,PID_k
         mov   a,PID_UL
  cpl   a
  add   a,#1
  mov   r7,a
  mov   a,PID_U
  cpl   a
  addc  a,#0
  xch   a,r7
         sjmp  PID_g
  PID_k: mov   r7,PID_U
         mov   a,PID_UL
  PID_g: clr   c
  subb  a,PID_EmaxL
  mov   a,r7
         subb  a,PID_Emax
         jnb   acc.7,PID_a              ;如果En>Emax則轉
  mov   r7,PID_KiL               ;Ki*En
         mov   r6,PID_Ki
  mov   r5,PID_UL
         mov   r4,PID_U
  acall PID_MUL                  ;二字節偽有符號乘法(r4-r7里暫存結果)
  mov   a,PID_Temp1L             ;PID加法子程序(將結果加入輸出)
  add   a,r7
  mov   PID_Temp1L,a
         mov   a,PID_Temp1
         addc  a,r6
  mov   PID_Temp1,a
         mov   a,PID_TempL
         addc  a,r5
  mov   PID_TempL,a
         mov   a,PID_Temp
         addc  a,r4
  mov   PID_Temp,a
  PID_a: mov   a,PID_En1L               ;更新PID_En1
         xch   a,PID_UL
  mov   PID_En1L,a
  mov   a,PID_En1
  xch   a,PID_U
  mov   PID_En1,a
  clr   c                        ;有符號減法
         mov   a,PID_En1L               ;計算當前的誤差差(En-En1)
         subb  a,PID_UL
  mov   PID_UL,a
  mov   a,PID_En1
  subb  a,PID_U
  mov   PID_U,a
         mov   r7,PID_KpL               ;+Kp*(En-En1)
  mov   r6,PID_Kp
  mov   r5,PID_UL
         mov   r4,PID_U
  acall PID_MUL
  mov   a,PID_Temp1L             ;PID加法子程序(將結果加入輸出)
  add   a,r7
  mov   PID_Temp1L,a
         mov   a,PID_Temp1
         addc  a,r6
  mov   PID_Temp1,a
         mov   a,PID_TempL
         addc  a,r5
  mov   PID_TempL,a
         mov   a,PID_Temp
         addc  a,r4
  mov   PID_Temp,a
  clr   c                        ;有符號減法
         mov   a,PID_UL                 ;計算誤差差的差(En-En1-En2),同時更新En2
  subb  a,PID_En2L
  mov   PID_En2L,a
         mov   a,PID_U
  subb  a,PID_En2
  mov   PID_En2,a
         mov   r7,PID_KdL               ;+Kd*(En-En1-En2)
         mov   r6,PID_Kd
  mov   r5,PID_En2L
         mov   r4,PID_En2
         acall PID_MUL
  mov   a,PID_Temp1L             ;PID加法子程序(將結果加入輸出)
  add   a,r7
  mov   PID_Temp1L,a
         mov   a,PID_Temp1
         addc  a,r6
  mov   PID_Temp1,a
         mov   a,PID_TempL
         addc  a,r5
  mov   PID_TempL,a
         mov   a,PID_Temp
         addc  a,r4
  mov   PID_Temp,a
  pop   psw
  pop   acc
  ret
  ret
;//**************************************************************************************************************
;//功    能: 電機控制電流環的PI  PI_I(void)    執行時間少于50uS/932-12MHz
;//設 計 者: 牟聯樹
;//日    期: 2003.12.28
;//版 本 號: 1.0
;//申    明:
;//**************************************************************************************************************
       PUBLIC _PID_out
       RSEG ?PR?PID_out?PIDWork
_PID_out: push acc
          push psw
          clr  c
          mov  a,r6
          rrc  a
          mov  r6,a
          mov  a,r7
          rrc  a
          mov  r7,a
out_a: mov  OCRAH,r6               ;PWM更新
          mov  OCRAL,r7
          mov  a,r7
          add  a,#25
          mov  OCRBL,a
          mov  a,r6
          addc a,#0
          mov  OCRBH,a
          orl  TCR21,#080h            ;PWM更新
   out_b: pop  psw
   pop  acc
          ret
;//**************************************************************************************************************
;//功    能: 整形乘法  long int PID_MUL(int a,int b)    用時13.5uS/932-12MHz
;//設 計 者: 牟聯樹
;//日    期: 2003.12.28
;//版 本 號: 1.0
;//申    明:
;//**************************************************************************************************************
  PUBLIC _PID_MUL
  RSEG ?PR?PID_MUL?PIDWork
_PID_MUL:
PID_MUL: push acc
         push psw
         clr  f0                        ;符號判斷
         mov  a,r4
         jb   acc.7,PID_Ma
         sjmp PID_Md
PID_Ma: setb f0
         mov  a,r5
         cpl  a
         add  a,#1
         mov  r5,a
         mov  a,r4
         cpl  a
         addc a,#0
         mov  r4,a       
PID_Md:; mov  a,r6
        ; mov  c,acc.7
         ;jnb  f0,PID_Mf
        ; cpl  c
PID_Mf:; mov  f0,c
        ; jb   acc.7,PID_Mb
        ; sjmp PID_Mc     
PID_Mb:; clr  c
        ; mov  a,r7
        ; subb a,#1
        ; cpl  a
        ; mov  r7,a
        ; mov  a,r6
        ; subb a,#0
        ; cpl  a
        ; mov  r6,a

PID_Mc: mov  a,r5
  mov  b,r7
  mul  ab
  xch  a,r7
  mov  r3,b
  mov  b,r4
  mul  ab
  add  a,r3
  mov  r3,a
  mov  a,b
  addc a,#0
  xch  a,r5
  mov  b,r6
  mul  ab
  addc a,r3
  xch  a,r6
  xch  a,r5
  addc a,b
  xch  a,r5
  mov  b,r4
  mul  ab
  addc a,r5
  mov  r5,a
  mov  a,b
  addc a,#0
  mov  r4,a
  jb   f0,PID_Me
  pop  psw
  pop  acc 
  ret
PID_Me: mov  a,r7
         cpl  a
         add  a,#1
         mov  r7,a
         mov  a,r6
         cpl  a
         addc a,#0
         mov  r6,a
         mov  a,r5
         cpl  a
         addc a,#0
         mov  r5,a
         mov  a,r4
         cpl  a
         addc a,#0
         mov  r4,a
         pop  psw
         pop  acc
         ret
         END  

Tags:51,單片機程序,pid,算法  
責任編輯:admin
請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
1分 2分 3分 4分 5分

還可以輸入 200 個字
[ 查看全部 ] 網友評論
關于我們 - 聯系我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
返回頂部
刷新頁面
下到頁底
晶體管查詢
99热精品在线| 成人a大片在线观看| 欧美18性精品| 九九精品影院| 欧美国产日韩一区二区三区| 亚洲天堂一区二区三区四区| 一级女性全黄久久生活片| 99热视热频这里只有精品| a级毛片免费全部播放| 深夜做爰性大片中文| 精品在线视频播放| 午夜在线亚洲男人午在线| 欧美爱色| 久久99爰这里有精品国产| 99热精品在线| 欧美a级v片不卡在线观看| 精品视频在线观看一区二区三区| 美女免费精品高清毛片在线视| 日韩免费在线视频| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 99色吧| 精品视频在线观看一区二区三区| 亚洲 国产精品 日韩| 精品国产亚一区二区三区| 国产91精品系列在线观看| 青青久久精品国产免费看| 亚洲女初尝黑人巨高清在线观看| 午夜久久网| 欧美1区| 国产福利免费视频| 天天色成人| 91麻豆精品国产自产在线 | 九九精品久久| 免费一级片网站| 免费的黄色小视频| 日本伦理黄色大片在线观看网站| 欧美a级片免费看| 欧美另类videosbestsex久久| 午夜久久网| 999精品影视在线观看| 欧美激情一区二区三区视频 | 精品在线观看一区| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 欧美另类videosbestsex久久| 91麻豆国产福利精品| 精品久久久久久中文| 99久久精品国产免费| 国产视频在线免费观看| 四虎影视久久久| 91麻豆精品国产综合久久久| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 999久久66久6只有精品| 精品国产香蕉在线播出 | 999久久久免费精品国产牛牛| 成人免费网站久久久| 日韩专区第一页| 91麻豆精品国产综合久久久| 九九久久99综合一区二区| 黄色免费三级| 国产不卡高清在线观看视频| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 日本在线www| 国产精品免费久久| 亚洲不卡一区二区三区在线| 韩国毛片 免费| 999久久66久6只有精品| 国产精品1024永久免费视频 | 欧美激情中文字幕一区二区| 日本免费看视频| 日韩在线观看视频免费| 国产高清在线精品一区二区 | 国产伦精品一区三区视频| 九九精品久久| 国产a网| 国产高清在线精品一区a| 欧美一级视频免费观看| 欧美一区二区三区性| 国产亚洲精品aaa大片| 中文字幕Aⅴ资源网| 国产精品1024永久免费视频 | 精品视频免费观看| 国产原创中文字幕| 91麻豆精品国产自产在线 | 国产高清在线精品一区a| 四虎影视久久久| 九九干| 国产精品免费久久| 99久久网站| 欧美日本免费| 91麻豆精品国产自产在线 | 国产福利免费视频| 国产一区二区精品在线观看| 精品视频在线观看一区二区三区| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 二级片在线观看| 天天做人人爱夜夜爽2020毛片| 国产一区二区精品在线观看| 精品国产一区二区三区精东影业| 欧美激情一区二区三区在线播放| 91麻豆国产福利精品| 欧美电影免费| 亚洲女初尝黑人巨高清在线观看| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 色综合久久天天综合绕观看| 亚欧成人乱码一区二区| 天天色色网| 国产一区二区精品在线观看| 精品在线观看一区| 黄视频网站在线免费观看| 黄色福利片| 国产视频一区二区在线播放| 黄视频网站在线观看| 国产精品自拍在线观看| 欧美另类videosbestsex| 久久成人亚洲| 久久国产精品自由自在| 成人影院一区二区三区| 亚洲 国产精品 日韩| 国产a网| 韩国毛片 免费| 国产网站免费在线观看| 国产高清在线精品一区a| 日韩av成人| 天天色色网| 欧美激情伊人| 日日爽天天| 美女免费精品高清毛片在线视| 美国一区二区三区| 精品视频在线看 | 日本在线不卡视频| 免费国产一级特黄aa大片在线| 日韩中文字幕在线观看视频| 亚洲www美色| 深夜做爰性大片中文| 毛片的网站| 午夜欧美成人香蕉剧场| 国产网站免费在线观看| 日韩中文字幕在线观看视频| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 国产一区二区精品久久91| 久久久久久久免费视频| 国产91丝袜高跟系列| 日本免费看视频| 999精品影视在线观看| 九九久久99综合一区二区| 99色视频在线| 日韩av成人| 天天色成人| 韩国毛片 免费| 久久国产精品永久免费网站| 精品国产一区二区三区久久久蜜臀| 麻豆午夜视频| 色综合久久天天综合| 精品国产一区二区三区精东影业| 中文字幕Aⅴ资源网| 日本特黄特黄aaaaa大片| 亚洲 欧美 成人日韩| 国产一区精品| 国产精品12| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 国产麻豆精品hdvideoss| 精品久久久久久免费影院| 美女免费毛片| 国产伦精品一区三区视频| 国产一区二区精品| 91麻豆爱豆果冻天美星空| 精品久久久久久中文| 久久久久久久免费视频| 天天色成人| 九九久久99综合一区二区| 国产原创中文字幕| 国产原创中文字幕| 免费一级片网站| a级精品九九九大片免费看| 国产综合91天堂亚洲国产| 九九九国产| 日韩女人做爰大片| 精品国产一区二区三区精东影业| 日韩一级黄色大片| 99热精品在线| 可以在线看黄的网站| 91麻豆国产福利精品| 青青青草影院 | 九九热精品免费观看| 国产一级生活片| 国产精品自拍亚洲| 国产美女在线一区二区三区| 免费国产一级特黄aa大片在线| 麻豆网站在线看| 日本特黄特黄aaaaa大片| 美女免费毛片| 精品国产亚一区二区三区| 999久久66久6只有精品| 精品视频在线看 | 99久久精品费精品国产一区二区| 日韩专区亚洲综合久久| 国产成人精品一区二区视频| 91麻豆国产福利精品| 韩国毛片免费大片| 一本伊大人香蕉高清在线观看|