亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

蟲蟲首頁| 資源下載| 資源專輯| 精品軟件
登錄| 注冊

if-<b>else</b>-end

  • 基于FPGA的B型超聲成像系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).rar

    便攜式B型超聲診斷儀具有無創(chuàng)傷、簡便易行、相對價(jià)廉等優(yōu)勢,在臨床中越來越得到廣泛的應(yīng)用。它將超聲波技術(shù)、微電子技術(shù)、計(jì)算機(jī)技術(shù)、機(jī)械設(shè)計(jì)與制造及生物醫(yī)學(xué)工程等技術(shù)融合在一起。開展該課題的研究對提高臨床診斷能力和促進(jìn)我國醫(yī)療事業(yè)的發(fā)展具有重要的意義。 便攜式B型超聲診斷儀由人機(jī)交互系統(tǒng)、探頭、成像系統(tǒng)、顯示系統(tǒng)構(gòu)成。其基本工作過程是:首先人機(jī)交互系統(tǒng)接收到用戶通過鍵盤或鼠標(biāo)發(fā)出的命令,然后成像系統(tǒng)根據(jù)命令控制探頭發(fā)射超聲波,并對回波信號處理、合成圖像,最后通過顯示系統(tǒng)完成圖像的顯示。 成像系統(tǒng)作為便攜式B型超聲診斷儀的核心對圖像質(zhì)量有決定性影響,但以前研制的便攜式B型超聲診斷儀的成像系統(tǒng)在三個(gè)方面存在不足:第一、采用的是單片機(jī)控制步進(jìn)電機(jī),控制精度不高,導(dǎo)致成像系統(tǒng)采樣不精確;第二、采用的數(shù)字掃描變換算法太粗糙,影響超聲圖像的分辨率;第三、它的CPU多采用的是51系列單片機(jī),測量速度太慢,同時(shí)也不便于系統(tǒng)升級和擴(kuò)展。 針對以上不足,提出了基于FPGA的B型超聲成像系統(tǒng)解決方案,采用Altera公司的EP2C5Q208C8芯片實(shí)現(xiàn)了步進(jìn)電機(jī)步距角的細(xì)分,使電機(jī)旋轉(zhuǎn)更勻速,提高了采樣精度;提出并采用DSTI-ULA算法(Uniform Ladder Algorithm based on Double Sample and Trilinear Interotation)在FPGA內(nèi)實(shí)現(xiàn)數(shù)字掃描變換,提高了圖像分辨率;人機(jī)交互系統(tǒng)采用S3C2410-AL作為CPU,改善了測量速度和系統(tǒng)的擴(kuò)展性。 通過對系統(tǒng)硬件電路的設(shè)計(jì)、制作,軟件的編寫、調(diào)試,結(jié)果表明,本文所設(shè)計(jì)的便攜式B型超聲成像系統(tǒng)圖像分辨率高、測量速度快、體積小、操作方便。本文所設(shè)計(jì)的便攜式B型超聲診斷儀可在野外作業(yè)和搶險(xiǎn)(諸如地震、抗洪)中發(fā)揮作用,同時(shí)也可在鄉(xiāng)村診所中完成對相關(guān)疾病的診斷工作。

    標(biāo)簽: FPGA 超聲成像

    上傳時(shí)間: 2013-05-18

    上傳用戶:helmos

  • 基于ARM的全數(shù)字B型超聲診斷儀的設(shè)計(jì)與研究

    超聲理論與技術(shù)的快速發(fā)展,使超聲設(shè)備不斷更新,超聲檢查已成為預(yù)測和評價(jià)疾病及其治療結(jié)果不可缺少的重要方法。超聲診斷技術(shù)不僅具有安全、方便、無損、廉價(jià)等優(yōu)點(diǎn),其優(yōu)越性還在于它選用診斷參數(shù)的多樣性及其在工程上實(shí)現(xiàn)的靈活性。 全數(shù)字B超診斷儀基于嵌入式ARM9+FPGA硬件平臺、LINUX嵌入式操作系統(tǒng),是一種新型的、操作方便的、技術(shù)含量高的機(jī)型。它具有現(xiàn)有黑白B超的基本功能,能夠?qū)Τ暬夭〝?shù)據(jù)進(jìn)行靈活的處理,從而使操作更加方便,圖象質(zhì)量進(jìn)一步提高,并為遠(yuǎn)程醫(yī)療、圖像存儲、拷貝等打下基礎(chǔ),是一種很有發(fā)展前景、未來市場的主打產(chǎn)品。全數(shù)字B型超聲診斷儀的基本技術(shù)特點(diǎn)是用數(shù)字硬件電路來實(shí)現(xiàn)數(shù)據(jù)量極其龐大的超聲信息的實(shí)時(shí)處理,它的實(shí)現(xiàn)主要倚重于FPGA技術(shù)。現(xiàn)在FPGA已經(jīng)成為多種數(shù)字信號處理(DSP)應(yīng)用的強(qiáng)有力解決方案。硬件和軟件設(shè)計(jì)者可以利用可編程邏輯開發(fā)各種DSP應(yīng)用解決方案。可編程解決方案可以更好地適應(yīng)快速變化的標(biāo)準(zhǔn)、協(xié)議和性能需求。 本論文首先闡述了醫(yī)療儀器發(fā)展現(xiàn)狀和嵌入式計(jì)算機(jī)體系結(jié)構(gòu)及發(fā)展?fàn)顩r,提出了課題研究內(nèi)容和目標(biāo)。然后從B超診斷原理及全數(shù)字B超診斷儀設(shè)計(jì)入手深入分析了B型超聲診斷儀的系統(tǒng)的硬件體系機(jī)構(gòu)。對系統(tǒng)的總體框架和ARM模塊設(shè)計(jì)做了描述后,接著分析了超聲信號進(jìn)行數(shù)字化處理的各個(gè)子模塊、可編程邏輯器件的結(jié)構(gòu)特點(diǎn)、編程原理、設(shè)計(jì)流程以及ARM處理模塊和FPGA模塊的主要通訊接口。接著,本論文介紹了基于ARM9硬件平臺的LINUX嵌入式操作系統(tǒng)的移植和設(shè)備驅(qū)動(dòng)的開發(fā),詳細(xì)描述了B型超聲診斷儀的軟件環(huán)境的架構(gòu)及其設(shè)備驅(qū)動(dòng)的詳細(xì)設(shè)計(jì)。最后對整個(gè)系統(tǒng)的功能和特點(diǎn)進(jìn)行了總結(jié)和展望。

    標(biāo)簽: ARM 全數(shù)字 儀的設(shè)計(jì) 超聲診斷

    上傳時(shí)間: 2013-05-28

    上傳用戶:sssnaxie

  • ITU-T G.729的一個(gè)實(shí)現(xiàn)例子(包括附錄b的vod檢測等功能)

    ·ITU-T G.729的一個(gè)實(shí)現(xiàn)例子(包括附錄b的vod檢測等功能)-ITU-T g.729 example, include VOD detect of reference B, etc.文件列表(點(diǎn)擊判斷是否您需要的文件):   g729b_v14   .........\acelp_co.c   .........\basic_op.c   .....

    標(biāo)簽: ITU-T nbsp 729 vod

    上傳時(shí)間: 2013-05-20

    上傳用戶:Garfield

  • 基于MATLAB的B樣條小波程序的實(shí)現(xiàn)

    · 摘要:  MATLAB是一種建立在向量、數(shù)組、矩陣基礎(chǔ)上,面向科學(xué)和工程計(jì)算的高級語言,為科學(xué)研究和工程計(jì)算提供了一個(gè)方便有效的工具.該文簡要介紹了B樣條和B樣條小波的構(gòu)成,并利用MATLAB語言編寫了繪制任意階B樣條和B樣條小波圖形的程序.  

    標(biāo)簽: MATLAB 程序

    上傳時(shí)間: 2013-04-24

    上傳用戶:sqq

  • 蘇泊爾C21S02-B電磁爐電路圖

    蘇泊爾C21S02-B電磁爐電路圖,紅線標(biāo)注,重點(diǎn)模塊說明!

    標(biāo)簽: 21 02 蘇泊爾 電磁爐電路圖

    上傳時(shí)間: 2013-06-22

    上傳用戶:huangzr5

  • ADS-B接收機(jī)DIY全套資料

    制作基于PIC Mcu 的ADS-B接收機(jī)的全套資料,包括SCH、PCB、源碼和PC端軟件。

    標(biāo)簽: ADS-B DIY 接收機(jī)

    上傳時(shí)間: 2013-04-24

    上傳用戶:cx111111

  • 2012TI杯陜西賽題B題--頻率補(bǔ)償電路

    2012TI杯陜西賽題H題,2012TI杯陜西賽題B題--頻率補(bǔ)償電路.

    標(biāo)簽: 2012 TI 頻率補(bǔ)償電路

    上傳時(shí)間: 2013-10-07

    上傳用戶:ysystc670

  • PSHLY-B回路電阻測試儀

    PSHLY-B回路電阻測試儀介紹

    標(biāo)簽: PSHLY-B 回路 電阻測試儀

    上傳時(shí)間: 2013-11-05

    上傳用戶:木子葉1

  • 基于單片機(jī)的數(shù)字化B超鍵盤設(shè)計(jì)

    針對目前使用的RS232接口數(shù)字化B超鍵盤存在PC主機(jī)啟動(dòng)時(shí)不能設(shè)置BIOS,提出一種PS2鍵盤的設(shè)計(jì)方法。基于W78E052D單片機(jī),采用8通道串行A/D轉(zhuǎn)換器設(shè)計(jì)了8個(gè)TGC電位器信息采集電路,電位器位置信息以鍵盤掃描碼序列形式發(fā)送,正交編碼器信號通過XC9536XL轉(zhuǎn)換為單片機(jī)可接收的中斷信號,軟件接收到中斷信息后等效處理成按鍵。結(jié)果表明,在滿足開機(jī)可設(shè)置BIOS同時(shí),又可實(shí)現(xiàn)超聲特有功能,不需要專門設(shè)計(jì)驅(qū)動(dòng)程序,接口簡單,成本低。 Abstract:  Aiming at the problem of the digital ultrasonic diagnostic imaging system keyboard with RS232 interface currently used couldn?蒺t set the BIOS when the PC boot, this paper proposed a design method of PS2 keyboards. Based on W78E052D microcontroller,designed eight TGC potentiometers information acquisition circuit with 8-channel serial A/D converter, potentiometer position information sent out with keyboard scan code sequentially.The control circuit based on XC9536 CPLD is used for converting the mechanical actions of the encoders into the signals that can be identified by the MCU, software received interrupt information and equivalently treatmented as key. The results show that the BIOS can be set to meet the boot, ultrasound specific functionality can be achieved at the same time, it does not require specially designed driver,the interface is simple and low cost.    

    標(biāo)簽: 單片機(jī) B超 數(shù)字化 鍵盤設(shè)計(jì)

    上傳時(shí)間: 2013-10-10

    上傳用戶:asdfasdfd

  • 驅(qū)動(dòng)程序與應(yīng)用程序的接口

    有兩種方式可以讓設(shè)備和應(yīng)用程序之間聯(lián)系:1. 通過為設(shè)備創(chuàng)建的一個(gè)符號鏈;2. 通過輸出到一個(gè)接口WDM驅(qū)動(dòng)程序建議使用輸出到一個(gè)接口而不推薦使用創(chuàng)建符號鏈的方法。這個(gè)接口保證PDO的安全,也保證安全地創(chuàng)建一個(gè)惟一的、獨(dú)立于語言的訪問設(shè)備的方法。一個(gè)應(yīng)用程序使用Win32APIs來調(diào)用設(shè)備。在某個(gè)Win32 APIs和設(shè)備對象的分發(fā)函數(shù)之間存在一個(gè)映射關(guān)系。獲得對設(shè)備對象訪問的第一步就是打開一個(gè)設(shè)備對象的句柄。 用符號鏈打開一個(gè)設(shè)備的句柄為了打開一個(gè)設(shè)備,應(yīng)用程序需要使用CreateFile。如果該設(shè)備有一個(gè)符號鏈出口,應(yīng)用程序可以用下面這個(gè)例子的形式打開句柄:hDevice = CreateFile("\\\\.\\OMNIPORT3",  GENERIC_READ | GENERIC_WRITE,FILE_SHARE_READ,  NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL ,NULL);文件路徑名的前綴“\\.\”告訴系統(tǒng)本調(diào)用希望打開一個(gè)設(shè)備。這個(gè)設(shè)備必須有一個(gè)符號鏈,以便應(yīng)用程序能夠打開它。有關(guān)細(xì)節(jié)查看有關(guān)Kdevice和CreateLink的內(nèi)容。在上述調(diào)用中第一個(gè)參數(shù)中前綴后的部分就是這個(gè)符號鏈的名字。注意:CreatFile中的第一個(gè)參數(shù)不是Windows 98/2000中驅(qū)動(dòng)程序(.sys文件)的路徑。是到設(shè)備對象的符號鏈。如果使用DriverWizard產(chǎn)生驅(qū)動(dòng)程序,它通常使用類KunitizedName來構(gòu)成設(shè)備的符號鏈。這意味著符號鏈名有一個(gè)附加的數(shù)字,通常是0。例如:如果鏈接名稱的主干是L“TestDevice”那么在CreateFile中的串就該是“\\\\.\\TestDevice0”。如果應(yīng)用程序需要被覆蓋的I/O,第六個(gè)參數(shù)(Flags)必須或上FILE_FLAG_OVERLAPPED。 使用一個(gè)輸出接口打開句柄用這種方式打開一個(gè)句柄會稍微麻煩一些。DriverWorks庫提供兩個(gè)助手類來使獲得對該接口的訪問容易一些,這兩個(gè)類是CDeviceInterface, 和 CdeviceInterfaceClass。CdeviceInterfaceClass類封裝了一個(gè)設(shè)備信息集,該信息集包含了特殊類中的所有設(shè)備接口信息。應(yīng)用程序能有用CdeviceInterfaceClass類的一個(gè)實(shí)例來獲得一個(gè)或更多的CdeviceInterface類的實(shí)例。CdeviceInterface類是一個(gè)單一設(shè)備接口的抽象。它的成員函數(shù)DevicePath()返回一個(gè)路徑名的指針,該指針可以在CreateFile中使用來打開設(shè)備。下面用一個(gè)小例子來顯示這些類最基本的使用方法:extern GUID TestGuid;HANDLE OpenByInterface(  GUID* pClassGuid,  DWORD instance,  PDWORD pError){  CDeviceInterfaceClass DevClass(pClassGuid, pError);  if (*pError != ERROR_SUCCESS)    return INVALID_HANDLE_VALUE;  CDeviceInterface DevInterface(&DevClass, instance, pError);  if (*pError != ERROR_SUCCESS)    return INVALID_HANDLE_VALUE;  cout << "The device path is "    << DevInterface.DevicePath()    << endl;   HANDLE hDev;  hDev = CreateFile(   DevInterface.DevicePath(),    GENERIC_READ | GENERIC_WRITE,    FILE_SHARE_READ | FILE_SHARE_WRITE,    NULL,    OPEN_EXISTING,    FILE_ATTRIBUTE_NORMAL,    NULL  );  if (hDev == INVALID_HANDLE_VALUE)    *pError = GetLastError();  return hDev;} 在設(shè)備中執(zhí)行I/O操作一旦應(yīng)用程序獲得一個(gè)有效的設(shè)備句柄,它就能使用Win32 APIs來產(chǎn)生到設(shè)備對象的IRPs。下面的表顯示了這種對應(yīng)關(guān)系。Win32 API  DRIVER_FUNCTION_xxxIRP_MJ_xxx  KDevice subclass member function CreateFile  CREATE  Create ReadFile  READ  Read WriteFile  WRITE  Write DeviceIoControl  DEVICE_CONTROL  DeviceControl CloseHandle  CLOSECLEANUP  CloseCleanUp 需要解釋一下設(shè)備類成員的Close和CleanUp:CreateFile使內(nèi)核為設(shè)備創(chuàng)建一個(gè)新的文件對象。這使得多個(gè)句柄可以映射同一個(gè)文件對象。當(dāng)這個(gè)文件對象的最后一個(gè)用戶級句柄被撤銷后,I/O管理器調(diào)用CleanUp。當(dāng)沒有任何用戶級和核心級的對文件對象的訪問的時(shí)候,I/O管理器調(diào)用Close。如果被打開的設(shè)備不支持指定的功能,則調(diào)用相應(yīng)的Win32將引起錯(cuò)誤(無效功能)。以前為Windows95編寫的VxD的應(yīng)用程序代碼中可能會在打開設(shè)備的時(shí)候使用FILE_FLAG_DELETE_ON_CLOSE屬性。在Windows NT/2000中,建議不要使用這個(gè)屬性,因?yàn)樗鼘?dǎo)致沒有特權(quán)的用戶企圖打開這個(gè)設(shè)備,這是不可能成功的。I/O管理器將ReadFile和WriteFile的buff參數(shù)轉(zhuǎn)換成IRP域的方法依賴于設(shè)備對象的屬性。當(dāng)設(shè)備設(shè)置DO_DIRECT_IO標(biāo)志,I/O管理器將buff鎖住在存儲器中,并且創(chuàng)建了一個(gè)存儲在IRP中的MDL域。一個(gè)設(shè)備可以通過調(diào)用Kirp::Mdl來存取MDL。當(dāng)設(shè)備設(shè)置DO_BUFFERED_IO標(biāo)志,設(shè)備對象分別通過KIrp::BufferedReadDest或 KIrp::BufferedWriteSource為讀或?qū)懖僮鳙@得buff地址。當(dāng)設(shè)備不設(shè)置DO_BUFFERED_IO標(biāo)志也不設(shè)置DO_DIRECT_IO,內(nèi)核設(shè)置IRP 的UserBuffer域來對應(yīng)ReadFile或WriteFile中的buff參數(shù)。然而,存儲區(qū)并沒有被鎖住而且地址只對調(diào)用進(jìn)程有效。驅(qū)動(dòng)程序可以使用KIrp::UserBuffer來存取IRP域。對于DeviceIoControl調(diào)用,buffer參數(shù)的轉(zhuǎn)換依賴于特殊的I/O控制代碼,它不在設(shè)備對象的特性中。宏CTL_CODE(在winioctl.h中定義)用來構(gòu)造控制代碼。這個(gè)宏的其中一個(gè)參數(shù)指明緩沖方法是METHOD_BUFFERED, METHOD_IN_DIRECT, METHOD_OUT_DIRECT, 或METHOD_NEITHER。下面的表顯示了這些方法和與之對應(yīng)的能獲得輸入緩沖與輸出緩沖的KIrp中的成員函數(shù):Method  Input Buffer Parameter  Output Buffer Parameter METHOD_BUFFERED  KIrp::IoctlBuffer KIrp::IoctlBuffer METHOD_IN_DIRECT  KIrp::IoctlBuffer KIrp::Mdl METHOD_OUT_DIRECT  KIrp::IoctlBuffer KIrp::Mdl METHOD_NEITHER  KIrp::IoctlType3InputBuffer KIrp::UserBuffer 如果控制代碼指明METHOD_BUFFERED,系統(tǒng)分配一個(gè)單一的緩沖來作為輸入與輸出。驅(qū)動(dòng)程序必須在向輸出緩沖放數(shù)據(jù)之前拷貝輸入數(shù)據(jù)。驅(qū)動(dòng)程序通過調(diào)用KIrp::IoctlBuffer獲得緩沖地址。在完成時(shí),I/O管理器從系統(tǒng)緩沖拷貝數(shù)據(jù)到提供給Ring 3級調(diào)用者使用的緩沖中。驅(qū)動(dòng)程序必須在結(jié)束前存儲拷貝到IRP的Information成員中的數(shù)據(jù)個(gè)數(shù)。如果控制代碼不指明METHOD_IN_DIRECT或METHOD_OUT_DIRECT,則DeviceIoControl的參數(shù)呈現(xiàn)不同的含義。參數(shù)InputBuffer被拷貝到一個(gè)系統(tǒng)緩沖,這個(gè)緩沖驅(qū)動(dòng)程序可以通過調(diào)用KIrp::IoctlBuffer。參數(shù)OutputBuffer被映射到KMemory對象,驅(qū)動(dòng)程序?qū)@個(gè)對象的訪問通過調(diào)用KIrp::Mdl來實(shí)現(xiàn)。對于METHOD_OUT_DIRECT,調(diào)用者必須有對緩沖的寫訪問權(quán)限。注意,對METHOD_NEITHER,內(nèi)核只提供虛擬地址;它不會做映射來配置緩沖。虛擬地址只對調(diào)用進(jìn)程有效。這里是一個(gè)用METHOD_BUFFERED的例子:首先,使用宏CTL_CODE來定義一個(gè)IOCTL代碼:#define IOCTL_MYDEV_GET_FIRMWARE_REV \CTL_CODE (FILE_DEVICE_UNKNOWN,0,METHOD_BUFFERED,FILE_ANY_ACCESS)現(xiàn)在使用一個(gè)DeviceIoControl調(diào)用:BOOLEAN b;CHAR FirmwareRev[60];ULONG FirmwareRevSize;b = DeviceIoControl(hDevice, IOCTL_MYDEV_GET_VERSION_STRING,  NULL, // no input  注意,這里放的是包含有執(zhí)行操作命令的字符串指針  0, FirmwareRev,      //這里是output串指針,存放從驅(qū)動(dòng)程序中返回的字符串。sizeof(FirmwareRev),& FirmwareRevSize,  NULL // not overlapped I/O );如果輸出緩沖足夠大,設(shè)備拷貝串到里面并將拷貝的資結(jié)束設(shè)置到FirmwareRevSize中。在驅(qū)動(dòng)程序中,代碼看起來如下所示:const char* FIRMWARE_REV = "FW 16.33 v5";NTSTATUS MyDevice::DeviceControl( KIrp I ){  ULONG fwLength=0;  switch ( I.IoctlCode() )  {    case IOCTL_MYDEV_GET_FIRMWARE_REV:      fwLength = strlen(FIRMWARE_REV)+1;      if (I.IoctlOutputBufferSize() >= fwLength)      {        strcpy((PCHAR)I.IoctlBuffer(),FIRMWARE_REV);        I.Information() = fwLength;         return I.Complete(STATUS_SUCCESS);      }      else      {              }    case . . .   } }

    標(biāo)簽: 驅(qū)動(dòng)程序 應(yīng)用程序 接口

    上傳時(shí)間: 2013-10-17

    上傳用戶:gai928943

主站蜘蛛池模板: 安达市| 凌源市| 辽源市| 新化县| 宁乡县| 古田县| 黄骅市| 徐州市| 乃东县| 积石山| 孟津县| 贵港市| 正安县| 高台县| 德阳市| 南汇区| 宁城县| 封丘县| 丹阳市| 金堂县| 黔东| 高淳县| 久治县| 阳曲县| 阿拉善盟| 横峰县| 炎陵县| 原平市| 酉阳| 类乌齐县| 镶黄旗| 杭锦后旗| 南通市| 都匀市| 灌云县| 三门峡市| 德惠市| 西乌| 丽水市| 兴化市| 南部县|