微控制器如何將資料或指令遠距離傳輸

時間 2022-04-10 19:05:11

1樓:匿名使用者

1.用微控制器取樣溫度,再傳給一台電腦a,連線inter網;另一台電腦b在萬公里以外通過inter網也能準確無誤地收到a電腦的資料.

2.可以用無線傳輸,架乙個無線台,把溫度訊號傳給微控制器a;自己做乙個傳輸協議,通過微控制器a傳給無線發射裝置;另外一邊做一台無線接收的裝置,把接收到的訊號用微控制器b根據協議解碼出來就行了.

理論上兩種方式都不只傳送15km,第二種方式看你的接收和發射裝置的有效距離而定.

2樓:

1、用無線數傳模組進行遠傳,如:gprs模組cdma模組或其它的遠距離無線通訊模組,具體的要看現場環境來定了

2、有線傳輸。如:利用**線進行撥號連線,或通過internet連線,利用can匯流排傳輸資料也可以達到10公里的距離。

3樓:

推薦使用gprs 或者 cdma

雖然資料量不大 距離方面can可以做到

但是對線的要求會使得你的成本變得非常高

使用無線並借助現有網路最好

4樓:匿名使用者

你們想的太複雜了,10公里的銅線,電阻才200歐姆,只要把邏輯電平訊號,換成,有一定功率的訊號不就行了。

微控制器序列通訊中通訊什麼意思?

5樓:匿名使用者

通訊就是資訊的傳遞!在數字系統中,通訊一般分為並行通訊和序列通訊!並行通訊一般是將一定位數的資料一次性通過一組資料匯流排向外傳送。

而微控制器中的序列通訊則一般將要傳送或接受的資料拆分,只用一根資料線,一位一位向外傳送或接收,例如大部分微控制器中的uart序列通訊埠,只用了兩根線就實現了接收與傳送!

一般來講,並行通訊可以一次性並行傳送多位資料,所以通訊速率較高,通訊資料量大,但是需要位數較多的資料匯流排,適合近距離通訊!而微控制器序列通訊由於一次只能傳送一位資料,所以速度較慢,但是有效節省資源,適合遠距離傳輸!就比如咱們家中使用的網線,一般是一根比較細的電纜或者**線,好像沒有見過拉一根很寬很粗的排線連線到您的計算機上吧,因為這樣既不方便也不經濟!

呵呵!舉個例子,比如將八位二進位制數10101101向外傳送,如果採用並行通訊方式,將這八位數對應的放到8根資料匯流排上,這樣就一次性的將八位資料向外傳送!而採用序列通訊時,需要將這八位資料拆分,先發1,再發0,然後以此類推,直到將這八位資料發完,這樣就可以只用一兩根或少量資料線實現較遠距離傳輸,並且比較節省資源!

至於你說的通的是什麼資訊,對於微控制器來說,這資訊既可以是資料資訊,也可以是命令資訊,比如你需要將乙個數或字元傳送出去,或者將一段命令**傳送出去!可以通過序列方式,也可以採用並行方式,使用者可以根據具體情況選擇!

模數、數模轉換一般是做模擬與數碼訊號之間的轉換,這種轉換可以認為是通訊中的一種,它跟以上所說的序列並行通訊不是乙個概念!因為他們適用的場合不同!

呵呵,這個解釋清楚嗎?

6樓:匿名使用者

串列埠通訊是將外部控制訊號和採集的資料訊號傳遞給微控制器,再將微控制器處理後產生的輸出訊號傳遞給外部裝置。數模模數轉換只是其中的一部分。不能實現邏輯處理功能。

7樓:anyway中國

數模是將微控制器內的資料輸出

轉換為模擬訊號。是微控制器通過數模轉換器以模擬量的方式與外部建立聯絡。

模數是將外部模擬訊號變為數碼訊號輸入微控制器。是外部模擬訊號通過模數轉換器與微控制器建立聯絡。

串列埠通訊是微控制器與外設之間數碼訊號的互動。

如何解決ds18b20遠距離傳輸(大概100m的距離,要求是有線傳輸), 微控制器接受資料?

8樓:匿名使用者

有線傳輸……那就是每個ds18b20用乙個簡單的微控制器(比如2051)控制,然後使用rs485傳輸到atmega16上。

