線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:2138
推到 Plurk!
推到 Facebook!

如何讓MCU同時作兩件事

尚未結案
tom0906
一般會員


發表:3
回覆:3
積分:1
註冊:2007-11-20

發送簡訊給我
#1 引用回覆 回覆 發表時間:2012-02-20 08:03:29 IP:122.124.xxx.xxx 訂閱
各位前輩好 請教一下我已經寫好了一支程式用 P3.0 接按鍵 P3.1接LED P3.2接喇叭 現在按P3.0喇叭已可發出音樂 如何讓發出音樂的同時 LED也一起閃爍(LED閃爍的副程式也寫好了) 謝謝
------
周悟德
kib72377
高階會員


發表:1
回覆:217
積分:238
註冊:2004-11-12

發送簡訊給我
#2 引用回覆 回覆 發表時間:2012-02-20 10:57:37 IP:125.233.xxx.xxx 未訂閱
 用計時器. 做分時多工.

如果你不懂,
那就在你原來的delay中,插入LED的控制動作,
但這樣,你delay的數字要全部重新改過,
這已經是對你程式架構變動最小的方法了.
極光
初階會員


發表:32
回覆:96
積分:40
註冊:2005-01-16

發送簡訊給我
#3 引用回覆 回覆 發表時間:2012-02-20 23:16:38 IP:59.104.xxx.xxx 訂閱

===================引 用 tom0906 文 章===================
各位前輩好 請教一下我已經寫好了一支程式用 P3.0 接按鍵 P3.1接LED P3.2接喇叭 現在按P3.0喇叭已可發出音樂 如何讓發出音樂的同時 LED也一起閃爍(LED閃爍的副程式也寫好了) 謝謝


可以參考"8051簡單多工",我覺的就可解決你的問題了!我個人現在都使用這種架構,還蠻好用的!但因是簡易模式,所以必須作完每個task內的工作才可換下一步,所以每個task執行的時間就由工程師自己斟酌了。現在手頭上的案子都是用這種模式完成,而且個人感覺蠻好寫的,而且程式也不難看
if8051
中階會員


發表:2
回覆:53
積分:61
註冊:2012-08-24

發送簡訊給我
#4 引用回覆 回覆 發表時間:2012-08-24 22:50:16 IP:114.40.xxx.xxx 訂閱
Keil C Compiler 已內建有 RTX51 Tiny Real Time Operating System,
允許同時執行 16 個 task,留意 8051 不適用,因為 RAM 只有 128 byte
太少了,至少要有 256 byte RAM ,所以一定要使用 8052 才行!

#include // prototypes for RTX51 Tiny RTOS

修改設定 Options for Target \ Target \ Operating System \
原本是 None 要修訂為 RTX-51 Tiny 如此就大功告成了!

View \ Books Window \Tools User's Guide \ Complete User's
Guide Selection \ RTX51 Tiny User's Guide 裡面就有說明。
------
ATMEL AVR 單晶片設計開發 教學

工業電子 電機自動控制 設計 維修
系統時間:2024-11-21 21:45:09
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!