Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

搜索
1 2 3 4
查看: 3353|回復: 5
打印 上一主題 下一主題

[問題求助] CPLD UART問題....thx

[複製鏈接]
跳轉到指定樓層
1#
發表於 2008-3-4 15:34:41 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
小弟為初學,目前使用CPLD做個UART收發,使用PC端TELIX軟體由Keyboard送出按鍵ASCII碼,經由CPLD收到後回傳至PC端,但目前單鍵送出都正常,但同一鍵按著不放,卻發生CPLD送出時掉資料了,(如PC端送出20筆資料,CPLD收到20筆,送出時卻只送15筆,PC端收到也只有15筆),小弟將程式碼附上,懇請各位可以幫我看看嗎?提供些意見,或者範例碼等等....感激!...thx# M; G7 T( l% ?3 n& p
0 t9 ?& ^: y2 t

本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有帳號?申請會員

x
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂 踩 分享分享
2#
發表於 2008-3-5 16:50:28 | 只看該作者
我覺得好像是接收端或發射端產生"buffer overflow",應為你的RDR只有一個,而且只有TSR,沒有THR(transmitter holding register),應該可以在發射端多加一個或2個"transmitter holding register".! @: r, A2 J: q0 ~  w

本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有帳號?申請會員

x
3#
 樓主| 發表於 2008-3-5 16:53:16 | 只看該作者

如有看到程式的前輩們...請幫忙

如有看到小弟放的程式前輩們,可否給些意見呢?如需加FIFO之類的,或是收與發機制不夠完善導致此問題,小弟我有自行加入QuartusII FIFO模組,但此問題仍然存在,所以先不考慮是否buffer不夠,目前排除方向為,收到資料時,與發送資料時,之間的機制不夠完善,懇請大家給些意見或範例等等,感激!謝謝..
4#
 樓主| 發表於 2008-3-5 17:04:07 | 只看該作者

回復 2# 的帖子

您好!請問您,如果我8bit資料一進來發射端時,該如何把它hold呢?是否有個機制,比如hold等到上一筆資料從發射端送出時,在從THR丟至TSR,再送出下一筆資料,可否請您敘述一下,感謝您...
5#
發表於 2008-3-5 20:31:51 | 只看該作者
好像可以利用txd_doneH 來產生一個 loadTSR 把資料從THR--->TSR 並在下一個clock STATE 產生一個 pulse 通知CPU 或 接收端把下一筆DATA 再餵入THR.每次餵DATA,除了看txd_startH(代表有沒有資料待傳),還要等pulse 通知.
6#
發表於 2008-3-6 11:28:46 | 只看該作者
您好0 a3 M: N/ U- L) a- k" x
1.% K  e% y! m' S: v; r
關於傳送資料覆蓋問題,可以研究一下8250或16450的data sheet裡! K5 W6 h5 V5 K0 K% v: D2 P" n' s
tx部分
* e9 u$ K6 t! D' i+ }  m  ^7 u6 K
  Z9 @8 }) |/ e& \/ F2.
3 J; r- c  E: g& R$ |; d如果想搭配FIFO,請參考16550 data sheet,裡面寫的很清楚6 n- V5 n9 D$ t4 R; e5 ^$ [/ s

5 N- D* w& l8 N' S* y! d( y要設計uart功能,16450,16550是很好的參考資料
3 i' o! C  B, ]; y- _在設計時有些設計上技巧或沒想到的問題,都可從data sheet
6 \5 m; e% g8 a+ ]# v8 \9 `4 w$ A& X" w上找到很好的啟發
" n: N0 w& o! G  Y5 {! y, {6 H0 O* t; ?' E
建議好好的k一下吧
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

首頁|手機版|Chip123 科技應用創新平台 |新契機國際商機整合股份有限公司

GMT+8, 2024-4-29 12:00 PM , Processed in 0.119006 second(s), 18 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表