2007年7月30日星期一

Baudrate set in S3C2443

S3C2442 的UART Baurdate可設定的更細微,提供兩個register :

  1. UBDIV : 整數部份
  2. UDIVSLOT : 小數部份
設定的計算為:
整數 + 小數 = SRCCLK/ (baudratex16) - 1
以115200, SRCCLK=40MHz為例
整數 + 小數 = 40000000/(115200 x 16) - 1 = 20.7
所以
整數 = 20
小數 = 0.7
因此,UBRDIV = 20

小數部份與UDIVSLOT的關係是
小數 = UDIVSLOT 中 bit是1的數量 / 16
所以
0.7 = 1's number in UDIVSLOT / 16
1's number in UDIVSOLT = 11
UDIVSLOT有很多種組合,只要讓1的個數是11即可,Samsung建議,個數為11時,UDIVSOLT用 0xDDDD。

沒有留言: