• slider image 514
  • slider image 516
  • slider image 517
  • slider image 518
  • slider image 519
:::


Browsing this Thread:   2 Anonymous Users






Re: 18f458上的usrat接收暫存器是否有兩層?
#8
資深會員
資深會員


查看用戶資訊
正確宣告方式版主已解說。

那個資料結構是「環狀佇列」(circular queue), 或稱 ring FIFO
使用時還要有兩個指標指向頭尾。

環狀佇列的運作方式可 google 以上關鍵詞,即可找到詳細解說。

發表於: 2009/9/23 17:10
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 18f458上的usrat接收暫存器是否有兩層?
#7
版主
版主


查看用戶資訊
不是這樣宣告的。用組語要開 Buffer 可以用此方式:
udata_acs
RC_FIFO    RES      16 
在 Access Bank 開16 個Byte RAM 給 RC_FIFO用


詳細使用參考 MPASM 教育訓練教材。
http://www.microchip.com.tw/modules/w ... nglefile.php?cid=4&lid=32

發表於: 2009/9/23 16:07
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 18f458上的usrat接收暫存器是否有兩層?
#6
中級會員
中級會員


查看用戶資訊
參照:

tonys 寫道:
一般是由軟體再作一層 buffer, 所有由 UART Interupt 收到的資料都例即放到此 buffer, 再由主程式作進一步處理。 buffer 大小就看你的需要了。


請教TONYS大大
假設有16BYTE的資料 放入同一個BUFFER內從0XA0開始放, 當我要取用的時候該怎麼寫?程式設計上是否有可能從我想要的數值開始取出? 以及一般BUFFER設定大小是否就如下
ex:
RC_FIFO EQU 0XA0
RC_FFIO2 EQU 0XC0
那RC_FIFO 是否就有從0XA0~0XC0之間的大小????

發表於: 2009/9/22 17:57
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 18f458上的usrat接收暫存器是否有兩層?
#5
資深會員
資深會員


查看用戶資訊
一般是由軟體再作一層 buffer, 所有由 UART Interupt 收到的資料都例即放到此 buffer, 再由主程式作進一步處理。 buffer 大小就看你的需要了。

發表於: 2009/9/22 17:09
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 18f458上的usrat接收暫存器是否有兩層?
#4
中級會員
中級會員


查看用戶資訊
參照:

Eigen 寫道:
Figure 18-5 畫得很清楚了

RX 最多能收下兩筆,並且 set RCIF,如果超過,則會發生 oerr

這個時候,就需要 cren 來 clear OERR

至於你的問題,有幾筆資料在buffer 內?

基本上,不用你管,你只要知道有沒有資料需要讀出即可

至於是一筆還是兩筆,還是一筆讀完又來一筆,基本上不重要

只要檢查 RCIF ,就知道有沒有資料需要讀取,有那就

MOVFW RCREG ,並做處理。

程式運行會一直做這樣的檢查,所以只要主程序的不要花太多的時間,每一筆資料都能被收下。


請問那如果一次傳送超過2筆以上的資料 又不能控制它傳送幾筆 這種情況怎麼辦??

發表於: 2009/9/22 16:38
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 18f458上的usrat接收暫存器是否有兩層?
#3
版主
版主


查看用戶資訊
是的,只要 RCIF 為 1,就代表有資料還在 RCREG 裡,這時只要將 RCREG 的值讀走。如果還有一筆資料能在 RCREG 裡,RCIF 還是會被設為 1 的,直到你完全把 RCREG 的資料讀取完畢後RCIF才會為 0。

發表於: 2008/3/7 11:46
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 18f458上的usrat接收暫存器是否有兩層?
#2
資深會員
資深會員


查看用戶資訊
Figure 18-5 畫得很清楚了

RX 最多能收下兩筆,並且 set RCIF,如果超過,則會發生 oerr

這個時候,就需要 cren 來 clear OERR

至於你的問題,有幾筆資料在buffer 內?

基本上,不用你管,你只要知道有沒有資料需要讀出即可

至於是一筆還是兩筆,還是一筆讀完又來一筆,基本上不重要

只要檢查 RCIF ,就知道有沒有資料需要讀取,有那就

MOVFW RCREG ,並做處理。

程式運行會一直做這樣的檢查,所以只要主程序的不要花太多的時間,每一筆資料都能被收下。

發表於: 2008/3/7 8:54
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


18f458上的usrat接收暫存器是否有兩層?
#1
資深會員
資深會員


查看用戶資訊
想請問一下
看18f458上的datasheet,其中USART的RCREG接收暫存器的示意圖
似乎畫有兩層,其中還寫一個fifo
但我在說明文字中完全沒有看到相關敍述
不知道倒底怎麼處理??

我用C18寫了
temp=RCREG;
temp=RCREG;
兩次,在PIR1上的RCIF旗標才會變0

所以我想這個暫存器有兩層應該是確定的
但不知道如何才知道是目前RCREG收到幾筆資料呢??
是有一筆還是兩筆在BUFFER內...??

可否只收最近的一個呢?

發表於: 2008/3/6 19:51
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部







You can view 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.

[進階搜尋]


:::

Microchip連結

https://www.facebook.com/microchiptechnologytaiwan/
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=13
https://mu.microchip.com/page/tmu
http://elearning.microchip.com.tw/modules/tad_link/index.php?cate_sn=1
https://page.microchip.com/APAC-PrefCenters-TW.html
http://www.microchip.com/
http://www.microchip.com/treelink
http://www.microchipdirect.com/
http://www.microchip.com.cn/newcommunity/index.php?m=Video&a=index&id=103
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=2
http://www.microchip.com.tw/Data_CD/eLearning/index.html
http://www.microchip.com.tw/RTC/RTC_DVD/
https://www.microchip.com/development-tools/
https://www.youtube.com/user/MicrochipTechnology
[ more... ]

教育訓練中心

!開發工具購買
辦法說明 [業界客戶] [教育單位]
----------------------------------
!校園樣品申請
辦法說明 [教師資格] [學生資格]
----------------------------------