有兩種方式可以讓設(shè)備和應(yīng)用程序之間聯(lián)系:1. 通過(guò)為設(shè)備創(chuàng)建的一個(gè)符號(hào)鏈;2. 通過(guò)輸出到一個(gè)接口WDM驅(qū)動(dòng)程序建議使用輸出到一個(gè)接口而不推薦使用創(chuàng)建符號(hào)鏈的方法。這個(gè)接口保證PDO的安全,也保證安全地創(chuàng)建一個(gè)惟一的、獨(dú)立于語(yǔ)言的訪問(wèn)設(shè)備的方法。一個(gè)應(yīng)用程序使用Win32APIs來(lái)調(diào)用設(shè)備。在某個(gè)Win32 APIs和設(shè)備對(duì)象的分發(fā)函數(shù)之間存在一個(gè)映射關(guān)系。獲得對(duì)設(shè)備對(duì)象訪問(wèn)的第一步就是打開(kāi)一個(gè)設(shè)備對(duì)象的句柄。 用符號(hào)鏈打開(kāi)一個(gè)設(shè)備的句柄為了打開(kāi)一個(gè)設(shè)備,應(yīng)用程序需要使用CreateFile。如果該設(shè)備有一個(gè)符號(hào)鏈出口,應(yīng)用程序可以用下面這個(gè)例子的形式打開(kāi)句柄:hDevice = CreateFile("\\\\.\\OMNIPORT3", GENERIC_READ | GENERIC_WRITE,FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL ,NULL);文件路徑名的前綴“\\.\”告訴系統(tǒng)本調(diào)用希望打開(kāi)一個(gè)設(shè)備。這個(gè)設(shè)備必須有一個(gè)符號(hào)鏈,以便應(yīng)用程序能夠打開(kāi)它。有關(guān)細(xì)節(jié)查看有關(guān)Kdevice和CreateLink的內(nèi)容。在上述調(diào)用中第一個(gè)參數(shù)中前綴后的部分就是這個(gè)符號(hào)鏈的名字。注意:CreatFile中的第一個(gè)參數(shù)不是Windows 98/2000中驅(qū)動(dòng)程序(.sys文件)的路徑。是到設(shè)備對(duì)象的符號(hào)鏈。如果使用DriverWizard產(chǎn)生驅(qū)動(dòng)程序,它通常使用類KunitizedName來(lái)構(gòu)成設(shè)備的符號(hào)鏈。這意味著符號(hào)鏈名有一個(gè)附加的數(shù)字,通常是0。例如:如果鏈接名稱的主干是L“TestDevice”那么在CreateFile中的串就該是“\\\\.\\TestDevice0”。如果應(yīng)用程序需要被覆蓋的I/O,第六個(gè)參數(shù)(Flags)必須或上FILE_FLAG_OVERLAPPED。 使用一個(gè)輸出接口打開(kāi)句柄用這種方式打開(kāi)一個(gè)句柄會(huì)稍微麻煩一些。DriverWorks庫(kù)提供兩個(gè)助手類來(lái)使獲得對(duì)該接口的訪問(wèn)容易一些,這兩個(gè)類是CDeviceInterface, 和 CdeviceInterfaceClass。CdeviceInterfaceClass類封裝了一個(gè)設(shè)備信息集,該信息集包含了特殊類中的所有設(shè)備接口信息。應(yīng)用程序能有用CdeviceInterfaceClass類的一個(gè)實(shí)例來(lái)獲得一個(gè)或更多的CdeviceInterface類的實(shí)例。CdeviceInterface類是一個(gè)單一設(shè)備接口的抽象。它的成員函數(shù)DevicePath()返回一個(gè)路徑名的指針,該指針可以在CreateFile中使用來(lái)打開(kāi)設(shè)備。下面用一個(gè)小例子來(lái)顯示這些類最基本的使用方法: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來(lái)產(chǎn)生到設(shè)備對(duì)象的IRPs。下面的表顯示了這種對(duì)應(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è)新的文件對(duì)象。這使得多個(gè)句柄可以映射同一個(gè)文件對(duì)象。當(dāng)這個(gè)文件對(duì)象的最后一個(gè)用戶級(jí)句柄被撤銷后,I/O管理器調(diào)用CleanUp。當(dāng)沒(méi)有任何用戶級(jí)和核心級(jí)的對(duì)文件對(duì)象的訪問(wèn)的時(shí)候,I/O管理器調(diào)用Close。如果被打開(kāi)的設(shè)備不支持指定的功能,則調(diào)用相應(yīng)的Win32將引起錯(cuò)誤(無(wú)效功能)。以前為Windows95編寫(xiě)的VxD的應(yīng)用程序代碼中可能會(huì)在打開(kāi)設(shè)備的時(shí)候使用FILE_FLAG_DELETE_ON_CLOSE屬性。在Windows NT/2000中,建議不要使用這個(gè)屬性,因?yàn)樗鼘?dǎo)致沒(méi)有特權(quán)的用戶企圖打開(kāi)這個(gè)設(shè)備,這是不可能成功的。I/O管理器將ReadFile和WriteFile的buff參數(shù)轉(zhuǎn)換成IRP域的方法依賴于設(shè)備對(duì)象的屬性。當(dāng)設(shè)備設(shè)置DO_DIRECT_IO標(biāo)志,I/O管理器將buff鎖住在存儲(chǔ)器中,并且創(chuàng)建了一個(gè)存儲(chǔ)在IRP中的MDL域。一個(gè)設(shè)備可以通過(guò)調(diào)用Kirp::Mdl來(lái)存取MDL。當(dāng)設(shè)備設(shè)置DO_BUFFERED_IO標(biāo)志,設(shè)備對(duì)象分別通過(guò)KIrp::BufferedReadDest或 KIrp::BufferedWriteSource為讀或?qū)懖僮鳙@得buff地址。當(dāng)設(shè)備不設(shè)置DO_BUFFERED_IO標(biāo)志也不設(shè)置DO_DIRECT_IO,內(nèi)核設(shè)置IRP 的UserBuffer域來(lái)對(duì)應(yīng)ReadFile或WriteFile中的buff參數(shù)。然而,存儲(chǔ)區(qū)并沒(méi)有被鎖住而且地址只對(duì)調(diào)用進(jìn)程有效。驅(qū)動(dòng)程序可以使用KIrp::UserBuffer來(lái)存取IRP域。對(duì)于DeviceIoControl調(diào)用,buffer參數(shù)的轉(zhuǎn)換依賴于特殊的I/O控制代碼,它不在設(shè)備對(duì)象的特性中。宏CTL_CODE(在winioctl.h中定義)用來(lái)構(gòu)造控制代碼。這個(gè)宏的其中一個(gè)參數(shù)指明緩沖方法是METHOD_BUFFERED, METHOD_IN_DIRECT, METHOD_OUT_DIRECT, 或METHOD_NEITHER。下面的表顯示了這些方法和與之對(duì)應(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è)單一的緩沖來(lái)作為輸入與輸出。驅(qū)動(dòng)程序必須在向輸出緩沖放數(shù)據(jù)之前拷貝輸入數(shù)據(jù)。驅(qū)動(dòng)程序通過(guò)調(diào)用KIrp::IoctlBuffer獲得緩沖地址。在完成時(shí),I/O管理器從系統(tǒng)緩沖拷貝數(shù)據(jù)到提供給Ring 3級(jí)調(diào)用者使用的緩沖中。驅(qū)動(dòng)程序必須在結(jié)束前存儲(chǔ)拷貝到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)程序可以通過(guò)調(diào)用KIrp::IoctlBuffer。參數(shù)OutputBuffer被映射到KMemory對(duì)象,驅(qū)動(dòng)程序?qū)@個(gè)對(duì)象的訪問(wèn)通過(guò)調(diào)用KIrp::Mdl來(lái)實(shí)現(xiàn)。對(duì)于METHOD_OUT_DIRECT,調(diào)用者必須有對(duì)緩沖的寫(xiě)訪問(wèn)權(quán)限。注意,對(duì)METHOD_NEITHER,內(nèi)核只提供虛擬地址;它不會(huì)做映射來(lái)配置緩沖。虛擬地址只對(duì)調(diào)用進(jìn)程有效。這里是一個(gè)用METHOD_BUFFERED的例子:首先,使用宏CTL_CODE來(lái)定義一個(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)程序中,代碼看起來(lái)如下所示: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
一、傳感器的定義信息處理技術(shù)取得的進(jìn)展以及微處理器和計(jì)算機(jī)技術(shù)的高速發(fā)展,都需要在傳感器的開(kāi)發(fā)方面有相應(yīng)的進(jìn)展。微處理器現(xiàn)在已經(jīng)在測(cè)量和控制系統(tǒng)中得到了廣泛的應(yīng)用。隨著這些系統(tǒng)能力的增強(qiáng),作為信息采集系統(tǒng)的前端單元,傳感器的作用越來(lái)越重要。傳感器已成為自動(dòng)化系統(tǒng)和機(jī)器人技術(shù)中的關(guān)鍵部件,作為系統(tǒng)中的一個(gè)結(jié)構(gòu)組成,其重要性變得越來(lái)越明顯。最廣義地來(lái)說(shuō),傳感器是一種能把物理量或化學(xué)量轉(zhuǎn)變成便于利用的電信號(hào)的器件。國(guó)際電工委員會(huì)(IEC:International Electrotechnical Committee)的定義為:“傳感器是測(cè)量系統(tǒng)中的一種前置部件,它將輸入變量轉(zhuǎn)換成可供測(cè)量的信號(hào)”。按照Gopel等的說(shuō)法是:“傳感器是包括承載體和電路連接的敏感元件”,而“傳感器系統(tǒng)則是組合有某種信息處理(模擬或數(shù)字)能力的傳感器”。傳感器是傳感器系統(tǒng)的一個(gè)組成部分,它是被測(cè)量信號(hào)輸入的第一道關(guān)口。傳感器系統(tǒng)的原則框圖示于圖1-1,進(jìn)入傳感器的信號(hào)幅度是很小的,而且混雜有干擾信號(hào)和噪聲。為了方便隨后的處理過(guò)程,首先要將信號(hào)整形成具有最佳特性的波形,有時(shí)還需要將信號(hào)線性化,該工作是由放大器、濾波器以及其他一些模擬電路完成的。在某些情況下,這些電路的一部分是和傳感器部件直接相鄰的。成形后的信號(hào)隨后轉(zhuǎn)換成數(shù)字信號(hào),并輸入到微處理器。德國(guó)和俄羅斯學(xué)者認(rèn)為傳感器應(yīng)是由二部分組成的,即直接感知被測(cè)量信號(hào)的敏感元件部分和初始處理信號(hào)的電路部分。按這種理解,傳感器還包含了信號(hào)成形器的電路部分。傳感器系統(tǒng)的性能主要取決于傳感器,傳感器把某種形式的能量轉(zhuǎn)換成另一種形式的能量。有兩類傳感器:有源的和無(wú)源的。有源傳感器能將一種能量形式直接轉(zhuǎn)變成另一種,不需要外接的能源或激勵(lì)源(參閱圖1-2(a))。有源(a)和無(wú)源(b)傳感器的信號(hào)流程無(wú)源傳感器不能直接轉(zhuǎn)換能量形式,但它能控制從另一輸入端輸入的能量或激勵(lì)能傳感器承擔(dān)將某個(gè)對(duì)象或過(guò)程的特定特性轉(zhuǎn)換成數(shù)量的工作。其“對(duì)象”可以是固體、液體或氣體,而它們的狀態(tài)可以是靜態(tài)的,也可以是動(dòng)態(tài)(即過(guò)程)的。對(duì)象特性被轉(zhuǎn)換量化后可以通過(guò)多種方式檢測(cè)。對(duì)象的特性可以是物理性質(zhì)的,也可以是化學(xué)性質(zhì)的。按照其工作原理,傳感器將對(duì)象特性或狀態(tài)參數(shù)轉(zhuǎn)換成可測(cè)定的電學(xué)量,然后將此電信號(hào)分離出來(lái),送入傳感器系統(tǒng)加以評(píng)測(cè)或標(biāo)示。各種物理效應(yīng)和工作機(jī)理被用于制作不同功能的傳感器。傳感器可以直接接觸被測(cè)量對(duì)象,也可以不接觸。用于傳感器的工作機(jī)制和效應(yīng)類型不斷增加,其包含的處理過(guò)程日益完善。常將傳感器的功能與人類5大感覺(jué)器官相比擬: 光敏傳感器——視覺(jué);聲敏傳感器——聽(tīng)覺(jué);氣敏傳感器——嗅覺(jué);化學(xué)傳感器——味覺(jué);壓敏、溫敏、流體傳感器——觸覺(jué)。與當(dāng)代的傳感器相比,人類的感覺(jué)能力好得多,但也有一些傳感器比人的感覺(jué)功能優(yōu)越,例如人類沒(méi)有能力感知紫外或紅外線輻射,感覺(jué)不到電磁場(chǎng)、無(wú)色無(wú)味的氣體等。對(duì)傳感器設(shè)定了許多技術(shù)要求,有一些是對(duì)所有類型傳感器都適用的,也有只對(duì)特定類型傳感器適用的特殊要求。針對(duì)傳感器的工作原理和結(jié)構(gòu)在不同場(chǎng)合均需要的基本要求是: 高靈敏度,抗干擾的穩(wěn)定性(對(duì)噪聲不敏感),線性,容易調(diào)節(jié)(校準(zhǔn)簡(jiǎn)易),高精度,高可靠性,無(wú)遲滯性,工作壽命長(zhǎng)(耐用性) ,可重復(fù)性,抗老化,高響應(yīng)速率,抗環(huán)境影響(熱、振動(dòng)、酸、堿、空氣、水、塵埃)的能力 ,選擇性,安全性(傳感器應(yīng)是無(wú)污染的),互換性 低成本 ,寬測(cè)量范圍,小尺寸、重量輕和高強(qiáng)度,寬工作溫度范圍 。二、傳感器的分類可以用不同的觀點(diǎn)對(duì)傳感器進(jìn)行分類:它們的轉(zhuǎn)換原理(傳感器工作的基本物理或化學(xué)效應(yīng));它們的用途;它們的輸出信號(hào)類型以及制作它們的材料和工藝等。根據(jù)傳感器工作原理,可分為物理傳感器和化學(xué)傳感器二大類:傳感器工作原理的分類物理傳感器應(yīng)用的是物理效應(yīng),諸如壓電效應(yīng),磁致伸縮現(xiàn)象,離化、極化、熱電、光電、磁電等效應(yīng)。被測(cè)信號(hào)量的微小變化都將轉(zhuǎn)換成電信號(hào)。化學(xué)傳感器包括那些以化學(xué)吸附、電化學(xué)反應(yīng)等現(xiàn)象為因果關(guān)系的傳感器,被測(cè)信號(hào)量的微小變化也將轉(zhuǎn)換成電信號(hào)。有些傳感器既不能劃分到物理類,也不能劃分為化學(xué)類。大多數(shù)傳感器是以物理原理為基礎(chǔ)運(yùn)作的。化學(xué)傳感器技術(shù)問(wèn)題較多,例如可靠性問(wèn)題,規(guī)模生產(chǎn)的可能性,價(jià)格問(wèn)題等,解決了這類難題,化學(xué)傳感器的應(yīng)用將會(huì)有巨大增長(zhǎng)。常見(jiàn)傳感器的應(yīng)用領(lǐng)域和工作原理列于表1.1。按照其用途,傳感器可分類為: 壓力敏和力敏傳感器 ,位置傳感器 , 液面?zhèn)鞲衅?能耗傳感器 ,速度傳感器 ,熱敏傳感器,加速度傳感器,射線輻射傳感器 ,振動(dòng)傳感器,濕敏傳感器 ,磁敏傳感器,氣敏傳感器,真空度傳感器,生物傳感器等。以其輸出信號(hào)為標(biāo)準(zhǔn)可將傳感器分為: 模擬傳感器——將被測(cè)量的非電學(xué)量轉(zhuǎn)換成模擬電信號(hào)。數(shù)字傳感器——將被測(cè)量的非電學(xué)量轉(zhuǎn)換成數(shù)字輸出信號(hào)(包括直接和間接轉(zhuǎn)換)。膺數(shù)字傳感器——將被測(cè)量的信號(hào)量轉(zhuǎn)換成頻率信號(hào)或短周期信號(hào)的輸出(包括直接或間接轉(zhuǎn)換)。開(kāi)關(guān)傳感器——當(dāng)一個(gè)被測(cè)量的信號(hào)達(dá)到某個(gè)特定的閾值時(shí),傳感器相應(yīng)地輸出一個(gè)設(shè)定的低電平或高電平信號(hào)。
上傳時(shí)間: 2013-10-11
上傳用戶:zhangdebiao
超級(jí)單片機(jī)開(kāi)發(fā)工具,包含:模擬/數(shù)字轉(zhuǎn)換表計(jì)算,LED 編碼器,色環(huán)電阻阻值計(jì)算,Hex/Bin轉(zhuǎn)換,串口調(diào)試器,端口監(jiān)視器等實(shí)用功能 單片機(jī)開(kāi)發(fā)過(guò)程中用到的多功能工具,包括熱敏電阻RT值--HEX數(shù)據(jù)轉(zhuǎn)換;3種LED編碼;色環(huán)電阻計(jì)算器;HEX/BIN 文件互相轉(zhuǎn)換;eeprom數(shù)據(jù)到C/ASM源碼轉(zhuǎn)換;CRC校驗(yàn)生成;串口調(diào)試,帶簡(jiǎn)單而實(shí)用的數(shù)據(jù)分析功能;串口/并口通訊監(jiān)視等功能. 用C++ Builder開(kāi)發(fā),無(wú)須安裝,直接運(yùn)行,不對(duì)注冊(cè)表進(jìn)行操作。純綠色軟件。 1. 模擬/數(shù)字轉(zhuǎn)換表計(jì)算 本功能主要用于準(zhǔn)備用于查表計(jì)算的 R/T 表格,主要用于溫度、濁度等模擬量的測(cè)量,根據(jù)電路分壓電阻的位置分為兩種,可以參看圖示選擇正確的電路連接形式;可自定義分壓電阻阻值;目前支持8位 /10位轉(zhuǎn)換精度;可選擇生成匯編/C源代碼格式的數(shù)據(jù)等。 2. LED 編碼器 本功能主要用于自動(dòng)根據(jù)圖形信息、段位置信息生成可保存在單片機(jī)程序存儲(chǔ)器中供查表使用的數(shù)據(jù)。可自行定義字符的圖形及各段的位置信息;可以選擇LED類型,目前有 7段、14段、16段三種類型;自帶圖形定義,也可自定義并能保存自定義方案;自定義位置信息并可保存;可以生成 8位、4位編碼,4位編碼主要針對(duì)一些有 4個(gè)COM端的LED/LCD驅(qū)動(dòng)器;同樣可以保存為C/ASM格式數(shù)據(jù)。 3. 色環(huán)電阻阻值計(jì)算 本功能主要為記不住色環(huán)值的人(像我)用的,比較簡(jiǎn)單,單擊相應(yīng)環(huán)的相應(yīng)顏色,阻值將實(shí)時(shí)給出。 4. Hex/Bin轉(zhuǎn)換 Intel Hex格式文件和Bin格式文件相互轉(zhuǎn)換,本功能使用機(jī)會(huì)較少。 Hex/Bin文件轉(zhuǎn)換為文本方式(變量定義方式),將Hex文件或Bin文件轉(zhuǎn)換為C/ASM源代碼格式的數(shù)據(jù)。 CRC計(jì)算,提供3種計(jì)算方法。 5. 串口調(diào)試器 可以通過(guò)串口接收/發(fā)送數(shù)據(jù),作為普通的串口調(diào)試器,可以手動(dòng)發(fā)送所填內(nèi)容,也可以發(fā)送整個(gè)文件; 內(nèi)存映射功能,對(duì)于監(jiān)控單片機(jī)內(nèi)存非常方便,還可以定義內(nèi)存變量,自動(dòng)從接收到的數(shù)據(jù)中提取變量值,支持字節(jié)型、整型、長(zhǎng)整型、浮點(diǎn)型、雙精度型、位掩碼(可用于位變量)、數(shù)組型(其他不規(guī)則變量)等,同時(shí)支持10進(jìn)制、16進(jìn)制、2進(jìn)制顯示;可以自由選擇需要實(shí)時(shí)監(jiān)測(cè)的變量;變量方案可以存盤(pán)等等;可以設(shè)為固定長(zhǎng)度或定義首/尾標(biāo)志,設(shè)置內(nèi)存中實(shí)際起始地址,顯示時(shí)和計(jì)算變量時(shí)用;由map文件自動(dòng)讀取內(nèi)存變量(因條件所限,目前只支持由 ImageCraft C(ICC) 編譯器產(chǎn)生的map文件,歡迎提供其他編譯器的map文件樣本); 變量組合,適用于文本方式的變量監(jiān)測(cè),例如: Var1=1111#var2=2222#var3=333.333 通訊時(shí)可以選擇二進(jìn)制、文本方式顯示;可設(shè)置自動(dòng)滾屏;設(shè)置最大顯示行數(shù); 可以選擇多命令交互方式通訊,且可以作為主發(fā)方、從發(fā)方;主發(fā)時(shí)可以循環(huán)發(fā)送所選命令;從發(fā)時(shí)可以定義自動(dòng)應(yīng)答命令,即接收到表中所列的命令后,自動(dòng)用相應(yīng)內(nèi)容應(yīng)答,是不是很實(shí)用? 可以設(shè)為手動(dòng)發(fā)送或定時(shí)發(fā)送。 可自定義通訊超時(shí)時(shí)間。 可以保存歷史數(shù)據(jù),包括發(fā)送和接收數(shù)據(jù)! 計(jì)劃加入調(diào)制解調(diào)器控制。 6. 端口監(jiān)視器 監(jiān)視所選串口/并口的一切通訊活動(dòng)而不占用其資源,可以設(shè)置過(guò)濾條件,可同時(shí)監(jiān)視多個(gè)端口,可以保存數(shù)據(jù),可以直接記錄到文件中。
標(biāo)簽: 多功能 單片機(jī) 開(kāi)發(fā)工具
上傳時(shí)間: 2013-10-13
上傳用戶:大灰狼123456
超級(jí)單片機(jī)開(kāi)發(fā)工具,包含:模擬/數(shù)字轉(zhuǎn)換表計(jì)算,LED 編碼器,色環(huán)電阻阻值計(jì)算,Hex/Bin轉(zhuǎn)換,串口調(diào)試器,端口監(jiān)視器等實(shí)用功能 單片機(jī)開(kāi)發(fā)過(guò)程中用到的多功能工具,包括熱敏電阻RT值--HEX數(shù)據(jù)轉(zhuǎn)換;3種LED編碼;色環(huán)電阻計(jì)算器;HEX/BIN 文件互相轉(zhuǎn)換;eeprom數(shù)據(jù)到C/ASM源碼轉(zhuǎn)換;CRC校驗(yàn)生成;串口調(diào)試,帶簡(jiǎn)單而實(shí)用的數(shù)據(jù)分析功能;串口/并口通訊監(jiān)視等功能. 用C++ Builder開(kāi)發(fā),無(wú)須安裝,直接運(yùn)行,不對(duì)注冊(cè)表進(jìn)行操作。純綠色軟件。 1. 模擬/數(shù)字轉(zhuǎn)換表計(jì)算 本功能主要用于準(zhǔn)備用于查表計(jì)算的 R/T 表格,主要用于溫度、濁度等模擬量的測(cè)量,根據(jù)電路分壓電阻的位置分為兩種,可以參看圖示選擇正確的電路連接形式;可自定義分壓電阻阻值;目前支持8位 /10位轉(zhuǎn)換精度;可選擇生成匯編/C源代碼格式的數(shù)據(jù)等。 2. LED 編碼器 本功能主要用于自動(dòng)根據(jù)圖形信息、段位置信息生成可保存在單片機(jī)程序存儲(chǔ)器中供查表使用的數(shù)據(jù)。可自行定義字符的圖形及各段的位置信息;可以選擇LED類型,目前有 7段、14段、16段三種類型;自帶圖形定義,也可自定義并能保存自定義方案;自定義位置信息并可保存;可以生成 8位、4位編碼,4位編碼主要針對(duì)一些有 4個(gè)COM端的LED/LCD驅(qū)動(dòng)器;同樣可以保存為C/ASM格式數(shù)據(jù)。 3. 色環(huán)電阻阻值計(jì)算 本功能主要為記不住色環(huán)值的人(像我)用的,比較簡(jiǎn)單,單擊相應(yīng)環(huán)的相應(yīng)顏色,阻值將實(shí)時(shí)給出。 4. Hex/Bin轉(zhuǎn)換 Intel Hex格式文件和Bin格式文件相互轉(zhuǎn)換,本功能使用機(jī)會(huì)較少。 Hex/Bin文件轉(zhuǎn)換為文本方式(變量定義方式),將Hex文件或Bin文件轉(zhuǎn)換為C/ASM源代碼格式的數(shù)據(jù)。 CRC計(jì)算,提供3種計(jì)算方法。 5. 串口調(diào)試器 可以通過(guò)串口接收/發(fā)送數(shù)據(jù),作為普通的串口調(diào)試器,可以手動(dòng)發(fā)送所填內(nèi)容,也可以發(fā)送整個(gè)文件; 內(nèi)存映射功能,對(duì)于監(jiān)控單片機(jī)內(nèi)存非常方便,還可以定義內(nèi)存變量,自動(dòng)從接收到的數(shù)據(jù)中提取變量值,支持字節(jié)型、整型、長(zhǎng)整型、浮點(diǎn)型、雙精度型、位掩碼(可用于位變量)、數(shù)組型(其他不規(guī)則變量)等,同時(shí)支持10進(jìn)制、16進(jìn)制、2進(jìn)制顯示;可以自由選擇需要實(shí)時(shí)監(jiān)測(cè)的變量;變量方案可以存盤(pán)等等;可以設(shè)為固定長(zhǎng)度或定義首/尾標(biāo)志,設(shè)置內(nèi)存中實(shí)際起始地址,顯示時(shí)和計(jì)算變量時(shí)用;由map文件自動(dòng)讀取內(nèi)存變量(因條件所限,目前只支持由 ImageCraft C(ICC) 編譯器產(chǎn)生的map文件,歡迎提供其他編譯器的map文件樣本); 變量組合,適用于文本方式的變量監(jiān)測(cè),例如: Var1=1111#var2=2222#var3=333.333 通訊時(shí)可以選擇二進(jìn)制、文本方式顯示;可設(shè)置自動(dòng)滾屏;設(shè)置最大顯示行數(shù); 可以選擇多命令交互方式通訊,且可以作為主發(fā)方、從發(fā)方;主發(fā)時(shí)可以循環(huán)發(fā)送所選命令;從發(fā)時(shí)可以定義自動(dòng)應(yīng)答命令,即接收到表中所列的命令后,自動(dòng)用相應(yīng)內(nèi)容應(yīng)答,是不是很實(shí)用? 可以設(shè)為手動(dòng)發(fā)送或定時(shí)發(fā)送。 可自定義通訊超時(shí)時(shí)間。 可以保存歷史數(shù)據(jù),包括發(fā)送和接收數(shù)據(jù)! 計(jì)劃加入調(diào)制解調(diào)器控制。 6. 端口監(jiān)視器 監(jiān)視所選串口/并口的一切通訊活動(dòng)而不占用其資源,可以設(shè)置過(guò)濾條件,可同時(shí)監(jiān)視多個(gè)端口,可以保存數(shù)據(jù),可以直接記錄到文件中。
標(biāo)簽: 多功能 單片機(jī) 開(kāi)發(fā)工具
上傳時(shí)間: 2013-10-29
上傳用戶:lacsx
功能強(qiáng)大的一個(gè)b/s工作站
標(biāo)簽: 工作站
上傳時(shí)間: 2014-11-26
上傳用戶:hebmuljb
用匯編編寫(xiě)的河內(nèi)塔程序 將第一柱a上n-1個(gè)盤(pán)借助第二柱c移到第三柱b 把a(bǔ)上剩下的一個(gè)盤(pán)移到c 將n-1個(gè)盤(pán)從b借助a移到第三柱c 這三步是圖示河內(nèi)塔的根本方法 功能一:自己動(dòng)手移動(dòng)河內(nèi)塔 先按左右鍵選擇要移的盤(pán),按箭頭上鍵確定 再按左右鍵移到要的盤(pán) 如此,再根據(jù)河內(nèi)塔的規(guī)則確定較好的次數(shù)step2 功能二:圖示河內(nèi)塔移動(dòng)過(guò)程 根據(jù)河內(nèi)塔的基本方法,確定圖象,按任意鍵選下一步,(開(kāi)始時(shí)輸入level)
標(biāo)簽: 匯編 編寫(xiě) 程序 移動(dòng)
上傳時(shí)間: 2015-01-10
上傳用戶:chenbhdt
b/s模式的集新聞發(fā)布、管理與一體的新聞發(fā)布系統(tǒng),可以發(fā)布多個(gè)圖片的新聞,并且可以很好的排版頁(yè)面顯示的格式;每一篇新聞都可以有自己的關(guān)鍵字來(lái)描述,說(shuō)明該新聞的主要內(nèi)容,并且可以關(guān)聯(lián)該新聞內(nèi)容相似的新聞,新聞還可以無(wú)限分類 前臺(tái)是不需要認(rèn)證的,是供網(wǎng)站的訪問(wèn)者訪問(wèn)的,主要完成了以下功能: 1. 新聞瀏覽 2. 新聞查詢 3. 相關(guān)新聞自動(dòng)鏈接 4. 新聞評(píng)論 5. 新聞主頁(yè) 6. 新聞訪問(wèn)次數(shù)統(tǒng)計(jì) 7. 新聞分類列表 后臺(tái)主要是方便管理員和新聞發(fā)布員管理和發(fā)布新聞的,主要有以下功能: 1. 新聞主要版面的定義,修改,刪除 2. 新聞次要版面的定義,修改,刪除 3. 新聞的發(fā)布,修改,刪除,審核狀態(tài)的更改 4. 新聞系統(tǒng)的用戶的管理 5. 新聞系統(tǒng)用戶的密碼修改 6. 新聞日志記錄 7. 新聞數(shù)據(jù)統(tǒng)計(jì) 8. 系統(tǒng)郵件功能 9. 系統(tǒng)使用說(shuō)明 系統(tǒng)管理:admin/login.jsp 用戶名:administrator 用戶密碼:123456
標(biāo)簽: 模式 新聞 發(fā)布 新聞發(fā)布系統(tǒng)
上傳時(shí)間: 2014-01-01
上傳用戶:wangchong
該軟件用于抄表器 實(shí)現(xiàn)多功能表自動(dòng)抄表! 只需將其下載到9800型 抄表器即可運(yùn)行!
上傳時(shí)間: 2014-11-26
上傳用戶:stampede
使用的是API編程,可格式化、校驗(yàn)和讀寫(xiě)特殊扇區(qū)。可用作Windows下的磁盤(pán)加密。本函數(shù)還有以下兩個(gè)缺點(diǎn)以待改進(jìn): 1.本函數(shù)還只能讀能讀 A: 和 B:,即只能對(duì)軟盤(pán)操作 2.不能改變磁盤(pán)扇區(qū)大小,只能是標(biāo)準(zhǔn)的 512 個(gè)字節(jié)。 參數(shù)說(shuō)明: command 操作: 0 重置磁盤(pán) 2 讀扇區(qū) 3 寫(xiě)扇區(qū) 4 校驗(yàn)磁道 5 格式化磁道 8 得到設(shè)備參數(shù) (int 1EH) drive 驅(qū)動(dòng)器 A:=0 B:=1 head 磁頭號(hào),范圍 0 - 1 track 磁道號(hào),范圍 0 - 84 ( 80 - 84 為特殊磁道,通常用來(lái)加密 ) sector 扇區(qū)號(hào),范圍 0 - 255 ( 19 - 255 為非標(biāo)準(zhǔn)扇區(qū)編號(hào),通常用來(lái)加密) nsectors 每次讀或?qū)懙纳葏^(qū)數(shù),不能超出每磁道的最大扇區(qū)數(shù) buffer 數(shù)據(jù)寫(xiě)入或讀出的緩沖區(qū),大小為 512 個(gè)字節(jié) 返回值 ( 同 Int 13H ): 0x0 成功 0x1 無(wú)效的命令 0x3 磁盤(pán)被寫(xiě)保護(hù) 0x4 扇區(qū)沒(méi)有找到 0xa 發(fā)現(xiàn)壞扇區(qū) 0x80 磁盤(pán)沒(méi)有準(zhǔn)備好
標(biāo)簽: Windows API 函數(shù) 磁盤(pán)
上傳時(shí)間: 2013-12-05
上傳用戶:moerwang
基于B/S結(jié)構(gòu)的在線選課系統(tǒng).可以實(shí)現(xiàn)在線的學(xué)生選課\查看功能,教師開(kāi)課,查看功能,以及后臺(tái)的學(xué)生信息和教師信息的管理,它是以vbscrip為腳本,以SQL2000為后臺(tái)數(shù)據(jù)庫(kù)開(kāi)發(fā)的
標(biāo)簽: vbscrip 2000 SQL 后臺(tái)
上傳時(shí)間: 2013-12-12
上傳用戶:gut1234567
蟲(chóng)蟲(chóng)下載站版權(quán)所有 京ICP備2021023401號(hào)-1