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

請教有關 URAT 程式碼的問題...

答題得分者是:foreman
loveforme
一般會員


發表:22
回覆:39
積分:22
註冊:2009-03-24

發送簡訊給我
#1 引用回覆 回覆 發表時間:2009-03-27 19:42:19 IP:122.121.xxx.xxx 訂閱
請教各位大大一下...
SBUF 該給什麼值...在超級終端機才會換行呢??

我有試過includ "stdio.h"...但是我每次輸入printf() 函式的時候都會無法顯示...
以下是我的程式碼

#include "reg51.h"
#include "stdio.h

void UART(int BPS)
{
TMOD = 0x22;
SCON = 0x50;
TH0 = 256 - (28800 / BPS);
TR0 = 1;
}
void YN(void) interrupt 0
{
UART(9600);

TABLE[0] = CHAR_MAP_G[Count_10000];
TABLE[1] = CHAR_MAP_G[Count_1000];
TABLE[2] = CHAR_MAP_G[Count_100];
TABLE[3] = CHAR_MAP_G[Count_10];
TABLE[4] = CHAR_MAP_G[Count_1];
for(i = 0; i < 4; i )
{
SBUF = TABLE[i];
while(TI == 0);
TI = 0;
}
printf(" \n");
}
裡面的變數宣告定義過多,我省略掉..
刪除printf的話,TABLE陣列的值都可以如期出現(但是都無法換行...)
而有加上printf的函式後只會出現一次數值,之後的中斷都會無法顯示...
希望知道的大大們幫解惑一下~
foreman
高階會員


發表:3
回覆:124
積分:190
註冊:2004-09-10

發送簡訊給我
#2 引用回覆 回覆 發表時間:2009-03-28 12:55:54 IP:125.233.xxx.xxx 未訂閱
大大:
要使用printf(),請參考底下
http://www.keil.com/download/docs/200.asp

vans007
一般會員


發表:9
回覆:11
積分:9
註冊:2008-12-28

發送簡訊給我
#3 引用回覆 回覆 發表時間:2009-03-28 22:47:51 IP:61.231.xxx.xxx 訂閱
printf(" \r\n"); 就可以了
系統時間:2024-05-08 5:14:08
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!