:::


Browsing this Thread:   1 Anonymous Users






PIC32如何讓UART的速度完全正確
#1
高級會員
高級會員


查看用戶資訊
我使用的是PIC32MX695F512L,Compiler是XC32 v1.31。板子主要功能是USB與RS232(UART)功能。

原來板子使用的Crystal是8MHz,根據官網上所述,UART上速度與標準速度總會有一些偏差,我們在實際運用上發現與PC的RS232連線也確實有些差異(雖然差異可以使用軟體技巧補足),但龜毛的老闆卻要我們解決這類的誤差。

網路爬文的結果發現晶振選對了可以讓誤差降為零,於是買了3.6864MHz的晶振想換掉原板子上的8MHz。後來發現問題來了
1. PLL的Input在除頻後好像只能在4MHz~5MHz之間,3.6864MHz怎麼除(整數)好像也沒辦法進去那範圍。
2. USB除頻(整數)後也沒辦法到4MHz(UFin只能在4MHz)。

請各位先進,幫我看看有沒有什麼辦法可以解決(看是要換晶振,還是頻率要怎麼設),謝謝!

發表於: 2019/8/26 16:54
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: PIC32如何讓UART的速度完全正確
#2
管理員
管理員


查看用戶資訊
魚與熊掌...

在使用USB的狀態下,
必須提供4MHz給USB PLL使用,
才能有穩定的通訊品質,
但卻無法提供0誤差的UART Baud Rate...

目前看起來無解....

發表於: 2019/8/27 10:44
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: PIC32如何讓UART的速度完全正確
#3
資深會員
資深會員


查看用戶資訊
本來就不準的東西要如何準?

外行的老闆,完全搞不清楚狀況

將你們的baud rate『定』為 10000

從9600 改為 10000,這樣就能準了~~

發表於: 2019/8/27 21:12
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: PIC32如何讓UART的速度完全正確
#4
高級會員
高級會員


查看用戶資訊
感謝兩位先進的意見。我已將意見轉告給我老闆。
Eigen倒是給我特別的見解,有空來測一下好了,呵呵...

發表於: 2019/8/28 13:21
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: PIC32如何讓UART的速度完全正確
#5
資深會員
資深會員


查看用戶資訊
也可以使用 7.32 MHz 的石英震盪器, 比較接近 8 MHz

發表於: 2019/8/29 13:02
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部







You can view topic.
You cannot start a new topic.
You cannot reply to posts.
You cannot edit your posts.
You cannot delete your posts.
You cannot add new polls.
You cannot vote in polls.
You cannot attach files to posts.
You cannot post without approval.
You cannot use topic type.
You cannot use HTML syntax.
You cannot use signature.
You cannot create PDF files.
You cannot get print page.

[進階搜尋]