1樓:百度文庫精選
內容來自使用者:xy鴨頭丫頭
2樓:匿名使用者
#include
#define uchar unsigned charvoid main()
#include
#define uchar unsigned charsbit sda=p2^1;
sbit clock=p2^0;
uchar recive;
void disp();
void delay10(del);
void main()
}/************中斷接收*******************/
void send_rev() interrupt 4 using 2
最簡單的串列埠傳送接收程式,接收你也可以用查詢方式。
3樓:竹藍子
4樓:瀟湘電子工程師
我部落格上那個程式完全滿足你的要求,你可以去參考一下.
5樓:匿名使用者
你可以參考一下這個...
希望對你有所幫助..
pc機如何實現與微控制器間序列通訊
6樓:百度文庫精選
內容來自使用者:xy鴨頭丫頭
7樓:約定
有兩種方來法與pc通訊:
1,加接一源個usb轉串列埠的硬體裝置(網上很容易買到),這樣既解決了資料線的連線又解決了微控制器供電問題,但pc端可能需要安裝usb驅動,而且要碰運氣,往往因usb驅動問題無法一次成功;
2,通過rs232介面與pc通訊,當然也少不了硬體支援,自己做或到網上買一rs232模組,步驟1:將模組9針d型介面連線至電腦com1或com2,按模組的標註將rxd和txd及公共地連線至微控制器相關電路,步驟2:通過pc端usb介面取電並連線至微控制器相關電路,usb介面的pin1通常為vcc(正電源端)pin4通常為gnd(負電源端)。
這樣做可能麻煩一些,但一次成功的概率會高很多。
如果你的電腦硬體配置中沒有rs232介面的com1或com2,那你只能採用第1種方法了。
如何實現(電腦)pc機與微控制器的序列通訊
8樓:百度文庫精選
內容來自使用者:xy鴨頭丫頭
9樓:匡秀越
硬體部分有二種情況
1、電腦帶有原生串列埠,就是主機板上帶有序列口,這個情況就太好辦了。用「串列埠除錯助手」測試一下就可以用vb寫程式了。電腦和微控制器用232晶元進行介面轉換。
2、電腦沒有原生串列埠,就是主機板上沒有序列口,這個情況有點麻煩。要用usb轉串列埠的模組,裝好驅動後會在「裝置管理器」中出現乙個串列埠,直接當原生串列埠用就行了,而且經過usb轉出來的串列埠一般都ttl電平的,也就是可以直接接微控制器不用232晶元的。不過這也要看你用的是哪種模組了,具體的要看模組說明書。
最後要注意的是波特率和微控制器晶振的選用,不知道你用的是什麼型號的微控制器。
軟體部分,可以用簡單的vb編寫上位機軟體,這方面網上有很多的**。微控制器部分只要按照普通的序列寫程式就行了,測試時可以用「串列埠除錯助手」這款軟體,除錯好後再寫vb程式。
上述是我們做專案和產品的經驗,希望對你有所幫助。
10樓:匿名使用者
pc串列埠訊號電平好在-12v - +12v。需要一塊轉換電路(max232)將其轉成ttl電平,再接到微控制器的相應埠就可以了。
51微控制器與pc機之間的硬體串列埠連線???? 具體的怎樣連線????
11樓:匿名使用者
51微控制器與pc機之間的硬體串列埠連線,
如果 pc 機有 com 串列埠 用 rs232轉換ttl 與微控制器 rxd txd 連線,
如果 pc 機沒有 com 串列埠 用 usb轉換ttl 與微控制器 rxd txd 連線,
硬體連線後 就是 微控制器 軟體 與 pc機軟體 vb 的 程式設計問題了,
還有設計乙個 微控制器 與 vb 的 通訊協議。
12樓:匿名使用者
微控制器和微機通訊的電氣標準要一致,微機串列埠一般是rs232電氣標準,所以要加電平轉換晶元,大多用max232,一般微控制器實驗板上都提供這樣的標準串列埠。
要分別編寫上位機和下位機軟體程式,微控制器程式參照例程、教科書進行編寫;上位機微機可採用vb,組態軟體,labview等軟體編寫,一般若是簡單的通訊,上位機程式編寫很簡單,例如vb中學會使用mscomm控制項,有vb最基礎知識的一天就能學會。
大可以沒有微控制器,沒有max232,沒有序列介面這些硬體就可以實現學習並掌握微控制器與微機之間的串列埠通訊。proteus可以**微控制器,也是主流軟體。
如今的膝上型電腦幾乎都沒有保留串列埠,而用usb介面取而代之,不過沒關係,有了虛擬串列埠和串列埠除錯助手,這些都解決了。你可以搜尋一下虛擬串列埠,真的很不錯的。
13樓:
微控制器通過txd和rxd兩條線 連線max232晶元後,轉換電平,連線pc串列埠,一般是2、3腳,5腳是地線。一共三根線。
微控制器的txd接電腦的rxd,微控制器的rxd接電腦的txd。地線接地線。
vb中要用mscomm控制項,設定相同的波特率,起始、結束位、校驗位,資料位等。
vb的mscomm控制項設定好埠號,然後portopen= true
就可以接收微控制器資料了。
簡單的就是用查詢的辦法,用乙個定時器,不斷的查詢mscomm控制項的input屬性和inbufferlen屬性。
mscomm控制項有個接收模式,文字或者二進位制,如果簡單的,建議用文字的,比較好處理。
二進位制的,就用位元組陣列接收。也簡單。
檢測溫度的,直接把溫度轉換成數字字元,傳給電腦就ok了,單工的就ok了。
呵呵,女孩也學微控制器?哈哈,時代不同了。
14樓:匿名使用者
微控制器一般是3.3v或5v的電平,電腦串列埠要高點,大概是十幾伏,具體數值記不清楚了,所以要連線到電腦,就要進行電平轉換,用rs232系列的晶元就可以。
15樓:匿名使用者
可以通過pc的串列埠和usb口與微控制器連線,之間都需要電平轉換處理
51微控制器與pc機之間的硬體如何串列埠連線?
16樓:匿名使用者
微控制器和微機bai
通訊du的電氣標準zhi要一致,微機串列埠一般是rs232電氣標準dao,所以要加電平轉換晶元,版大多權用max232,一般微控制器實驗板上都提供這樣的標準串列埠。
要分別編寫上位機和下位機軟體程式,微控制器程式參照例程、教科書進行編寫;上位機微機可採用vb,組態軟體,labview等軟體編寫,一般若是簡單的通訊,上位機程式編寫很簡單,例如vb中學會使用mscomm控制項,有vb最基礎知識的一天就能學會。
大可以沒有微控制器,沒有max232,沒有序列介面這些硬體就可以實現學習並掌握微控制器與微機之間的串列埠通訊。proteus可以**微控制器,也是主流軟體。
如今的膝上型電腦幾乎都沒有保留串列埠,而用usb介面取而代之,不過沒關係,有了虛擬串列埠和串列埠除錯助手,這些都解決了。你可以搜尋一下虛擬串列埠,真的很不錯的。
17樓:
單片抄機通過txd和rxd兩條線 連線max232晶元後襲,轉換電平,連線pc串列埠,一般是2、3腳,5腳是地線。一共三根線。
微控制器的txd接電腦的rxd,微控制器的rxd接電腦的txd。地線接地線。
vb中要用mscomm控制項,設定相同的波特率,起始、結束位、校驗位,資料位等。
vb的mscomm控制項設定好埠號,然後portopen= true
就可以接收微控制器資料了。
簡單的就是用查詢的辦法,用乙個定時器,不斷的查詢mscomm控制項的input屬性和inbufferlen屬性。
mscomm控制項有個接收模式,文字或者二進位制,如果簡單的,建議用文字的,比較好處理。
二進位制的,就用位元組陣列接收。也簡單。
檢測溫度的,直接把溫度轉換成數字字元,傳給電腦就ok了,單工的就ok了。
呵呵,女孩也學微控制器?哈哈,時代不同了。
pc機與微控制器串列埠通訊問題利用串列埠通訊助手將字串發給微控制器微控制器返回字串到串列埠通訊助手
問題出在你傳送時關掉中斷,因為丟掉了資料造成的,解決的辦法是 延時一段時間等待接收完畢後再傳送,比如檢測到有接收資料後,延時10毫秒,之後再傳送回pc。 掃地走人 給你指出幾處明顯的錯誤。1.resv沒有最大值的限定,這樣你的程式在執行的時候ch resv 會指向不明地址,因為ch最大為10個位元組...
微控制器串列埠通訊問題,51微控制器串列埠通訊問題
修者世界 p3 0xff的作用其實很簡單,就是為了更好的完成 讀 修改 寫 這個過程,其實對於p3口是沒有必要的,對於p0口這樣做是應該的。 革玉花戚雪 微控制器串列埠通訊的問題,其實你只有乙個問題,就是 p0 0xf0 s2buf 0xfc p0 s2buf 為什麼這裡p0是0x00 你覺得p0應...
5V微控制器與3 3V微控制器串列埠通訊問題
yesyes科 5v微控制器與3.3v微控制器串列埠不能通訊,是設定錯誤造成的,解決方法如下 1 首先51微控制器的可用記憶體只有00h 7fh,堆疊指標設定在60h,則堆疊的大小就是60h 7fh。這算是有規定大小的。2 堆疊主要是為子程式呼叫和中斷操作而設立的,因此對應有兩項功能 保護斷點和保護...