廣告廣告
  加入我的最愛 設為首頁 風格修改
首頁 首尾
 手機版   訂閱   地圖  簡體 
您是第 19121 個閱讀者
 
<< 上頁  1   2   3  >>(共 3 頁)
發表文章 發表投票 回覆文章
  可列印版   加為IE收藏   收藏主題   上一主題 | 下一主題   
tgs0910 手機
個人頭像
個人文章 個人相簿 個人日記 個人地圖
初露鋒芒
級別: 初露鋒芒 該用戶目前不上站
推文 x1 鮮花 x61
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

不好意思時常麻煩大大的幫忙
老大請教一下我18樓的程式對嗎
就算用2顆8051對接也無法收到信號
謝謝
我今天又去買兩個75176
我共有六個75176
但是只有一個可以這樣接還收的到東西
程式是用大大幫小弟改的程式
ORG   00h  
  MOV   TMOD,#00100000B
  MOV   TH1,#0FDH  
  SETB   TR1  
  ORL   PCON,#80H
  MOV   SCON,#01111000B
  clr   20h.0
START:
  jnb   ri, checkp21
  clr   ri
  mov   a, sbuf
  cjne   a, #30h, chkrcv31h
  setb   p1.1
  setb   20h.0
  jmp   checkp21
chkrcv31h:
  cjne   a, #31h, rcvother
  setb   p1.2
  jnb   20h.0, checkp21
  setb   p1.3       ; 收到 30h, 31h
  clr   20h.0
  jmp   checkp21
rcvother:
  clr   20h.0     ; 非 30h, 31h
checkp21:
  setb   p2.1       ; pull high p2.1 for input
  jnb   p2.1, START_9
  jmp   START
 
START_9:
  mov   dptr, #table
next:   mov   a,#0
  movc   a,@a+dptr
  cjne   a,#'$',trans
  jmp   START
   
trans: mov   sbuf,a
  jnb   ti,$
  clr   ti
  inc   dptr
  ajmp   next
table: DB   30h, 31h, '$'
謝謝


[ 此文章被tgs0910在2006-04-19 21:23重新編輯 ]



獻花 x0 回到頂端 [20 樓] From:台灣中華電信 | Posted:2006-04-19 21:16 |
cmovies
數位造型
個人文章 個人相簿 個人日記 個人地圖
小人物
級別: 小人物 該用戶目前不上站
推文 x0 鮮花 x20
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

老大請教一下我18樓的程式對嗎
-> 有一行打錯字吧!
K5:   JB     P2.5,K5 <- 這應該是 K6

就算用2顆8051對接也無法收到信號
-> 你說的是用 18 樓的程式嗎? 如果是的話上面的錯誤會導致 P2.5 沒按下程式就停住不會送收了

我今天又去買兩個75176
我共有六個75176
但是只有一個可以這樣接還收的到東西
-> 不會吧! 六個只有一個正常. 你有加終端電阻嗎? 就是第 7, 8 腳接一個 50 歐姆
如果兩個 8051 對接會正常嗎???

我覺得你有示波器就應該善用工具來查, 這樣比較容易知道哪裡錯了!


獻花 x0 回到頂端 [21 樓] From:台灣中華電信 | Posted:2006-04-20 03:46 |
tgs0910 手機
個人頭像
個人文章 個人相簿 個人日記 個人地圖
初露鋒芒
級別: 初露鋒芒 該用戶目前不上站
推文 x1 鮮花 x61
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

老大小弟終於找出問題的所在了
原來是小弟的麵包版太舊了
有些接觸不良
小弟換了一塊就沒這個問題了
謝謝大大的幫忙
不過小弟還有些問題
可否麻煩大大有空時幫幫小弟謝謝
ORG   00h          
    MOV   TMOD,#00100001B
    MOV   TH1,#0FDH    
    SETB   TR1
    ORL   PCON,#80H
    MOV   SCON,#01110000B
;
LOOP:   MOV   P1,#11111111B
    JNB   RI,K0
    CLR   RI
;
    MOV   A,SBUF
;
C1:   CJNE   A,#FFH,C2
    CLR   P1.0
    JMP   K0
;
C2:   CJNE   A,#31H,C3
    CLR   P1.1
    JMP   K0          
;
C3:   CJNE   A,#32H,C4
    CLR   P1.2
    JMP   K0
;
C4:   CJNE   A,#33H,C5
    CLR   P1.3
    JMP   K0
;
C5:   CJNE   A,#34H,C6
    CLR   P1.4
    JMP   K0
;
C6:   CJNE   A,#35H,C7
    CLR   P1.5
    JMP   K0
;
C7:   CJNE   A,#36H,C8
    CLR   P1.6
    JMP   K0
;
C8:   CJNE   A,#37H,LOOP
    CLR   P1.7
    JMP   K0
;
K0:   MOV   P2,#11111111B
    JB     P2.0,K1
    MOV   A,#FFH
    ACALL   DELAY
    JMP   K8
;
K1:   JB     P2.1,K2
    MOV   A,#31H
    ACALL   DELAY
    JMP   K8
;
K2:   JB     P2.2,K3
    MOV   A,#32H
    ACALL   DELAY
    JMP   K8
;
K3:   JB     P2.3,K4
    MOV   A,#33H
    ACALL   DELAY
    JMP   K8
;
K4:   JB     P2.4,K5
    MOV   A,#34H
    ACALL   DELAY
    JMP   K8
;
K5:   JB     P2.5,K6
    MOV   A,#35H
    ACALL   DELAY
    JMP   K8
;
K6:   JB     P2.6,K7
    MOV   A,#36H
    ACALL   DELAY
    JMP   K8
;
K7:   JB     P2.7,K9
    MOV   A,#37H
    ACALL   DELAY    
    JMP   K8
;
K9:   JMP   LOOP
;
K8:   MOV   SBUF,A
    JNB   TI,$
    CLR   TI
    JMP   LOOP  
;
DELAY: MOV   R4,#40
   
;
TIMER: MOV   TH0,#3CH
    MOV   TL0,#B0H
    SETB   TR0
;
WAIT:   JB     TF0,OK
    AJMP   WAIT
;
OK:   CLR   TF0
    DJNZ   R4,TIMER
    RET
   
;
END
小弟這樣寫哪裡有問題請大大幫小弟看一下
為什麼不能用
小弟看過可以用 一隻腳來選擇要用哪一段程式
然後把那一隻腳接地就永遠用那一段程式來執行
就是第一段把 P1.1 SETB 時就發射30H
    第二段把 P1.1 SETB 時就發射31H

請問大大知道大概要如何寫
謝謝


獻花 x0 回到頂端 [22 樓] From:台灣 | Posted:2006-04-29 18:11 |
cmovies
數位造型
個人文章 個人相簿 個人日記 個人地圖
小人物
級別: 小人物 該用戶目前不上站
推文 x0 鮮花 x20
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

小弟這樣寫哪裡有問題請大大幫小弟看一下
為什麼不能用
-> 我不曉得你所謂的不能用是指什麼問題?
唯一能看出不太合理的地方是收到資料後, 如果 P2 沒有被按下那麼 P1 的動作立刻就消失了
LOOP:   MOV   P1,#11111111B <- 就是這行
就算 P2 有被按下, 兩秒鐘後 P1 得動作也會消失 (DELAY 在 12 MHz 應該是兩秒吧!?)

如果你的程式是想要發送端的 P2 被按了哪些, 接收端的 P1 相對應的腳位就拉 High 其他為 Low.
那直接把 P2 送出去就好了
  ORG   00h      
  MOV   TMOD,#00100001B
  MOV   TH1,#0FDH  
  SETB TR1
  ORL   PCON,#80H
  MOV   SCON,#01110000B
  MOV   P1,#11111111B  