如果atmega16微控制器與上位機通訊要使用串列埠,但是5個ds18b20節點與atmega16的通訊也要使用串列埠(rs485),那就需要atmega16來切換串列埠通道了。

或者ds18b20獲得的溫度資料轉換為電流訊號,在被atmega16取樣前再轉換為電壓訊號。atmega16有10位的adc且有8個輸入通道,這樣把電壓訊號送入atmega16的adc轉換為數碼訊號,再通過串列埠傳遞給上位機——這樣有個好處,每個ds18b20有乙個微控制器控制執行,得到的溫度資料轉換為電流訊號直接送到線路上到atmega16。所以atmega16不需要查詢每個18b20的狀態或發出請求資料的命令,只要直接轉換相關線路上的電流訊號即可得到資料。

9樓:

採集的溫度資訊傳輸100公尺無非是訊號太弱,只要在輸出端接組放大器就ok了

,還是很弱的話在上位機端再接組。買好一點的。。。。

10樓:

這種感測器 供電是3到5.5伏 一百公尺 確實是有點遠 如果你在實際發現 確實是不行 你中間加乙個放大和反饋 電路

11樓:

1、用0.5以上的遮蔽雙絞線作為傳輸線,在微控制器io口端接外部上拉電阻。

2、每個ds18b20就近接入微控制器作為乙個感測器節點,用485等工業匯流排把微控制器聯網。

3、每個ds18b20就近接入微控制器作為乙個感測器節點,用無線數傳模組把微控制器聯網。4、

51微控制器wr和rd的是怎麼控制它來傳輸資料的。 20

12樓:做而論道

就是我把乙個資料 放在p0口之後 wr和rd的時序是通過什麼暫存器來控制的,如:

void sj(unsigned uchar aa)這個就是我要傳輸的資料,只要呼叫這個函式就完了嗎,我感覺有問題啊 這個p0口的資料是怎麼送出去的(我知道是通過wr和rd的時序送出去的),問題是怎麼操作wr和rd來觸發一次時序呢?

---------

wr、rd,不是這樣用的。

要想讓 wr 或 rd 發揮作用,必須使用《片外 ram》。

當你對《片外 ram》進行讀、寫的時候,wr 和 rd 才會工作。

讀寫片外 ram 的組合語言如下:

讀片外 ram:movx a, @dptr寫片外 ram:movx @dptr, a讀寫片外 ram 的c 語言如下:

mem_w(0xb700, i);

k = mem_r(0xbb00);

事先要定義這兩個函式。

微控制器執行上述的讀、寫指令時:

p0、p2 先輸出 16 位的位址,ale 輸出正脈衝,令外接的 373 鎖存低八位位址後,

rd 或 wr,就會輸出低電平,令《片外 ram》輸出或接收資料。

最後,資料,將從 p0 口輸入或輸出。

另外,和 wr、rd,協同工作的,還有 ale。

p0、p2,前面已經說了,也是要用到的。

p1,是用不上的。

13樓:匿名使用者

類似以上介面,你查詢關於xbyte的資料看看就能明白了需要#include

//絕對位址處理標頭檔案,包含xbyte,

//用xbyte來定義擴充套件的io埠及外部ram單元位址,//用xbyte定義的目的是將外部電路不同的功能編//程不同的位址而已這樣就可以在程式裡面通過直//接對位址附置,就能使外部電路實現需要的功能,//這樣做還有乙個好處就是在編譯的時候會產生//movx指令,這樣可以操作 ~wr 和 ~rd引腳// xbyte[address]=data   寫資料// data=xbyte[address]   讀資料

14樓:

1、首先您要明白,這兩個引腳是控制微控制器的外部儲存器的讀寫操作的2、對51微控制器而言,p0口是雙向資料口線(51為8位微控制器,其資料用8個位來表示,所以用到8個口線),也是位址資料的低8位。當您需要擴充套件外部儲存器時,用p2p0口的16根口線作為位址線,所以可以訪問的儲存單元為2^16(2的16次方=65536),也正因為如此,51微控制器可擴充套件的最大儲存器為64k約=65536。

