Robofun 機器人論壇

標題: PWM 組合語言 找不出錯誤點在哪裡 試了很久 請各位板友幫個忙 [打印本頁]

作者: ginners    時間: 2012-2-4 03:34
標題: PWM 組合語言 找不出錯誤點在哪裡 試了很久 請各位板友幫個忙
本帖最後由 ginners 於 2012-2-16 03:19 編輯

程式碼在附加檔案裡
功能說明:
主要有五個按鈕做控制
按鍵1:正轉
按鍵2:反轉
按鍵3:高速
按鍵4:中速
按鍵5:低速
首先按鍵3~按鍵5選擇速度,接著按鍵1或2來轉動伺服馬達
我所使用的是89c51

已解決新問題了
將檔案內容 abc 改為以下
PWM   REG        P1.0                 ;PWM輸出
K1      REG        P2.0                 ;正轉
K2      REG        P2.1                 ;逆轉
K3      REG        P2.2                 ;高速
K4      REG        P2.3                 ;中速
K5      REG        P2.4                 ;低速
         ORG        0000H
  紅色標記的地方是改過的 原先是:
          ORG        0000H
K1      REG        P2.0                 ;正轉
K2      REG        P2.1                 ;逆轉
K3      REG        P2.2                 ;高速
K4      REG        P2.3                 ;中速
K5      REG        P2.4                 ;低速

  但另外不解的是為何一定要宣告P1.0為PWM,而不能直接在程式裡面打?
  SETB       P1.0
  CLR         P1.0
  如果前面沒宣告PWM   REG        P1.0
  P2.0~P2.7都會一直不段輸出脈波 但我並沒有設P2.0~P2.7是輸出 但結果會自動輸出 不知道原因 但以找到錯誤點

測試.asm

3.77 KB, 下載次數: 1600

測試.asm

3.77 KB, 下載次數: 1639

測試.asm

3.77 KB, 下載次數: 1581

測試.asm

3.77 KB, 下載次數: 1642

組合語言

TEST.asm

4.22 KB, 下載次數: 1587

下載這個組合語言

abc.asm

4.03 KB, 下載次數: 1655


作者: ginners    時間: 2012-2-4 03:35
選    測試.asm (3.77 KB)  組合語言 下載就好
作者: nichal    時間: 2012-2-4 17:59
跟C語言一樣
要宣告才能用

GAP    EQU    21H
;
MOV   GAP,#100
......
這樣就可以用
查一下你的組譯器說明書
裡面應該有很多假指令的使用方法
各家的都不太一樣
所以要自己試一下
祝你順利~~~
作者: ginners    時間: 2012-2-13 00:00
本帖最後由 ginners 於 2012-2-16 03:15 編輯

已解決新問題了
將檔案內容 abc 改為以下
PWM   REG        P1.0                 ;PWM輸出
K1      REG        P2.0                 ;正轉
K2      REG        P2.1                 ;逆轉
K3      REG        P2.2                 ;高速
K4      REG        P2.3                 ;中速
K5      REG        P2.4                 ;低速
         ORG        0000H
  紅色標記的地方需放在輸出腳 "宣告之前"
  但另外不解的是為何一定要宣告P1.0為PWM,而不能直接在程式裡面打?
  SETB       P1.0
  CLR         P1.0
  如果沒這樣P2.0~P2.7都會一直不段輸出脈波 但我並沒有設P2.0~P2.7是輸出 但結果去會自動輸出 不知道原因 但以找到錯誤點




歡迎光臨 Robofun 機器人論壇 (https://robofun.net/forum/) Powered by Discuz! X3.2