LOOP:
  JNB   RI,K0
  CLR   RI
  MOV   A,SBUF
  MOV   P1, A
K0:
  MOV   P2,#11111111B
  NOP
  MOV   A,P2
  CPL   A
  MOV   SBUF,A
  CALL DELAY
  JMP   LOOP

DELAY:
  MOV   R4,#40
TIMER:
  MOV   TH0,#3CH
  MOV   TL0,#B0H
  CLR   TF0
  SETB TR0
WAIT:
  JNB   TF0,WAIT
  DJNZ R4,TIMER
  RET
 
  END

小弟看過可以用 一隻腳來選擇要用哪一段程式
然後把那一隻腳接地就永遠用那一段程式來執行
就是第一段把 P1.1 SETB 時就發射30H
  第二段把 P1.1 SETB 時就發射31H
-> 這跟你用 JB 來判別要送哪個資料有什麼不一樣嗎???
LOOP:
  JB   P0.0, CODE1
  JMP   CODE2
CODE1:
  ;
  JMP   LOOP
CODE2:
  ;
  JMP   LOOP


獻花 x0 回到頂端 [23 樓] From:台灣中華電信 | Posted:2006-04-30 23:52 |
tgs0910 手機
個人頭像
個人文章 個人相簿 個人日記 個人地圖
初露鋒芒
級別: 初露鋒芒 該用戶目前不上站
推文 x1 鮮花 x61
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

大大不好意思小弟最近比較忙
所以會很晚回復大大的幫忙
小弟是用做串列傳輸用的
還有是要跟plc做串列傳輸
只是先拿兩個8051做試驗
所以要這樣寫

小弟這樣寫卻無法收到資料

對2秒

大大不好意思貌冒昧請教大大一下
大大目前在做什麼事
如果小弟有case要做大大會有意願嗎
謝謝


獻花 x0 回到頂端 [24 樓] From:台灣中華電信 | Posted:2006-05-04 21:07 |
cmovies
數位造型
個人文章 個人相簿 個人日記 個人地圖
小人物
級別: 小人物 該用戶目前不上站
推文 x0 鮮花 x20
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

PLC 很多都是用 MODBUS 吧! 像這樣的很少見, 還是 PLC 也是你們寫的?
你只要將條件說清楚, 這樣的小程式我可以給你範例你在自己改就好了

像單晶片最好不要用麵包版做測試, 一不小心出什麼問題都不知道


獻花 x0 回到頂端 [25 樓] From:台灣中華電信 | Posted:2006-05-04 21:53 |
tgs0910 手機
個人頭像
個人文章 個人相簿 個人日記 個人地圖
初露鋒芒
級別: 初露鋒芒 該用戶目前不上站
推文 x1 鮮花 x61
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

謝謝大大的幫助
既然大大沒意願小弟也不勉強
只是這樣麻煩大大小弟真的很過意不去
只是這樣還要多多麻煩大大幫幫小弟

如果大大有任何需要 只要小弟辦的到的
小弟一定全力以赴
真是感激不盡


獻花 x0 回到頂端 [26 樓] From:台灣中華電信 | Posted:2006-05-09 21:47 |
cmovies
數位造型
個人文章 個人相簿 個人日記 個人地圖
小人物
級別: 小人物 該用戶目前不上站
推文 x0 鮮花 x20
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

你太客氣了. 我也沒幫上多少忙!

有問題的人提出問題, 能回答的人回答這便是論壇的好處不是嗎!?


獻花 x0 回到頂端 [27 樓] From:台灣中華電信 | Posted:2006-05-10 22:35 |

<< 上頁  1   2   3  >>(共 3 頁)
首頁  發表文章 發表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.027349 second(s),query:16 Gzip disabled
本站由 瀛睿律師事務所 擔任常年法律顧問 | 免責聲明 | 本網站已依台灣網站內容分級規定處理 | 連絡我們 | 訪客留言