我的構想是將從BCB讀取來的字串
在接收端的副程式用陣列將SBUF裡的值一一放入陣列中
之後在傳送端將陣列裡的值一一讀取出來
可是當我在BCB端輸入如"1234567"等字串傳給8051時
結果回傳給BCB是錯誤的(不是原本的1234567...)
請高手幫我看一下我的程式碼(感謝~)
/*----------------------*//* 傳送資料 */
tx_char(unsigned char c)
{
int i=0;
while(!TI){}
TI=0;
for(i==0;i a[i]=c;
SBUF=a[i];
}
/*---------------------*//* 接收資料 */
rx_char()
{
int i=0;
while(!RI){}
RI=0;
for(i=0;i a[i]=SBUF;
return SBUF;
}
/*-----------------------*/
main()
{
char i;
init_rs232();
led_bl();
while(1)
{
i=rx_char();
tx_char(i);
}
}
PS : 還有更好的解決方法嗎?(我聽說有用中斷法...那麼我這個方法不好嗎...)
謝謝~感激不盡~
--------------------next---------------------
阅读(981) | 评论(0) | 转发(0) |