線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1289
推到 Plurk!
推到 Facebook!

電腦傳值經RS232給 AT89C51

答題得分者是:阿信
7722
一般會員


發表:1
回覆:0
積分:0
註冊:2009-08-25

發送簡訊給我
#1 引用回覆 回覆 發表時間:2009-08-25 15:05:52 IP:203.79.xxx.xxx 訂閱
#include  <reg52.h>
int buf[16];
int flag;
int endflag;
char i=0;
void init_232();
void receive();
void send();
main()
{
init_232();
while(1)
{
receive();
send();
}
}
void init_232()
{
TMOD=0x20;
TH1=0xff;
SCON=0x50;
TR1=1;
}
void receive()
{
while(RI==1)
{
RI=0;
buf[i]=SBUF;
if (buf[i]==0x0a )
{
i=0;
endflag==1
TI=1;
}
i ;
}
}
void send()
{
while(endflag==1)
{
if (TI==1)
{
TI=0;
SBUF=buf[i];
if(buf[i]==0x0a)
{
endflag=0;
i=0;
}
i ;
}
}
}

小弟是剛學單晶片的新手
之前是用VB結果突然要使用C
所以K了一下單晶片的書一開始的回傳 "HELLO"測試後沒問題
之後不斷的改改寫寫不知道為什麼51回傳電腦是亂碼
因為需要我是用SDCC編譯的寫到最後編譯一直出現格式錯誤
所以不知道改了多少次了
我電腦要傳送 AA BB CC 4D .......
51把值存到陣列也回傳 AA BB CC 4D .

請各位前輩指點迷津
或給點提示
編輯記錄
7722 重新編輯於 2009-08-25 15:17:26, 註解 無‧
阿信
版主


發表:111
回覆:983
積分:813
註冊:2005-03-10

發送簡訊給我
#2 引用回覆 回覆 發表時間:2009-08-27 09:34:41 IP:114.32.xxx.xxx 訂閱
你可能要確認一下
1.使用的振盪器頻率應為11.0592MHz
2.通訊協定,鮑率、位元數、同位元
系統時間:2024-05-07 8:11:58
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!