[問題] 8051多個port同時動作的方法?及一些問題

看板ASM (組合語言)作者 (幻滅)時間13年前 (2012/03/22 19:54), 編輯推噓5(509)
留言14則, 5人參與, 最新討論串1/2 (看更多)
小弟最近在弄專題 有用到led、蜂鳴器、七段顯示器 然後我們有一個功能 就是當對8051觸發一個訊號時 上訴三種功能會同時觸發 我們三種功能的程式都有基本的功能了 led是跑馬燈 一直循環 蜂鳴器我們是寫個旋律給他 七段則是不段的數1-60秒 然後 我想問一下 例如說我讓P1.0變1的時候 三種功能會同時動作 該怎麼結合? 我不清楚 要如何 一邊播音樂邊讓led以及七段不斷的跑 因為 我們LED是一個迴圈讓8個燈不斷亮滅 七段也是一個迴圈不斷的跑,音樂的旋律也是 我有試過大概的結合 可是結果卻變成 音樂的旋律不順... ============== 還有我想請問一下 如果我想要一個溫度感測器 它的功能只要當溫度超過一定值就會發送一個訊號給8051的話 有哪個ic比較推薦的嗎?? 我有找到一個IC叫ds1820 可是他功能太多了 我們不需要那麼多功能.. 我不需要記錄溫度甚麼的 只要超過 例如40度 就送high給8051 他讓去觸發 剛剛上面獎的那個讓3個port同時動作的功能就好.. ========= 最後再問一個問題 我們專題是使用8051+labview來做 我最近在寫串列傳輸的時候出現一個問題 我寫 ------- x=0x80; /* LED右移初值 */ time=8; for(y=0;y<time;y++) /* 8種變化 */ { P0=~x; /* 輸出LED資料至P1 */ SBUF=x; while(TI==0); TI=0; LEDdelay(10000); /* 延遲 */ x>>=1; /* 右移一位元 */ } ------- 照理來說她 應該是等x的資料送出去時才把TI變成0吧? 我有連接電腦時 他是會把資料送出去沒錯 但是我把RS232拔掉時 他還是會不斷的做跑馬燈的作用 而不是因為[while(TI==0)]而讓他卡在第一個燈 所以意思是 8051就算沒有接RS232,8051還是會自動把x丟給SBUF 然後把TI變成1嗎? 我的問題結束了,謝謝!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 210.240.249.235 ※ 編輯: abab7974 來自: 210.240.249.235 (03/22 19:57)

03/22 20:58, , 1F
把功能LOOP拆開,然後不斷PULLING
03/22 20:58, 1F

03/22 23:14, , 2F
請問可以稍微詳細說明一下嗎@@?
03/22 23:14, 2F

03/22 23:22, , 3F
temp.sensor有Maxim的 DS18B20
03/22 23:22, 3F
DS18B20我有看過類似的DS1820 請問兩者的差別在哪邊?? 因為我只是需要 當溫度超過一定值時 送一個訊號給8051來進行切換動作而已 其他的都用不到 可是我看DS1820的功能很多元 我怕我不太會弄..

03/22 23:23, , 4F
rs232線拔掉51的TX還是一樣動作
03/22 23:23, 4F
恩恩 所以如果我要讓 當電腦接收到8051傳送完SBUF後才進行下一個動作的話 就要在電腦端 那邊寫一個 當收到資料時回傳給8051的RX來判斷 8051是否有接收到 然後在讓她進行下一個動作嗎? EX:我要讓8051從P0.0跑到P0.7來回跑 然後我想要當跑到P0.0時 就送資料給labview讓labview上的燈號跟8051同步 等到labview有接收到資料且同步時 8051在往下跑到P0.1 所以我應該TX、RX都要寫嗎? 就是當8051接收到LABVIEW同步完成的消息 才進行下一個燈號的動作

03/23 01:38, , 5F
有沒有束脩可以收?
03/23 01:38, 5F
不好意思 請問一下"束脩"是甚麼? ※ 編輯: abab7974 來自: 210.240.249.235 (03/23 12:13)

03/23 15:11, , 7F
Just kidding
03/23 15:11, 7F

03/23 16:49, , 8F
你傳送UART的話,有沒有接上線都會傳送啊
03/23 16:49, 8F

03/23 16:50, , 9F
反正你要同時三個功能都在動作的話,就要每做完一個小步驟
03/23 16:50, 9F

03/23 16:50, , 10F
換下一個功能執行一個小步驟,這樣看起來就會很像是同時在
03/23 16:50, 10F

03/23 16:51, , 11F
執行了
03/23 16:51, 11F

03/23 16:52, , 12F
03/23 16:52, 12F

03/23 16:53, , 13F
istor_circuit.gif (縮址 http://goo.gl/fh6Bz )
03/23 16:53, 13F
感謝各位大大的幫忙,我先研究一下 到時有問題再上來發問 謝謝 ※ 編輯: abab7974 來自: 111.240.161.133 (03/24 13:41)

04/10 12:49, , 14F
用一種叫RTOS(real-time OS)的方式,以分時的概念同時進行
04/10 12:49, 14F
文章代碼(AID): #1FQnCIcu (ASM)
文章代碼(AID): #1FQnCIcu (ASM)