全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:6534
推到 Plurk!
推到 Facebook!

[問題]鮑率計算

答題得分者是:DavidLo
btiy
一般會員


發表:15
回覆:31
積分:9
註冊:2005-08-18

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-12-07 09:15:06 IP:61.218.xxx.xxx 未訂閱
硬體: 石英晶體:24MHz 單晶片:89s52 鮑率計算公式: TH1=256-2SMOD x Fose / (384 x 鮑率) 我的程式端: SCON = 0x52; //設定串列傳輸為MODE1、致能接收及TI=1 TMOD = 0x20; //設定TIMER1為MODE2 PCON = 0x80; //SMOD=1 TH1 = 256-(125000/BPS); //設計時器決定串列傳輸鮑率 TR1 = 1; //開始計時 當BPS=9600時 傳輸速度是正確的 若BPS=19200時 我接收端使用19200接收時就錯誤 在硬體不改情況下,只改軟體 請問我應該如何做才可以達到19200的速率 或者是更高的
DavidLo
高階會員


發表:17
回覆:225
積分:168
註冊:2004-07-21

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-12-07 11:02:49 IP:61.228.xxx.xxx 未訂閱
插花! 我沒用試過,Manual看是可以. 一般Baudrate是用Timer1去產生,試試改用Timer2(16bit) 算了一下,值是39.0625,接近除的盡.

版主


發表:261
回覆:2302
積分:1667
註冊:2005-01-04

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-12-07 16:10:30 IP:211.20.xxx.xxx 未訂閱
引言: 插花! 我沒用試過,Manual看是可以. 一般Baudrate是用Timer1去產生,試試改用Timer2(16bit) 算了一下,值是39.0625,接近除的盡.
建議OSC換(ex 11.0592MHz) 這樣還是會有錯誤率, 只是比較低.看你接收端的錯誤接受程度囉.
------
-------------------------------------------------------------------------
走是為了到另一境界,停是為了欣賞人生;未走過千山萬水,怎知生命的虛實與輕重!?
btiy
一般會員


發表:15
回覆:31
積分:9
註冊:2005-08-18

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-12-07 16:42:40 IP:61.218.xxx.xxx 未訂閱
引言: 插花! 我沒用試過,Manual看是可以. 一般Baudrate是用Timer1去產生,試試改用Timer2(16bit) 算了一下,值是39.0625,接近除的盡.
引言: 不好意思,請問若用Timer2設定上是如何 SCON = 0x52; T2MOD = 0xB4; PCON = 0x80; TH2 = 256-(125000/BPS); TR2 = 1; 我是這樣子寫的不知道對不對 還有您是怎算出39.0625
btiy
一般會員


發表:15
回覆:31
積分:9
註冊:2005-08-18

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-12-07 16:56:12 IP:61.218.xxx.xxx 未訂閱
    建議OSC換(ex 11.0592MHz) 這樣還是會有錯誤率, 只是比較低.看你接收端的錯誤接受程度囉.     
引言: 現在卡在它不能換 所以就只能用24MHz 況且他若可以用24MHz的那它就可以調出19200這個速率 只不過是方法要怎樣做
DavidLo
高階會員


發表:17
回覆:225
積分:168
註冊:2004-07-21

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-12-07 21:21:29 IP:218.169.xxx.xxx 未訂閱
大家研究!!! 參考CPU資料 http://www.atmel.com/dyn/resources/prod_documents/doc1919.pdf 如圖11-1 T2CON請看Page8,Table5-2 將T2CON中各bits RCLK=1,TCLK=1,C/T2=0,TR2=1,其餘為0 Buad公式如下 Timer2是16bits的.(TH2+TL2)=(RCAP2l+RCAP2H)=65536-39 T2CON=0x34 PC端RS232收到StartBit後,開始偵測DataBits(取樣中央點),只要9bit誤差累積不要超過半個bit即可. 發表人 - DavidLo 於 2005/12/07 21:32:51
dsplab
中階會員


發表:4
回覆:42
積分:64
註冊:2004-11-11

發送簡訊給我
#7 引用回覆 回覆 發表時間:2005-12-11 13:04:18 IP:61.219.xxx.xxx 未訂閱
根據Intel官方宣稱,只要計算出來的鮑率誤差小於2%即可, Absolute(計算值-理論值)*100%/理論值 < 2% DSP研究室 http://www.dsplab.idv.tw 發表人 - dsplab 於 2005/12/11 18:15:47
系統時間:2024-07-06 10:51:44
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!