久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 6173|回復: 1
打印 上一主題 下一主題
收起左側

光電編碼盤的直流伺服電機PID閉環調速系統proteus仿真

[復制鏈接]
跳轉到指定樓層
樓主
這個設計的仿真原理圖:


基于單片機的光電編碼盤的直流伺服電機PID閉環調速系統proteus仿真的所有資料下載:
基于光電編碼盤的直流伺服電機PID閉環調速系統.zip (122.5 KB, 下載次數: 119)


  1. ;HC11 PWM Motor Control Example
  2. ;Demonstrates ADC and Timer Output Capture functions

  3. PORTA             equ      $1000
  4. PORTC             equ      $1003
  5. PORTB             equ      $1004
  6. DDRC              equ      $1007
  7. TOC1              equ      $1016
  8. TOC2              equ      $1018
  9. TCTL1             equ      $1020
  10. TCTL2             equ      $1021
  11. TMSK1             equ      $1022
  12. TFLG1             equ      $1023
  13. TMSK2             equ      $1024
  14. PACTL             equ      $1026
  15. ADCTL             equ      $1030
  16. ADR1              equ      $1031
  17. ADR2              equ      $1032

  18.                 org $F000

  19. start:          lds  #$FF

  20.                 ldaa #$FF                        ;Port C is output
  21.                 staa DDRC

  22.                 ldaa #$80                        ;Enable OC1 interrupts.
  23.                 staa TMSK1                        ;

  24.                 ldaa #$2                        ;Set the prescaler (divide by 16)
  25.                 staa TMSK2

  26.                 ldaa #$80                        ;Enable PA7 as output
  27.                 staa PACTL
  28.        
  29.                           
  30.                 ldaa #$10                        ;Start first ADC conversion - multi mode enable
  31.                 staa ADCTL
  32.                           
  33.                 ldd #$0100                        ;Load the capture register
  34.                 std TOC1
  35.                        
  36.                 cli                                ;Enable interupts

  37. loop                wai
  38.                 bra loop



  39. ;OC1 interrupt service
  40. oc1f                ldaa #$10                         ;Start another ADC conversion
  41.                 staa ADCTL

  42.                 ldaa ADR1                        ;Read the pot position from ADC channel 1
  43.                 staa PORTB                        ;Display it
  44.                                                                                                    
  45.                 suba #127                        ;0x7F is zero reference.
  46.                
  47.                 bne oc1f_ne                            ;Jump if values not same

  48. ;Set Both outputs low. Motor is stationary
  49.                 clrb                                   
  50.                 stab PORTA                        ;Both OC1 and OC2 outputs low
  51.                 stab TCTL1                        ;TOC2 mode is disabled
  52.                 bra done
  53.                
  54. ;Non-zero drive - decide if +ve or -ve:
  55.                
  56. oc1f_ne                bcs oc1f_cs

  57. ;Positive result - motor spins clockwise:

  58.                 ldab #$40                        ;Port A drives this value:
  59.                 stab PORTA
  60.                 clrb                                ;Release TOC2 latch - Port A acquires value, above.
  61.                 stab TCTL1
  62.                 ldab #$40                         ;TOC 2 output toggles on OC2 event; motor drive stops.
  63.                 stab TCTL1
  64.                 bra done               

  65. ;Negative result - motor spins anti-clockwise:

  66. oc1f_cs                ldab #$80                        ;Port A drives this value:
  67.                 stab PORTA
  68.                 clrb                            ;Release TOC2 latch - Port A acquires value, above.
  69.                 stab TCTL1
  70.                 ldab #$40                         ;TOC 2 output toggles on OC2 event; motor drive stops.
  71.                 stab TCTL1
  72.                 nega                                ;Invert result -> 0xFF -> 0x01 etc.

  73. ;Now set up TOC2 to trigger at a time forward of TOC1. This means that the motor will
  74. ;be powered for the number of ticks in ACCA * 256.                                                                                
  75.                                                                                                                                                                                                                
  76. done:                tab                             ;TOC 2 is set to trigger after this no of cycles.
  77.                 clra
  78.                 rolb
  79.                 rola
  80.                 rolb
  81.                 rola               
  82.                 rolb
  83.                 rola
  84.                 rolb
  85.                 rola               
  86.                 rolb
  87.                 rola               
  88.                 addd TOC1  
  89.                 std TOC2
  90.                
  91.                 ldd #$1000
  92.                 addd TOC1
  93.                 std TOC1
  94.                
  95.                 ldaa #$80                        ;Clear the TOC 1 interrupt
  96.                 staa TFLG1
  97.                 rti


  98. ;Interrupt Vectors

  99.                 org $FFE8
  100.                 dw oc1f               

  101.                 org $FFFE
  102.                 dw start
復制代碼



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏3 分享淘帖 頂1 踩
回復

使用道具 舉報

沙發
ID:194876 發表于 2017-5-16 22:00 | 只看該作者
看看感覺還行
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久最新 | 干干干日日日 | 国产一区二区影院 | 尤物视频在线免费观看 | 中文字幕综合 | 一本一道久久a久久精品蜜桃 | 久久精品国产亚洲a | 精品久久久久久久 | 91精品www | 红桃视频一区二区三区免费 | 成人精品视频在线 | 碰碰视频| 亚洲国产二区 | 综合色久 | 亚洲视频一区二区三区 | 国产在线一区二 | 久久精品小视频 | 欧美性大战久久久久久久蜜臀 | gav成人免费播放视频 | 在线观看午夜视频 | 欧美一级久久久猛烈a大片 日韩av免费在线观看 | 久久久久91 | 99reav| 国产一区二区免费 | 亚洲视频在线看 | 国产日韩av一区二区 | 91正在播放| 在线播放一区 | 日韩精品免费视频 | 欧美日韩高清在线观看 | 欧美一级做性受免费大片免费 | 中文字幕av一区 | 天天拍天天操 | 久久久精品一区二区三区四季av | 国产欧美一区二区精品久导航 | 狠狠天天 | 91文字幕巨乱亚洲香蕉 | 久久网站黄 | 天天艹日日干 | 黄色毛片一级 | 在线观看黄色大片 |