當前位置:首頁 » 編程軟體 » 串口通訊編程

串口通訊編程

發布時間: 2022-06-26 03:03:56

編程實現51單片機與PC的串口通信,要求波特率設置為9600,循環發送字元串「abc

#include "reg51.h"

void initUart(void)
{
TMOD|=0x20;
SCON=0x50;
TH1=0xfd;
TL1=0xfd;
TR1=1;
}

void main(void)
{
initUart();
EA=1;
while(1)
{
send_byte('abc');

}
}

⑵ 串口通信編程c語言入門

#include<conio.h>

#include<stdio.h>

#include<bios.h>

#define true 1

main( )

{

char ch;int i;

char a[50];

clrscr();

for(i=0;i<50;i++)

{

a[i]='a'+i;

}

i=0;

outportb(0x3fb,0x80);

outportb(0x3f8,0);

outportb(0x3f9,0x06);

outportb(0x3fb,0x03);

outportb(0x3fc,0x03);

outportb(0x3f8,a[i]);

while (true)

{

ch=inportb(0x3fd);

if(ch&0x01)

{

ch=inportb(0x3f8);

if(ch=='\r')

{printf("jikejlm");

outportb(0x3f8,a[i+1]);i++;

}

else

{ putch(ch);putch('\n');}

}

if(bioskey(1))

{

ch=bioskey(0)&0x0ff;

if(ch=='\r')

{

outportb(0x3f8,ch);

putch(ch);

}

}

}

}

⑶ 51單片機進行rs232串口通信編程程序如下: 誰能幫忙解釋一下它是怎麼實現串口通信的謝謝!

這個問題你都沒搞清楚啊!這是可編程邏輯語言,將RS232功能編輯在一個器件內,然和該器件通過這個部分進行RS232通訊。至於如何通訊你是需要時序分析還是功能?我看你就也不清楚啊!

⑷ 關於串口通信編程的疑問

上位機以PC,下位機以單片機為例,兩者在進行通信時一般用串口通信,而數據通過串口時是以16進制來傳送的,為了發送、接收處理方便,建議通過函數做一下處理,使發送的數據為16進制,這樣,通過串口接收到的數據也是相同的16進制,方便查看。
如果想讓下位機做某事,則需要上位機給下位機發送指令,也就是數據幀,這個要根據協議來寫,比如移動GSM、聯通GSM協議,里邊都有數據幀的格式以及具體定義。

補充:這個協議不是說串口通信協議,那個協議是根據用途或要求來採用的,比如說,要用單片機做一個聯通GSM協議的數據通信,那麼數據幀的格式必須是X開頭,X結尾的,有固定的格式。再比如移動的,數據幀格式有7E開頭7E結尾的,也有!開頭!結尾的,如果你的數據幀格式不正確,將無法識別而不能做出相關的動作。
你如果只是自己弄著玩,數據幀可以自己定義,但如果要做項目,最好根據要求協議來編寫。

⑸ 串口通訊編程有什麼用

串口通信(Serial Communication), 是指外設和計算機間,通過數據信號線 、地線、控制線等,按位進行傳輸數據的一種通訊方式。這種通信方式使用的數據線少,在遠距離通信中可以節約通信成本,但其傳輸速度比並行傳輸低。

⑹ 急!!!單片機C語言實現串口通信編程

如果在字元數字發送框發0X00蜂鈴器就會叫,如果發0xff蜂鈴器就停叫。

#include <REG52.H>
#include <stdio.h>
sbit BEEP = P1^4;
unsigned char b;

void main (void) {
SCON = 0x50; //REN=1允許串列接受狀態,串口工作模式1
TMOD|= 0x20; //定時器工作方式2
PCON|= 0x80;
//TH1 = 0xFD; //baud*2 /* reload value 19200、數據位8、停止位1。效驗位無 (11.0592)
TH1 = 0xF3; // //baud*2 /* 波特率4800、數據位8、停止位1。效驗位無 (12M)
TL1 = 0xF3;
TR1 = 1;
ES = 1; //開串口中斷
EA = 1; // 開總中斷
BEEP=1;
// IE = 0x0;

while(1)
{

if (RI) //RI接受中斷標志
{ RI=0; //清除RI接受中斷標志
b=SBUF; //SUBF接受/發送緩沖器
}
BEEP=b;

}

}

這個是個發送程序,接收程序類似,不懂可繼續追問,一般人都是在別人程序基礎上改改稱為自己的,希望樓主能夠自己研究出自己的一套編程理論

⑺ c語言怎麼實現串口通信

編程原理
程序1為查詢通信方式介面程序,為一典型的數據採集常式。其中bioscom()函數初始化COM1(此函數實際調用BIOS
INT
14H中斷0號功能)。這樣在程序中就避免了具體設置波特率因子等繁瑣工作,只需直接訪問發送/接收寄存器(3F8H)和線路狀態寄存

⑻ 怎樣編寫單片機的串口通信的程序,一般的步驟是怎麼樣的

確定T1的工作方式(編程TMOD寄存器);
計算T1的初值,裝載TH1、TL1;
啟動T1(編程TCON中的TR1位);
確定串列口控制(編程SCON寄存器);
串列口在中斷方式工作時,要進行中斷設置(編程IE、IP寄存器)。

⑼ 匯編語言編程 串口通信 程序

ORG 0000H
LJMP MAIN
ORG 0030H
MAIN:
MOV TMOD,#20H
MOV TH0,#0F4H
MOV TL0,#0F4H
SETB TR1
MOV SCON,#50H
LOOP:
JNB RI,$
CLR RI
MOV A,SBUF
CJNE A,#'A',LOOP1
MOV A,#'O'
LCALL SEND
MOV A,#'K'
LCALL SEND
SJMP LOOP
LOOP1:
CJNE A,#'B',LOOP2
MOV A,#'E'
LCALL SEND
MOV A,#'R'
LCALL SEND
LCALL SEND
SJMP LOOP
LOOP2:
MOV A,#'N'
LCALL SEND
MOV A,#'O'
LCALL SEND
LJMP LOOP
SEND:
MOV SBUF,A
JNB TI,$
CLR TI
RET
END

熱點內容
壓縮性胸悶 發布:2024-05-08 08:18:18 瀏覽:527
電腦嗶哩嗶哩pc端的緩存 發布:2024-05-08 08:17:05 瀏覽:170
王者伺服器崩潰估計什麼時候好 發布:2024-05-08 08:16:51 瀏覽:575
qj壓縮機 發布:2024-05-08 08:10:13 瀏覽:842
dhcp伺服器可以分配什麼參數 發布:2024-05-08 08:07:36 瀏覽:959
跨象限編程 發布:2024-05-08 07:58:37 瀏覽:62
java多對一 發布:2024-05-08 07:58:33 瀏覽:642
蘋果怎麼創建文件夾 發布:2024-05-08 07:53:34 瀏覽:918
html連接sql資料庫 發布:2024-05-08 07:53:28 瀏覽:737
網易雲盤無法上傳 發布:2024-05-08 07:48:42 瀏覽:598