導航:首頁 > 操作系統 > 單片機發數組

單片機發數組

發布時間:2025-03-12 12:46:26

Ⅰ 組態王與單片機通信 怎麼才能一次發送多個字

嚴格點講,單片機每次只能發送一個位元組數據,但完全可以通過循環的方式連續發送多個位元組的數據,宏觀上就像是一次發送多個位元組了。發送數據時,最好採用查詢方式連續發送,如果還有其它任務需要同時完成,就得採用中斷方式,每次中斷發送一個位元組。不論什麼方式發送,可以定義一個數組,將要發送的數據放在數組里,根據需要定義數組元素的個數,發送時就可以循環發送這個數組就行了,表面上就像是一次發送多個數據了。

Ⅱ c51,單片機從串口接收字元串,放到一個數組裡面,然後在通過串口發出去。急!謝謝

#include<reg52.h>

#defineucharunsignedchar

#defineuintunsignedint

uchardatatable[10];//暫存數組,可以將10改為你需要的數值

/***********************************************

串列口初始化波特率9600,定時器1,工作方式2 *************************************************/

voidserial_init(void)

{

TMOD=0x20;//計時器1作為比特率發生器,方式2

TH1=0xfd;

TL1=0xfd;//裝入初值

TR1=1;//計時中斷允許

SM0=0;

SM1=1;//串列口工作於方式2

ES=1;//串列口中斷允許

REN=1;//接收允許

EA=1;// 總中斷允許

}

/***********************************************

串列口傳送數據

傳送顯示數組各字元給計算機

*************************************************/

voidsend(uchar*dis)

{

while(*dis!='')

{

SBUF=*dis;

dis++;

while(!TI);

TI=0; //軟體請發送中斷

}

}

voidmain()

{

serial_init();//初始化

while(SBUF!=0x0d);//計算機鍵盤按下回車鍵,則開始將接收到的數據回傳給計算機

send(table);

}

/***********************************************

串列中斷服務函數

單片機接收數據,存入table數組

*************************************************/

voidserial()interrupt4

{

inti;

ES=0; //關串口中斷

table[i++]=SBUF;//命令存到命令數組

RI=0;//軟體清除接收中斷

ES=1;//開串口中斷

}

已經通過proteus模擬如下

閱讀全文

與單片機發數組相關的資料

熱點內容
程序員放棄後會怎樣 瀏覽:160
河北模具編程 瀏覽:178
adb查找命令 瀏覽:309
安卓手機視頻文件夾怎麼打開 瀏覽:303
平板加密手機後怎麼關閉 瀏覽:557
流媒體伺服器應該注意什麼 瀏覽:528
d8命令編譯 瀏覽:942
壓縮包解壓需要多少空間 瀏覽:139
如何查找app屬性 瀏覽:380
android人臉識別技術 瀏覽:305
pc104編程 瀏覽:329
二維碼反編譯破解推廣 瀏覽:674
修改伺服器的mac地址 瀏覽:521
好玩的編程軟體 瀏覽:892
編程語言創始人有錢嗎 瀏覽:797
短視頻app怎麼獲客 瀏覽:8
查看雲伺服器的應用 瀏覽:427
javadump工具 瀏覽:558
程序員16g 瀏覽:421
程序員沒有辦法成為top怎麼辦 瀏覽:196