3、當訪問外部儲存器是p0又是資料口線又是位址線,怎麼辦?解決的辦法是兩種功能分時使用,這裡就需要乙個鎖存器來完成,p0口直接接到外部儲存器的8位資料線,同時通過鎖存器接到外部儲存器的低8位位址線。基本過程:

先往p2p0口送需要訪問外部儲存器的單元位址,此時p0外接乙個鎖存器作為位址資料的低8位,並被定鎖,此時微控制器內部電路自動產生乙個鎖存的訊號,這就是wr或者rd訊號了。然後再對資料進行訪問!

寫得可能有點亂,多看兩遍一定能明白,最好畫個圖,這裡不好上圖,呵呵!

15樓:_老衲用飄柔

wr和rd的時序是51微控制器自動產生的

在程式中不用你去控制 當你的程式在訪問片外資料儲存器時根據資料傳送到方向 微控制器自動發出寫命令或讀命令控制晶元進行寫操作或讀操作。

相應的指令是 movx a,@dptr(讀時序)或movx @dptr,a(寫時序)

不懂彙編? 想要理解就得學呀

具體細節參考89s51 datasheet.

16樓:匿名使用者

這要看硬體是怎麼連線的。

如果按照標準匯流排擴充套件外部儲存器的方式,你不用考慮這些,直接定義外部儲存的空間,寫程式就可以了。

如果是其他方式連線的,要知道電路圖是什麼樣子才能回答。

最好問問硬體設計的工程師,設計出來了就要告訴軟體工程師用什麼邏輯讀寫。

17樓:匿名使用者

這個51微控制器來說,p0,p1,p2就是普通的i/o介面,可以通用的,要實現的功能得看你的原理圖,它連線哪個介面,就必須是哪個

微控制器或orl指令有什麼作用

18樓:飛鷹

orl能將某些位置一,對於想置一的位與1進行「或」邏輯,對於想保持原來的位與0進行「或」邏輯。

微控制器也被稱為單片微控器,屬於一種整合式電路晶元。在微控制器中主要包含cpu、唯讀儲存器rom和隨機儲存器ram等,多樣化資料採集與控制系統能夠讓微控制器完成各項複雜的運算,無論是對運算符號進行控制,還是對系統下達運算指令都能通過微控制器完成。

由此可見,微控制器憑藉著強大的資料處理技術和計算功能可以在智慧型電子裝置中充分應用。簡單地說,微控制器就是一塊晶元,這塊晶元組成了乙個系統,通過積體電路技術的應用,將資料運算與處理能力整合到晶元中,實現對資料的高速化處理。

19樓:匿名使用者

這個是 邏輯或 指令 意思就是將累加器a中的資料或上r1中的資料,資料儲存在a中.

20樓:匿名使用者

orl就是或的意思。是暫存器或到累加器中。

例如:(r1)=38h,(a)=26h,則結果是(a)=3eh.

微控制器中,什麼叫指令長度,區分微控制器指令的長度有什麼意義?微控制器指令長度什麼概念?詳細的介紹一下微控制器長度的計算方法。

指令長度就是一條指令的二進位制數字的多少。例如51微控制器有8位,16位,24位指令 8位 累加器 暫存器間的加 減 與 或等算術和邏輯運算指令,3位操作碼可區分8種運算 3位操作碼可區分8個暫存器 其他定義 16位 累加器 暫存器與乙個 立即數 之間的加 減 與 或等算術和邏輯運算指令,需要乙個8...

微控制器指令週期的計算

計算方法 pic微控制器的每四個時鐘週期為乙個內部指令週期,例如 8mhz的晶振,則內部指令週期為1 8 4 0.5 us 例項一 35us,8mhz的晶振,8位定時器,分頻比1 2 初值 e4 例項二 156.25us 32768hz的晶振,8位定時器,分頻比1 32 初值 fc 計算方法一 35...

如何將時間值存入到微控制器的AT24C 晶元中

只要會寫入和讀出即可,寫入時先發乙個位元組為寫命令 最低位是讀寫命令其餘7位可做為高7位位址 再發乙個低8位位址,然後再髮要寫入的資料 讀出時先發乙個位元組為寫命令 同樣含高7位位址 再發乙個低8位位址,然後再發一次讀命令,即可讀出資料 對於24c02 高7位位址的前4位內部已規定為1010 另3位...