❶ CC2530與普通51單片機串口通信怎樣實現
1、首先進行連線:
cc2530晶元TX,RX與51單片機的TX,RX交叉相連,然後共地。
2、分別下載接收程序:
用IAR
Embedded
Workbench給接收端CC2530晶元下載接收程序,用keil
uvision4給發送端51單片機下載接收程序。
3、用串口助手分別測試兩端:
都可以與電腦進行串口通訊,完成二者串口通信。
❷ pc機和單片機的串列通信怎樣實現!
pc機是上位機,單片機是下位機,首先確定單片機同pc連接號232
介面的或者usb轉232 視你的單片機類型而定下載個軟體串口調試助手或者windows自帶的超級終端調試,寫好的程序將字元串發送給pc機或者用軟體將字元串寫如單片機通過數碼管或者液晶顯示,其中牽涉通訊協議和串口設置,程序生活如歌如上已經說了,可以借鑒下。是在沒有明了,找些串口調試的資料在單片機開發版裡面,許多都帶了!
❸ 電腦上RS232跟單片機怎麼連接
電腦通過RS232介面與單片機連接的常用實現如下圖(單片機以51系列為例):
3 RS-232
規定的邏輯電平與(51)單片機的邏輯電平不同(如:RS-232的邏輯「1」是以-3~-15V來表示的,而51單片機的邏輯「1」是以+5V來表示的)。因此,單片機系統與電腦的RS-232介面通信,必須把單片機的信號電平(TTL電平)轉換成計算機的RS-232C電平(或者反過來把計算機的RS-232C電平轉換成單片機的TTL電平),才能成功通訊。本方案使用電平轉換晶元MAX232晶元來實現電平轉換(連接圖中間的晶元)。
4(51)單片機使用RXD和TXD引腳執行串口數據輸入/輸出。
5 RS-232的RXD連接單片機TXD,TXD連接單片機RXD(中間用MAX232晶元轉換電平)。
通過上述步驟即可實現電腦通過RS232介面與單片機(串口)連接並通訊(未考慮軟體設置部分)。
❹ 51單片機與PC機之間的硬體如何串口連接
單片機和微機通信的電氣標准要一致,微機串口一般是RS232電氣標准,所以要加電平轉換晶元,大多用MAX232,一般單片機實驗板上都提供這樣的標准串口。
要分別編寫上位機和下位機軟體程序,單片機程序參照常式、教科書進行編寫;上位機微機可採用VB,組態軟體,Labview等軟體編寫,一般若是簡單的通信,上位機程序編寫很簡單,例如VB中學會使用mscomm控制項,有VB最基礎知識的一天就能學會。
大可以沒有單片機,沒有MAX232,沒有串列介面這些硬體就可以實現學習並掌握單片機與微機之間的串口通信。proteus可以模擬單片機,也是主流軟體。
如今的筆記本電腦幾乎都沒有保留串口,而用USB介面取而代之,不過沒關系,有了虛擬串口和串口調試助手,這些都解決了。你可以搜索一下虛擬串口,真的很不錯的。
❺ 單片機串口通訊有哪幾種方式
89系列單片機的串列通信有4種工作方式:
1、方式0是同步移位寄存器方式,幀格式8位,波特率固定為fosc/12。
2、方式1是8位非同步通信方式,幀格式10位,波特率可變:T溢出率/n(n= :32或16)。
3、方式2是9位非同步通信方式,幀格式11位,波特率固定: fosc/n(n=32 或16)。
4、方式3是9位非同步通信方式,幀格式11位,波特率可變:T溢出率(m=32或16)。
方式1、2、3的區別主要表現在幀格式及波特率兩個方面。
單片機應用范圍:
單片機滲透到我們生活的各個領域。導彈的導航裝置,飛機上各種儀表的控制,計算機的網路通訊與數據傳輸,工業自動化過程的實時控制和數據處理,廣泛使用的各種智能IC卡,民用豪華轎車的安全保障系統,錄像機、攝像機、全自動洗衣機的控制等等。
還有自動控制領域的機器人、智能儀表、醫療器械以及各種智能機械。因此,單片機的學習、開發與應用將造就一批計算機應用與智能化控制的科學家、工程師。
❻ 如何進行單片機與PC機的串口數據讀取通信
首先硬體要有MAX232晶元做電平轉換 或者直接用pl2303做usb轉串口.
軟體要有一個串口調試工具.
至於程序就是 (1):設置串口相關寄存器 注意波特率設置
(2):把數據放在sbuf裡面
(3):檢查是否發送完畢沒完等待 發完了就繼續放
各種單片機設置方法不一樣就給你一個51 的程序你參考一下:
//wx原創 串口調試程序 向pc發送數據 用於調試觀察數據
#include<reg52.h>
#include<hdy.h>
sbit k1=p10;
void ckfszf(char zf);
void ckfszfc(char fsgs,char zfc[]);
bit cksnbzw=0;
char fsb[]={"abcdef"};
main()
{
PCON=0x80; //串口設置
TMOD=0x20; // 以T1定時器為波特發生器 波特率:19200
TH1=0xfD;
TL1=0xfD;
TR1=1;
SCON=0X50; //串口設置模式一完畢
while(1)
{
TI=1;
ckfszfc(6,fsb);
ckfszf(' ');
ckfszfc(9,"1234567890");
ckfszf(' ');
ckfszf(' ');
ckfszf(' ');
ckfszfc(12,"AABBCCDDEEFFGG");
ckfszf(' ');
while(1);
}
}
//字元 串口發送函數 由串口向外發送一個字元
//參數1:要發送字元
//返回值:無
//備注: 本函數內部檢查上次發送是否結束
// 全局初始化要求:TI=1 保證第一次進入此函數之前TI=1
void ckfszf(char zf)
{
while(TI==0); //等待發送完畢
TI=0;
SBUF=zf;
}
//字元串 串口發送函數 由串口向外發送一個字元串
//參數1:要發送字元串個數 取值:0~255
//參數2:要發送字元串數組名 或字元串本身
//返回值:無
//備注: 本函數內部檢查上次發送是否結束
// 全局初始化要求:TI=1 保證第一次進入此函數之前TI=1
void ckfszfc(uchar fsgs,char zfc[])
{
uchar i;
cksnbzw=1;
for(i=0;i<fsgs;i++)
{
ckfszf(zfc[i]);
}
}
純手打 原創程序 給分!