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