專利名稱:一種基于串口的船用雷達回波數據的采集方法
技術領域:
本發(fā)明涉及一種雷達回波數據的處理方法,尤其是涉及一種基于串口的船用雷達回波數據的采集方法。
背景技術:
船用雷達是現代船舶導航系統(tǒng)的必備設備之一,它的主要作用是船舶導航及探測、避開海上障礙物?,F代船用雷達正在往高分辨率、大顯示屏的方向發(fā)展,造成雷達回波數據量顯著提高,相應的提高了雷達回波數據傳輸速率,同時,雷達回波數據是持續(xù)不斷的數據流。雷達回波數據是整個雷達系統(tǒng)最重要的數據,所有的雷達算法及處理都是基于雷達回波數據進行的,因此可靠、高效地采集雷達回波數據顯得極其重要。船用雷達的工作流程雷達的天線單元產生雷達回波數據,雷達回波數據傳輸至 數據處理單元,數據處理單元對雷達回波數據進行采集與處理,最終將處理完的數據送往顯示單元進行雷達圖像顯示。傳統(tǒng)的船用雷達回波數據的采集方法使用一個直接存儲器存取(Direct MemoryAccess,即DMA)通道、一個內存緩沖區(qū)進行雷達回波數據的采集,通過DMA通道將雷達回波數據從串口傳輸至內存緩沖區(qū)內,但從DMA通道傳輸完一個內存緩沖區(qū)大小的數據產生DMA中斷到使能DMA進行下一次數據傳輸之間需要執(zhí)行中斷處理函數,一旦中斷處理函數的執(zhí)行時間過長,則串口中的雷達回波數據不能及時被傳輸到內存緩沖區(qū)內,會發(fā)生串口接收溢出,造成雷達回波數據的丟失。
發(fā)明內容
本發(fā)明所要解決的技術問題是提供一種基于串口的船用雷達回波數據的采集方法,它可防止串口接收溢出,從而有效地避免雷達回波數據的丟失。本發(fā)明解決上述技術問題所采用的技術方案為一種基于串口的船用雷達回波數據的采集方法,數據處理單元采集雷達天線單元產生的雷達回波數據,所述的數據處理單元包括串口、DMA控制器、內存及數據處理模塊,所述的串口包括接收FIFO (先入先出緩沖存儲器),雷達回波數據通過DMA控制器從接收FIFO傳輸至內存中,具體包括以下步驟SI.將串口配置為DMA接收模式,設置接收FIFO的閾值;S2.在內存中設置兩個容量相同的第一緩沖區(qū)和第二緩沖區(qū);S3.在DMA控制器中設置兩個DMA通道分別作為第一 DMA通道和第二 DMA通道,將第一 DMA通道的源地址和第二 DMA通道的源地址均設置為接收FIFO的地址,將第一 DMA通道的目的地址設置為第一緩沖區(qū)的首地址,將第二 DMA通道的目的地址設置為第二緩沖區(qū)的首地址,第一 DMA通道的目的地址的尋址方式和第二 DMA通道的目的地址的尋址方式均配置為遞增尋址方式;S4.使能串口,使能第一 DMA通道,啟動數據處理單元,數據處理單元開始采集雷達回波數據,接收FIFO開始接收雷達回波數據;
S5.第一 DMA通道開始將接收FIFO中的雷達回波數據傳輸至第一緩沖區(qū)中;S6.當雷達回波數據填滿第一緩沖區(qū)時,第二 DMA通道開始將接收FIFO中的雷達回波數據傳輸至第二緩沖區(qū)中,同時第一緩沖區(qū)中的雷達回波數據傳輸至數據處理模塊進行處理,雷達回波數據填滿第二緩沖區(qū)的時間長于數據處理模塊對第一緩沖區(qū)中的雷達回波數據進行處理的時間;S7.當雷達回波數據填滿第二緩沖區(qū)時,第一 DMA通道開始將接收FIFO中的雷達回波數據傳輸至第一緩沖區(qū)中,同時第二緩沖區(qū)中的雷達回波數據傳輸至數據處理模塊進行處理,雷達回波數據填滿第一緩沖區(qū)的時間長于數據處理模塊對第二緩沖區(qū)中的雷達回波數據進行處理的時間;S8.循環(huán)執(zhí)行S6飛7,直至數據處理單元停止采集雷達回波數據。步驟S5的具體步驟如下
S5-①.當接收FIFO中的雷達回波數據的容量達到所設定的閾值時,串口向DMA控制器發(fā)送DMA接收請求;S5-②.DMA控制器接收到串口的請求后,第一 DMA通道開始從接收FIFO中傳輸雷達回波數據到第一緩沖區(qū)中,當雷達回波數據未填滿第一緩沖區(qū)時,返回步驟S5-①繼續(xù)執(zhí)行;當雷達回波數據填滿第一緩沖區(qū)時,執(zhí)行步驟S6。步驟S6的具體步驟如下S6-①.當雷達回波數據填滿第一緩沖區(qū)時,使能第二 DMA通道,關閉第一 DMA通道;S6-②.當接收FIFO中的雷達回波數據的容量達到所設定的閾值時,串口向DMA控制器發(fā)送DMA接收請求; S6-③.DMA控制器接收到串口的請求后,第二 DMA通道開始從接收FIFO中傳輸雷達回波數據到第二緩沖區(qū)中,同時數據處理模塊開始對第一緩沖區(qū)中的雷達回波數據進行處理,當雷達回波數據未填滿第二緩沖區(qū)時,返回步驟S6-②繼續(xù)執(zhí)行;當雷達回波數據填滿第二緩沖區(qū)時,執(zhí)行步驟S7。步驟S7的具體步驟如下S7-①.當雷達回波數據填滿第二緩沖區(qū)時,使能第一 DMA通道,關閉第二 DMA通道;S7-②.當接收FIFO中的雷達回波數據的容量達到所設定的閾值時,串口向DMA控制器發(fā)送DMA接收請求;S7-③.DMA控制器接收到串口的請求后,第一 DMA通道開始從接收FIFO中傳輸雷達回波數據到第一緩沖區(qū)中,同時數據處理模塊開始對第二緩沖區(qū)中的雷達回波數據進行處理,當雷達回波數據未填滿第一緩沖區(qū)時,返回步驟S7-②繼續(xù)執(zhí)行;當雷達回波數據填滿第一緩沖區(qū)時,執(zhí)行步驟S8。與現有技術相比,本發(fā)明的優(yōu)點在于申請了兩個DMA通道進行數據傳輸,分配了兩個緩沖區(qū)用于緩存串口接收的雷達回波數據,兩個DMA通道可以交替?zhèn)鬏斃走_回波數據,由于對緩沖區(qū)中的雷達回波數據進行處理(包含了中斷處理函數的執(zhí)行)與DMA通道傳輸雷達回波數據是并行的,因此中斷處理函數執(zhí)行時間并不影響雷達回波數據的接收,從而有效地解決了串口數據溢出的問題,避免了雷達回波數據的丟失;雙通道DMA傳輸和雙緩沖機制的使用保證了雷達回波數據采集的正確性與穩(wěn)定性,使得高速、持續(xù)的雷達回波數據能夠及時、高效的傳輸到數據處理單元中進行處理。
圖I為本發(fā)明中數據處理單元的結構原理框圖;圖2為本發(fā)明基于串口的船用雷達回波數據的采集方法的流程示意圖。
具體實施例方式以下結合附圖實施例對本發(fā)明作進一步詳細描述。 實施例一如圖所示,一種基于串口的船用雷達回波數據的采集方法,數據處理單元采集雷達天線單元產生的雷達回波數據,所述的數據處理單元包括串口、DMA控制器、內存及數據處理模塊,所述的串口包括接收FIFO,雷達回波數據通過DMA控制器從接收FIFO傳輸至內存中,串口為TI公司的Mcbsp串口,串口的接收FIFO(先入先出緩沖存儲器)的容量為128 X 32bit,串口的時鐘頻率為48MHz,雷達上單元每秒鐘發(fā)送3000幀雷達回波數據,每幀雷達回波數據大小為1KB,因此雷達回波數據速率為3MB/s,具體包括以下步驟SI.將串口配置為DMA接收模式,設置接收FIFO的閾值,閾值設置為64X32bit ;S2.在內存中設置兩個容量相同的第一緩沖區(qū)和第二緩沖區(qū),第一緩沖區(qū)和第二緩沖區(qū)的容量設置為24KB ;S3.在DMA控制器中設置兩個DMA通道分別作為第一 DMA通道和第二 DMA通道,將第一 DMA通道的源地址和第二 DMA通道的源地址均設置為接收FIFO的地址,將第一 DMA通道的目的地址設置為第一緩沖區(qū)的首地址,將第二 DMA通道的目的地址設置為第二緩沖區(qū)的首地址,第一 DMA通道的目的地址的尋址方式和第二 DMA通道的目的地址的尋址方式均配置為遞增尋址方式;S4.使能串口,使能第一 DMA通道,啟動數據處理單元,數據處理單元開始采集雷達回波數據,接收FIFO開始接收雷達回波數據;S5.第一 DMA通道開始將接收FIFO中的雷達回波數據傳輸至第一緩沖區(qū)中;S6.當雷達回波數據填滿第一緩沖區(qū)時,第二 DMA通道開始將接收FIFO中的雷達
回波數據傳輸至第二緩沖區(qū)中,同時第一緩沖區(qū)中的雷達回波數據傳輸至數據處理模塊進
行處理,雷達回波數據填滿第二緩沖區(qū)的時間長于數據處理模塊對第一緩沖區(qū)中的雷達回
24 A7
波數據進行處理的時間,第二 DMA通道填滿第二緩沖區(qū)需要^7^ = 8/#,則數據處理模塊
3 A./" / s
需要在8ms內處理完第一緩沖區(qū)中的雷達回波數據;S7.當雷達回波數據填滿第二緩沖區(qū)時,第一 DMA通道開始將接收FIFO中的雷達
回波數據傳輸至第一緩沖區(qū)中,同時第二緩沖區(qū)中的雷達回波數據傳輸至數據處理模塊進
行處理,雷達回波數據填滿第一緩沖區(qū)的時間長于數據處理模塊對第二緩沖區(qū)中的雷達回
24 A7
波數據進行處理的時間,第一 DMA通道填滿第一緩沖區(qū)需要= ,則數據處理模塊
3 MHI s
需要在8ms內處理完第二緩沖區(qū)中的雷達回波數據;S8.循環(huán)執(zhí)行S6飛7,直至數據處理單元停止采集雷達回波數據。步驟S5的具體步驟如下
S5-①.當接收FIFO中的雷達回波數據的容量達到64X32bit時,串口向DMA控制器發(fā)送DMA接收請求; S5-②.DMA控制器接收到串口的請求后,第一 DMA通道開始從接收FIFO中傳輸雷達回波數據到第一緩沖區(qū)中,當雷達回波數據未填滿第一緩沖區(qū)時,返回步驟S5-①繼續(xù)執(zhí)行;當雷達回波數據填滿第一緩沖區(qū)時,執(zhí)行步驟S6。步驟S6的具體步驟如下S6-①.當雷達回波數據填滿第一緩沖區(qū)(即第一 DMA通道傳輸完24KB雷達回波數據至第一緩沖區(qū))時,使能第二 DMA通道,關閉第一 DMA通道;S6-②.當接收FIFO中的雷達回波數據的容量達到64X32bit時,串口向DMA控制器發(fā)送DMA接收請求;S6-③.DMA控制器接收到串口的請求后,第二 DMA通道開始從接收FIFO中傳輸雷 達回波數據到第二緩沖區(qū)中,同時數據處理模塊開始對第一緩沖區(qū)中的雷達回波數據進行處理,當雷達回波數據未填滿第二緩沖區(qū)時,返回步驟S6-②繼續(xù)執(zhí)行;當雷達回波數據填滿第二緩沖區(qū)時,執(zhí)行步驟S7。步驟S7的具體步驟如下S7-①.當雷達回波數據填滿第二緩沖區(qū)(即第二 DMA通道傳輸完24KB雷達回波數據至第二緩沖區(qū))時,使能第一 DMA通道,關閉第二 DMA通道;S7-②.當接收FIFO中的雷達回波數據的容量達到64X32bit時,串口向DMA控制器發(fā)送DMA接收請求;S7-③.DMA控制器接收到串口的請求后,第一 DMA通道開始從接收FIFO中傳輸雷達回波數據到第一緩沖區(qū)中,同時數據處理模塊開始對第二緩沖區(qū)中的雷達回波數據進行處理,當雷達回波數據未填滿第一緩沖區(qū)時,返回步驟S7-②繼續(xù)執(zhí)行;當雷達回波數據填滿第一緩沖區(qū)時,執(zhí)行步驟S8。實施例二 如圖所示,一種基于串口的船用雷達回波數據的采集方法,數據處理單元采集雷達天線單元產生的雷達回波數據,所述的數據處理單元包括串口、DMA控制器、內存及數據處理模塊,所述的串口包括接收FIF0,雷達回波數據通過DMA控制器從接收FIFO傳輸至內存中,串口為TI公司的Mcbsp串口,串口的接收FIFO(先入先出緩沖存儲器)的容量為128X32bit,串口的時鐘頻率為48MHz,雷達上單元每秒鐘發(fā)送3000幀雷達回波數據,每幀雷達回波數據大小為1KB,因此雷達回波數據速率為3MB/s,具體包括以下步驟SI.將串口配置為DMA接收模式,設置接收FIFO的閾值,閾值設置為32X32bit ;S2.在內存中設置兩個容量相同的第一緩沖區(qū)和第二緩沖區(qū),第一緩沖區(qū)和第二緩沖區(qū)的容量設置為24KB ;S3.在DMA控制器中設置兩個DMA通道分別作為第一 DMA通道和第二 DMA通道,將第一 DMA通道的源地址和第二 DMA通道的源地址均設置為接收FIFO的地址,將第一 DMA通道的目的地址設置為第一緩沖區(qū)的首地址,將第二 DMA通道的目的地址設置為第二緩沖區(qū)的首地址,第一 DMA通道的目的地址的尋址方式和第二 DMA通道的目的地址的尋址方式均配置為遞增尋址方式;S4.使能串口,使能第一 DMA通道,啟動數據處理單元,數據處理單元開始采集雷達回波數據,接收FIFO開始接收雷達回波數據;
S5.第一 DMA通道開始將接收FIFO中的雷達回波數據傳輸至第一緩沖區(qū)中;S6.當雷達回波數據填滿第一緩沖區(qū)時,第二 DMA通道開始將接收FIFO中的雷達回波數據傳輸至第二緩沖區(qū)中,同時第一緩沖區(qū)中的雷達回波數據傳輸至數據處理模塊進行處理,雷達回波數據填滿第二緩沖區(qū)的時間長于數據處理模塊對第一緩沖區(qū)中的雷達回
波數據進行處理的時間,第二 DMA通道填滿第二緩沖區(qū)需要= Sws,則數據處理模塊
需要在8ms內處理完第一緩沖區(qū)中的雷達回波數據;S7.當雷達回波數據填滿第二緩沖區(qū)時,第一 DMA通道開始將接收FIFO中的雷達回波數據傳輸至第一緩沖區(qū)中,同時第二緩沖區(qū)中的雷達回波數據傳輸至數據處理模塊進行處理,雷達回波數據填滿第一緩沖區(qū)的時間長于數據處理模塊對第二緩沖區(qū)中的雷達回
74KB
波數據進行處理的時間,第一 DMA通道填滿第一緩沖區(qū),則數據處理模塊
需要在8ms內處理完第二緩沖區(qū)中的雷達回波數據;S8.循環(huán)執(zhí)行S6飛7,直至數據處理單元停止采集雷達回波數據。步驟S5的具體步驟如下S5-①.當接收FIFO中的雷達回波數據的容量達到32 X 32bit時,串口向DMA控制器發(fā)送DMA接收請求; S5-②.DMA控制器接收到串口的請求后,第一 DMA通道開始從接收FIFO中傳輸雷達回波數據到第一緩沖區(qū)中,當雷達回波數據未填滿第一緩沖區(qū)時,返回步驟S5-①繼續(xù)執(zhí)行;當雷達回波數據填滿第一緩沖區(qū)時,執(zhí)行步驟S6。步驟S6的具體步驟如下S6-①.當雷達回波數據填滿第一緩沖區(qū)(即第一 DMA通道傳輸完24KB雷達回波數據至第一緩沖區(qū))時,使能第二 DMA通道,關閉第一 DMA通道;S6-②.當接收FIFO中的雷達回波數據的容量達到32 X 32bit時,串口向DMA控制器發(fā)送DMA接收請求;S6-③.DMA控制器接收到串口的請求后,第二 DMA通道開始從接收FIFO中傳輸雷達回波數據到第二緩沖區(qū)中,同時數據處理模塊開始對第一緩沖區(qū)中的雷達回波數據進行處理,當雷達回波數據未填滿第二緩沖區(qū)時,返回步驟S6-②繼續(xù)執(zhí)行;當雷達回波數據填滿第二緩沖區(qū)時,執(zhí)行步驟S7。步驟S7的具體步驟如下S7-①.當雷達回波數據填滿第二緩沖區(qū)(即第二 DMA通道傳輸完24KB雷達回波數據至第二緩沖區(qū))時,使能第一 DMA通道,關閉第二 DMA通道;S7-②.當接收FIFO中的雷達回波數據的容量達到32 X 32bit時,串口向DMA控制器發(fā)送DMA接收請求;S7-③.DMA控制器接收到串口的請求后,第一 DMA通道開始從接收FIFO中傳輸雷達回波數據到第一緩沖區(qū)中,同時數據處理模塊開始對第二緩沖區(qū)中的雷達回波數據進行處理,當雷達回波數據未填滿第一緩沖區(qū)時,返回步驟S7-②繼續(xù)執(zhí)行;當雷達回波數據填滿第一緩沖區(qū)時,執(zhí)行步驟S8。實施例三如圖所示,一種基于串口的船用雷達回波數據的采集方法,數據處理單元采集雷達天線單元產生的雷達回波數據,所述的數據處理單元包括串口、DMA控制器、內存及數據處理模塊,所述的串口包括接收FIFO,雷達回波數據通過DMA控制器從接收FIFO傳輸至內存中,串口為TI公司的Mcbsp串口,串口的接收FIFO(先入先出緩沖存儲器)的容量為128X32bit,串口的時鐘頻率為48MHz,雷達上單元每秒鐘發(fā)送3000幀雷達回波數據,每幀雷達回波數據大小為1KB,因此雷達回波數據速率為3MB/s,具體包括以下步驟SI.將串口配置為DMA接收模式,設置接收FIFO的閾值,閾值設置為96X32bit ;S2.在內存中設置兩個容量相同的第一緩沖區(qū)和第二緩沖區(qū),第一緩沖區(qū)和第二緩沖區(qū)的容量設置為24KB ;S3.在DMA控制器中設置兩個DMA通道分別作為第一 DMA通道和第二 DMA通道,將第一 DMA通道的源地址和第二 DMA通道的源地址均設置為接收FIFO的地址,將第一 DMA通道的目的地址設置為第一緩沖區(qū)的首地址,將第二 DMA通道的目的地址設置為第二緩沖區(qū)的首地址,第一 DMA通道的目的地址的尋址方式和第二 DMA通道的目的地址的尋址方式均配置為遞增尋址方式;
S4.使能串口,使能第一 DMA通道,啟動數據處理單元,數據處理單元開始采集雷達回波數據,接收FIFO開始接收雷達回波數據;S5.第一 DMA通道開始將接收FIFO中的雷達回波數據傳輸至第一緩沖區(qū)中;S6.當雷達回波數據填滿第一緩沖區(qū)時,第二 DMA通道開始將接收FIFO中的雷達回波數據傳輸至第二緩沖區(qū)中,同時第一緩沖區(qū)中的雷達回波數據傳輸至數據處理模塊進行處理,雷達回波數據填滿第二緩沖區(qū)的時間長于數據處理模塊對第一緩沖區(qū)中的雷達回
.)4KH
波數據進行處理的時間,第二 DMA通道填滿第二緩沖區(qū)需要^7— = 8/ 5,則數據處理模塊
3 MB / s
需要在8ms內處理完第一緩沖區(qū)中的雷達回波數據;S7.當雷達回波數據填滿第二緩沖區(qū)時,第一 DMA通道開始將接收FIFO中的雷達回波數據傳輸至第一緩沖區(qū)中,同時第二緩沖區(qū)中的雷達回波數據傳輸至數據處理模塊進行處理,雷達回波數據填滿第一緩沖區(qū)的時間長于數據處理模塊對第二緩沖區(qū)中的雷達回
波數據進行處理的時間,第一 DMA通道填滿第一緩沖區(qū)需要則數據處理模塊
3 / .S
需要在8ms內處理完第二緩沖區(qū)中的雷達回波數據;S8.循環(huán)執(zhí)行S6飛7,直至數據處理單元停止采集雷達回波數據。步驟S5的具體步驟如下S5-①.當接收FIFO中的雷達回波數據的容量達到96 X 32bit時,串口向DMA控制器發(fā)送DMA接收請求; S5-②.DMA控制器接收到串口的請求后,第一 DMA通道開始從接收FIFO中傳輸雷達回波數據到第一緩沖區(qū)中,當雷達回波數據未填滿第一緩沖區(qū)時,返回步驟S5-①繼續(xù)執(zhí)行;當雷達回波數據填滿第一緩沖區(qū)時,執(zhí)行步驟S6。步驟S6的具體步驟如下S6-①.當雷達回波數據填滿第一緩沖區(qū)(即第一 DMA通道傳輸完24KB雷達回波數據至第一緩沖區(qū))時,使能第二 DMA通道,關閉第一 DMA通道;S6-②.當接收FIFO中的雷達回波數據的容量達到96 X 32bit時,串口向DMA控制器發(fā)送DMA接收請求;S6-③.DMA控制器接收到串口的請求后,第二 DMA通道開始從接收FIFO中傳輸雷達回波數據到第二緩沖區(qū)中,同時數據處理模塊開始對第一緩沖區(qū)中的雷達回波數據進行處理,當雷達回波數據未填滿第二緩沖區(qū)時,返回步驟S6-②繼續(xù)執(zhí)行;當雷達回波數據填滿第二緩沖區(qū)時,執(zhí)行步驟S7。步驟S7的具體步驟如下S7-①.當雷達回波數據填滿第二緩沖區(qū)(即第二 DMA通道傳輸完24KB雷達回波數據至第二緩沖區(qū))時,使能第一 DMA通道,關閉第二 DMA通道;S7-②.當接收FIFO中的雷達回波數據的容量達到96 X 32bit時,串口向DMA控制器發(fā)送DMA接收請求;S7-③.DMA控制器接收到串口的請求后,第一 DMA通道開始從接收FIFO中傳輸雷 達回波數據到第一緩沖區(qū)中,同時數據處理模塊開始對第二緩沖區(qū)中的雷達回波數據進行處理,當雷達回波數據未填滿第一緩沖區(qū)時,返回步驟S7-②繼續(xù)執(zhí)行;當雷達回波數據填滿第一緩沖區(qū)時,執(zhí)行步驟S8。
權利要求
1.一種基于串口的船用雷達回波數據的采集方法,數據處理單元采集雷達天線單元產生的雷達回波數據,所述的數據處理單元包括串口、DMA控制器、內存及數據處理模塊,所述的串口包括接收FIFO,雷達回波數據通過DMA控制器從接收FIFO傳輸至內存中,其特征在于具體包括以下步驟 51.將串口配置為DMA接收模式,設置接收FIFO的閾值; 52.在內存中設置兩個容量相同的第一緩沖區(qū)和第二緩沖區(qū); 53.在DMA控制器中設置兩個DMA通道分別作為第一DMA通道和第二 DMA通道,將第一DMA通道的源地址和第二 DMA通道的源地址均設置為接收FIFO的地址,將第一 DMA通道的目的地址設置為第一緩沖區(qū)的首地址,將第二 DMA通道的目的地址設置為第二緩沖區(qū)的首地址,第一 DMA通道的目的地址的尋址方式和第二 DMA通道的目的地址的尋址方式均配置為遞增尋址方式; 54.使能串口,使能第一DMA通道,啟動數據處理單元,數據處理單元開始采集雷達回波數據,接收FIFO開始接收雷達回波數據; 55.第一DMA通道開始將接收FIFO中的雷達回波數據傳輸至第一緩沖區(qū)中; 56.當雷達回波數據填滿第一緩沖區(qū)時,第二DMA通道開始將接收FIFO中的雷達回波數據傳輸至第二緩沖區(qū)中,同時第一緩沖區(qū)中的雷達回波數據傳輸至數據處理模塊進行處理,雷達回波數據填滿第二緩沖區(qū)的時間長于數據處理模塊對第一緩沖區(qū)中的雷達回波數據進行處理的時間; 57.當雷達回波數據填滿第二緩沖區(qū)時,第一DMA通道開始將接收FIFO中的雷達回波數據傳輸至第一緩沖區(qū)中,同時第二緩沖區(qū)中的雷達回波數據傳輸至數據處理模塊進行處理,雷達回波數據填滿第一緩沖區(qū)的時間長于數據處理模塊對第二緩沖區(qū)中的雷達回波數據進行處理的時間; 58.循環(huán)執(zhí)行S6飛7,直至數據處理單元停止采集雷達回波數據。
2.根據權利要求I所述的一種基于串口的船用雷達回波數據的采集方法,其特征在于步驟S5的具體步驟如下 S5-①.當接收FIFO中的雷達回波數據的容量達到所設定的閾值時,串口向DMA控制器發(fā)送DMA接收請求; 55-②.DMA控制器接收到串口的請求后,第一DMA通道開始從接收FIFO中傳輸雷達回波數據到第一緩沖區(qū)中,當雷達回波數據未填滿第一緩沖區(qū)時,返回步驟S5-①繼續(xù)執(zhí)行;當雷達回波數據填滿第一緩沖區(qū)時,執(zhí)行步驟S6。
3.根據權利要求2所述的一種基于串口的船用雷達回波數據的采集方法,其特征在于步驟S6的具體步驟如下 56-①.當雷達回波數據填滿第一緩沖區(qū)時,使能第二DMA通道,關閉第一 DMA通道; S6-②.當接收FIFO中的雷達回波數據的容量達到所設定的閾值時,串口向DMA控制器發(fā)送DMA接收請求; S6-③.DMA控制器接收到串口的請求后,第二 DMA通道開始從接收FIFO中傳輸雷達回波數據到第二緩沖區(qū)中,同時數據處理模塊開始對第一緩沖區(qū)中的雷達回波數據進行處理,當雷達回波數據未填滿第二緩沖區(qū)時,返回步驟S6-②繼續(xù)執(zhí)行;當雷達回波數據填滿第二緩沖區(qū)時,執(zhí)行步驟S7。
4.根據權利要求3所述的一種基于串口的船用雷達回波數據的采集方法,其特征在于步驟S7的具體步驟如下 S7-①.當雷達回波數據填滿第二緩沖區(qū)時,使能第一 DMA通道,關閉第二 DMA通道; S7-②.當接收FIFO中的雷達回波數據的容量達到所設定的閾值時,串口向DMA控制器發(fā)送DMA接收請求; S7-③.DMA控制器接收到串口的請求后,第一 DMA通道開始從接收FIFO中傳輸雷達回波數據到第一緩沖區(qū)中,同時數據處理模塊開始對第二緩沖區(qū)中的雷達回波數據進行處理,當雷達回波數據未填滿第一緩沖區(qū)時,返回步驟S7-②繼續(xù)執(zhí)行;當雷達回波數據填滿第一緩沖區(qū)時,執(zhí)行步驟S8。
全文摘要
本發(fā)明公開了一種基于串口的船用雷達回波數據的采集方法,數據處理單元采集雷達天線單元產生的雷達回波數據,特點是設置了兩個DMA通道進行雷達回波數據的傳輸,相應的設置了兩個緩沖區(qū)用于緩存雷達回波數據,兩個DMA通道可以交替?zhèn)鬏斃走_回波數據;優(yōu)點是雙通道DMA傳輸和雙緩沖機制的使用有效地解決了串口數據溢出的問題,避免了雷達回波數據的丟失,保證了雷達回波數據采集的正確性與穩(wěn)定性,使得高速、持續(xù)的雷達回波數據能夠及時、高效的傳輸到數據處理單元進行處理。
文檔編號G06F13/28GK102831091SQ201210269030
公開日2012年12月19日 申請日期2012年7月31日 優(yōu)先權日2012年7月31日
發(fā)明者田丹, 李 浩, 陳曦, 李浩瀧, 高云志, 閻旭, 冉元進 申請人:寧波成電泰克電子信息技術發(fā)展有限公司