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

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

提供技術(shù)支持

  • 單片機復位標志位的設(shè)置與應(yīng)用研究

    設(shè)置復位標志位便于區(qū)分不同原因引發(fā)的復位,作為一種新技術(shù)被越來越多的新型單片機所采納。例如Philips公司的P87LPC700和 P89LPC900系列、Freescale公司(原Motorola半導體部)的MC68HC05系列和MC68HC08系列、Sunplus公司的 SPMC65系列、Microchip公司的PIC系列等,內(nèi)部都設(shè)計了專門用于記錄各種復位標志的狀態(tài)寄存器。MC68HC08系列有一個復位狀態(tài)寄存器,負責記錄6種復位標志位:上電復位、引腳復位、看門狗復位、非法指令復位、非法地址復位和欠壓復位。SPMC65系列有一個系統(tǒng)控制寄存器,負責記錄5種復位標志位:上電復位、外部復位、看門狗復位、非法地址復位和欠壓復位。51兼容的P89LPC900系列有一個復位源寄存器,負責記錄6種復位標志位:欠壓復位、上電復位、外部復位、看門狗復位、軟件復位和UART收到間隔字符復位(主要作為進入ISP監(jiān)控程序的途徑之一)。就連初學者很常用的 AT89S51/52和P89C52X2,也在其電源控制寄存器PCON中增設(shè)了一個上電標志位POF。1、 復位標志位的設(shè)置方法傳統(tǒng)的80C51單片機沒有設(shè)計復位標志位的記錄功能,這應(yīng)該說是一種遺憾,那么能否通過一定的技術(shù)手段來彌補這個缺憾呢?這里給廣大80C51單片機用戶提供一種啟示和引導。實現(xiàn)復位標志位的記錄肯定需要一定的硬件電路支持,而這種電路的設(shè)計不存在固定模式。筆者利用一片MAX813L設(shè)計了一種支撐電路,如圖1所示,僅供讀者參考。

    標簽: 單片機復位 標志位 應(yīng)用研究

    上傳時間: 2013-10-21

    上傳用戶:lhw888

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

    有兩種方式可以讓設(shè)備和應(yīng)用程序之間聯(lián)系:1. 通過為設(shè)備創(chuàng)建的一個符號鏈;2. 通過輸出到一個接口WDM驅(qū)動程序建議使用輸出到一個接口而不推薦使用創(chuàng)建符號鏈的方法。這個接口保證PDO的安全,也保證安全地創(chuàng)建一個惟一的、獨立于語言的訪問設(shè)備的方法。一個應(yīng)用程序使用Win32APIs來調(diào)用設(shè)備。在某個Win32 APIs和設(shè)備對象的分發(fā)函數(shù)之間存在一個映射關(guān)系。獲得對設(shè)備對象訪問的第一步就是打開一個設(shè)備對象的句柄。 用符號鏈打開一個設(shè)備的句柄為了打開一個設(shè)備,應(yīng)用程序需要使用CreateFile。如果該設(shè)備有一個符號鏈出口,應(yīng)用程序可以用下面這個例子的形式打開句柄:hDevice = CreateFile("\\\\.\\OMNIPORT3",  GENERIC_READ | GENERIC_WRITE,FILE_SHARE_READ,  NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL ,NULL);文件路徑名的前綴“\\.\”告訴系統(tǒng)本調(diào)用希望打開一個設(shè)備。這個設(shè)備必須有一個符號鏈,以便應(yīng)用程序能夠打開它。有關(guān)細節(jié)查看有關(guān)Kdevice和CreateLink的內(nèi)容。在上述調(diào)用中第一個參數(shù)中前綴后的部分就是這個符號鏈的名字。注意:CreatFile中的第一個參數(shù)不是Windows 98/2000中驅(qū)動程序(.sys文件)的路徑。是到設(shè)備對象的符號鏈。如果使用DriverWizard產(chǎn)生驅(qū)動程序,它通常使用類KunitizedName來構(gòu)成設(shè)備的符號鏈。這意味著符號鏈名有一個附加的數(shù)字,通常是0。例如:如果鏈接名稱的主干是L“TestDevice”那么在CreateFile中的串就該是“\\\\.\\TestDevice0”。如果應(yīng)用程序需要被覆蓋的I/O,第六個參數(shù)(Flags)必須或上FILE_FLAG_OVERLAPPED。 使用一個輸出接口打開句柄用這種方式打開一個句柄會稍微麻煩一些。DriverWorks庫提供兩個助手類來使獲得對該接口的訪問容易一些,這兩個類是CDeviceInterface, 和 CdeviceInterfaceClass。CdeviceInterfaceClass類封裝了一個設(shè)備信息集,該信息集包含了特殊類中的所有設(shè)備接口信息。應(yīng)用程序能有用CdeviceInterfaceClass類的一個實例來獲得一個或更多的CdeviceInterface類的實例。CdeviceInterface類是一個單一設(shè)備接口的抽象。它的成員函數(shù)DevicePath()返回一個路徑名的指針,該指針可以在CreateFile中使用來打開設(shè)備。下面用一個小例子來顯示這些類最基本的使用方法: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)用程序獲得一個有效的設(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)建一個新的文件對象。這使得多個句柄可以映射同一個文件對象。當這個文件對象的最后一個用戶級句柄被撤銷后,I/O管理器調(diào)用CleanUp。當沒有任何用戶級和核心級的對文件對象的訪問的時候,I/O管理器調(diào)用Close。如果被打開的設(shè)備不支持指定的功能,則調(diào)用相應(yīng)的Win32將引起錯誤(無效功能)。以前為Windows95編寫的VxD的應(yīng)用程序代碼中可能會在打開設(shè)備的時候使用FILE_FLAG_DELETE_ON_CLOSE屬性。在Windows NT/2000中,建議不要使用這個屬性,因為它將導致沒有特權(quán)的用戶企圖打開這個設(shè)備,這是不可能成功的。I/O管理器將ReadFile和WriteFile的buff參數(shù)轉(zhuǎn)換成IRP域的方法依賴于設(shè)備對象的屬性。當設(shè)備設(shè)置DO_DIRECT_IO標志,I/O管理器將buff鎖住在存儲器中,并且創(chuàng)建了一個存儲在IRP中的MDL域。一個設(shè)備可以通過調(diào)用Kirp::Mdl來存取MDL。當設(shè)備設(shè)置DO_BUFFERED_IO標志,設(shè)備對象分別通過KIrp::BufferedReadDest或 KIrp::BufferedWriteSource為讀或?qū)懖僮鳙@得buff地址。當設(shè)備不設(shè)置DO_BUFFERED_IO標志也不設(shè)置DO_DIRECT_IO,內(nèi)核設(shè)置IRP 的UserBuffer域來對應(yīng)ReadFile或WriteFile中的buff參數(shù)。然而,存儲區(qū)并沒有被鎖住而且地址只對調(diào)用進程有效。驅(qū)動程序可以使用KIrp::UserBuffer來存取IRP域。對于DeviceIoControl調(diào)用,buffer參數(shù)的轉(zhuǎn)換依賴于特殊的I/O控制代碼,它不在設(shè)備對象的特性中。宏CTL_CODE(在winioctl.h中定義)用來構(gòu)造控制代碼。這個宏的其中一個參數(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)分配一個單一的緩沖來作為輸入與輸出。驅(qū)動程序必須在向輸出緩沖放數(shù)據(jù)之前拷貝輸入數(shù)據(jù)。驅(qū)動程序通過調(diào)用KIrp::IoctlBuffer獲得緩沖地址。在完成時,I/O管理器從系統(tǒng)緩沖拷貝數(shù)據(jù)到提供給Ring 3級調(diào)用者使用的緩沖中。驅(qū)動程序必須在結(jié)束前存儲拷貝到IRP的Information成員中的數(shù)據(jù)個數(shù)。如果控制代碼不指明METHOD_IN_DIRECT或METHOD_OUT_DIRECT,則DeviceIoControl的參數(shù)呈現(xiàn)不同的含義。參數(shù)InputBuffer被拷貝到一個系統(tǒng)緩沖,這個緩沖驅(qū)動程序可以通過調(diào)用KIrp::IoctlBuffer。參數(shù)OutputBuffer被映射到KMemory對象,驅(qū)動程序?qū)@個對象的訪問通過調(diào)用KIrp::Mdl來實現(xiàn)。對于METHOD_OUT_DIRECT,調(diào)用者必須有對緩沖的寫訪問權(quán)限。注意,對METHOD_NEITHER,內(nèi)核只提供虛擬地址;它不會做映射來配置緩沖。虛擬地址只對調(diào)用進程有效。這里是一個用METHOD_BUFFERED的例子:首先,使用宏CTL_CODE來定義一個IOCTL代碼:#define IOCTL_MYDEV_GET_FIRMWARE_REV \CTL_CODE (FILE_DEVICE_UNKNOWN,0,METHOD_BUFFERED,FILE_ANY_ACCESS)現(xiàn)在使用一個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ū)動程序中返回的字符串。sizeof(FirmwareRev),& FirmwareRevSize,  NULL // not overlapped I/O );如果輸出緩沖足夠大,設(shè)備拷貝串到里面并將拷貝的資結(jié)束設(shè)置到FirmwareRevSize中。在驅(qū)動程序中,代碼看起來如下所示: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 . . .   } }

    標簽: 驅(qū)動程序 應(yīng)用程序 接口

    上傳時間: 2013-10-17

    上傳用戶:gai928943

  • 自制ATMEL 89系列FLASH單片機編程器

    自制一臺ATMEL 89系列FLASH單片機編程器學習單片機最有用的恐怕是編程器和仿真機,一臺商品化的編程器至少要幾百元,仿真機價格更高,往往讓初學者難以選擇。這里介紹的一款國外電子網(wǎng)站推出的廉價51編程器,能夠讀寫最常用的12種51單片機,自己動手裝配一臺,既能鍛煉自己的動手能力,又能廉價地裝備一臺多用編程器,無論是學習單片機或業(yè)余時間搞開發(fā),都是一個非常好的選擇。筆者按照資料自制了一臺,十分好用,不敢獨享。特編譯了全部制作資料介紹給大家。這個編程器硬件使用標準的TTL系列器件而沒有使用特殊元件。它連接在計算機的并行端口,對PC的并口沒有特殊要求,所以配置很低的計算機也能用這個編程器。Atmel Flash 系列單片機是當前最流行的單片機,易于擦寫,不象OTP芯片容易造成浪費。特別是89系列單片機與大家熟悉的INTEL51系列單片機完全兼容,這個編程器支持的單片機主要是Atmel flash系列。支持的器件:  這個編程器支持以下ATMEL單片機AT89C51,AT89C52,AT89C55,AT89S51,AT89S52,AT89S53,AT89C51RC,AT89C55WD,AT89S8252,AT89C1051U,AT89C2051,AT89C4051注意:20腳的單片機需要一個簡單的適配器。(圖 2 ) 硬件:  圖1顯示了這個FLASH 編程器的電路圖,編程器和標準的計算機并口連接。電路圖中的U2是用于控制計算機和控制器之間的數(shù)據(jù)流,U4 鎖存低位地址字節(jié) ,U5 鎖存高位地址字節(jié)  ,U3用于產(chǎn)生控制信號給被編程的單片機。IC U1用于產(chǎn)生編程脈沖給單片機.當U7提供編程電壓給控制器時,電源部分用U8產(chǎn)生邏輯5v供給。IC U6用于產(chǎn)生5V或6.5V VDD 電源電壓給單片機。

    標簽: ATMEL FLASH 單片機編程器

    上傳時間: 2013-10-18

    上傳用戶:bakdesec

  • 改善基于微控制器的應(yīng)用的瞬態(tài)免疫性能

    家電制造業(yè)的競爭日益激烈,市場調(diào)整壓力越來越大,原始設(shè)備制造商們(OEM)為了面對這一挑戰(zhàn),必須在滿足電磁兼容性的條件下,不斷降低產(chǎn)品的成本。由于強調(diào)成本控制,為防止由電源和信號線的瞬變所產(chǎn)生的電器故障而實施必要的瞬態(tài)免疫保護,對于家電設(shè)計者來說變得更具挑戰(zhàn)性。由于傳統(tǒng)的電源設(shè)計和電磁干擾(EMI)控制措施為節(jié)約成本讓路,家電設(shè)計者必須開發(fā)出新的技術(shù)來滿足不斷調(diào)整的電磁兼容(EMC)需求。本應(yīng)用筆記探討了瞬態(tài)電氣干擾對嵌入式微控制器(MCU)的影響,并提供了切實可行的硬件和軟件設(shè)計技術(shù),這些技術(shù)可以為電快速瞬變(EFT)、靜電放電(ESD)以及其它電源線或信號線的短時瞬變提供低成本的保護措施。雖然這種探討是主要針對家電制造商,但是也適用于消費電子、工業(yè)以及汽車電子方面的應(yīng)用。

    標簽: 微控制器 瞬態(tài)免疫 性能

    上傳時間: 2013-11-22

    上傳用戶:csgcd001

  • PIC的C語言編程知識

    用C 語言來開發(fā)單片機系統(tǒng)軟件最大的好處是編寫代碼效率高、軟件調(diào)試直觀、維護升級方便、代碼的重復利用率高、便于跨平臺的代碼移植等等,因此C 語言編程在單片機系統(tǒng)設(shè)計中已得到越來越廣泛的運用。針對PIC 單片機的軟件開發(fā),同樣可以用C 語言實現(xiàn)。但在單片機上用C 語言寫程序和在PC 機上寫程序絕對不能簡單等同。現(xiàn)在的PC 機資源十分豐富,運算能力強大,因此程序員在寫PC 機的應(yīng)用程序時幾乎不用關(guān)心編譯后的可執(zhí)行代碼在運行過程中需要占用多少系統(tǒng)資源,也基本不用擔心運行效率有多高。寫單片機的C 程序最關(guān)鍵的一點是單片機內(nèi)的資源非常有限,控制的實時性要求又很高,因此,如果沒有對單片機體系結(jié)構(gòu)和硬件資源作詳盡的了解,以筆者的愚見認為是無法寫出高質(zhì)量實用的C 語言程序。這就是為什么前面所有章節(jié)中的的示范代碼全部用基礎(chǔ)的匯編指令實現(xiàn)的原因,希望籍此能使讀者對PIC 單片機的指令體系和硬件資源有深入了解,在這基礎(chǔ)之上再來討論C 語言編程,就有水到渠成的感覺。本書圍繞中檔系列PIC 單片機來展開討論,Microchip 公司自己沒有針對中低檔系列PIC單片機的C 語言編譯器,但很多專業(yè)的第三方公司有眾多支持PIC 單片機的C 語言編譯器提供,常見的有Hitech、CCS、IAR、Bytecraft 等公司。其中筆者最常用的是Hitech 公司的PICC編譯器,它穩(wěn)定可靠,編譯生成的代碼效率高,在用PIC 單片機進行系統(tǒng)設(shè)計和開發(fā)的工程師群體中得到廣泛認可。其正式完全版軟件需要購置,但在其網(wǎng)站上有限時的試用版供用戶評估。另外,Hitech 公司針對廣大PIC 的業(yè)余愛好者和初學者還提供了完全免費的學習版PICC-Lite 編譯器套件,它的使用方式和完全版相同,只是支持的PIC 單片機型號限制在PIC16F84、PIC16F877 和PIC16F628 等幾款。這幾款Flash 型的單片機因其所具備的豐富的片上資源而最適用于單片機學習入門,因此筆者建議感興趣的讀者可從PICC-Lite 入手掌握PIC 單片機的C 語言編程。

    標簽: PIC C語言編程

    上傳時間: 2013-11-17

    上傳用戶:aa54

  • keil入門實例教程

    單片機開發(fā)中除必要的硬件外,同樣離不開軟件,我們寫的匯編語言源程序要變?yōu)镃PU可以執(zhí)行的機器碼有兩種方法,一種是手工匯編,另一種是機器匯編,目前已極少使用手工匯編的方法了。機器匯編是通過匯編軟件將源程序變?yōu)闄C器碼,用于MCS-51 單片機的匯編軟件有早期的A51,隨著單片機開發(fā)技術(shù)的不斷發(fā)展,從普遍使用匯編語言到逐漸使用高級語言開發(fā),單片機的開發(fā)軟件也在不斷發(fā)展,Keil 軟件是目前最流行開發(fā)MCS-51 系列單片機的軟件,這從近年來各仿真機廠商紛紛宣布全面支持Keil 即可看出。Keil 提供了包括C編譯器、宏匯編、連接器、庫管理和一個功能強大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個集成開發(fā)環(huán)境(uVision)將這些部份組合在一起。運行Keil 軟件需要Pentium 或以上的CPU,16MB或更多RAM、20M 以上空閑的硬盤空間、WIN98、NT、WIN2000、WINXP等操作系統(tǒng)。掌握這一軟件的使用對于使用51 系列單片機的愛好者來說是十分必要的,如果你使用C 語言編程,那么Keil 幾乎就是你的不二之選(目前在國內(nèi)你只能買到該軟件、而你買的仿真機也很可能只支持該軟件),即使不使用C 語言而僅用匯編語言編程,其方便易用的集成環(huán)境、強大的軟件仿真調(diào)試工具也會令你事半功倍。我們將通過一些實例來學習Keil 軟件的使用,在這一部份我們將學習如何輸入源程序,建立工程、對工程進行詳細的設(shè)置,以及如何將源程序變?yōu)槟繕舜a。圖1 所示電路圖使用89C51 單片機作為主芯片,這種單片機性屬于MCS-51 系列,其內(nèi)部有4K 的FLASH ROM,可以反復擦寫,非常適于做實驗。89C51 的P1 引腳上接8 個發(fā)光二極管,P3.2~P3.4 引腳上接4 個按鈕開關(guān),我們的第一個任務(wù)是讓接在P1 引腳上的發(fā)光二極管依次循環(huán)點亮。 一、Keil 工程的建立首先啟動Keil 軟件的集成開發(fā)環(huán)境,這里假設(shè)讀者已正確安裝了該軟件,可以從桌面上直接雙擊uVision 的圖標以啟動該軟件。UVison啟動后,程序窗口的左邊有一個工程管理窗口,該窗口有3 個標簽,分別是Files、Regs、和Books,這三個標簽頁分別顯示當前項目的文件結(jié)構(gòu)、CPU 的寄存器及部份特殊功能寄存器的值(調(diào)試時才出現(xiàn))和所選CPU 的附加說明文件,如果是第一次啟動Keil,那么這三個標簽頁全是空的。

    標簽: keil 教程

    上傳時間: 2013-12-26

    上傳用戶:liulinshan2010

  • 帶I2C串行CMOS EEPROM、精密復位控制器和看門狗定

    帶I2C串行CMOS EEPROM、精密復位控制器和看門狗定時器的監(jiān)控電路 特性􀂄 看門狗監(jiān)控SDA信號 (CAT1161)􀂄 兼容400KHz 的I2C總線􀂄 操作電壓范圍為2.7V~6.0V􀂄 低功耗CMOS 技術(shù)􀂄 16 字節(jié)的頁寫緩沖區(qū)􀂄 內(nèi)置誤寫保護電路-Vcc鎖定-寫保護管腳WP􀂄 復位高電平或低電平有效-精確的電源電壓監(jiān)控-支持5V,3.3V 和3V 的系統(tǒng)-5個復位門檻電壓可供選擇􀂄 1,000,000個編程/擦除周期􀂄 手動復位􀂄 數(shù)據(jù)可保存100 年􀂄 8 腳DIP 封裝或8 腳SOIC 封裝􀂄 商業(yè)和工業(yè)級溫度范圍描述CAT1161/2 為基于微控器的系統(tǒng)提供了一個完整的存儲器和電源監(jiān)控解決方案。它們利用低功耗CMOS技術(shù)將16k帶硬件存儲器寫保護功能的串行EEPROM 存儲器、用于掉電保護的電源監(jiān)控電路和一個看門狗定時器集成到一塊芯片上。存儲器采用I2C 總線接口。當系統(tǒng)由于軟件或硬件干擾而被終止或“掛起”時,1.6 秒的看門狗電路將復位系統(tǒng),使系統(tǒng)恢復正常。CAT1161的看門狗電路監(jiān)控著SDA,這就可以省去額外的PC板跟蹤電路。低價位的CAT1162不含看門狗定時器。電源監(jiān)控和復位電路可在系統(tǒng)上電/下電時保護存儲器和系統(tǒng)控制器,防止掉電條件的產(chǎn)生。CAT1161/2的5個門檻電壓可支持5V、3.3V和3V的系統(tǒng)。一旦電源電壓超出范圍,復位信號有效,禁止微控制器、ASIC或外圍器件繼續(xù)工作。復位信號在電源電壓超過復位門檻電壓后的200ms內(nèi)仍保持有效。由于帶有高電平和低電平復位信號,因此CAT1161/2可以很方便地連接到微控制器和其它IC。另外,復位管腳還可用作手動按鍵復位的去抖輸入。 CAT1161/2 的存儲器構(gòu)造成16字節(jié)的頁。除此之外,寫保護管腳WP和VCC 檢測電路提供的硬件數(shù)據(jù)保護功能可防止在Vcc降到低于復位門檻電壓或上電時Vcc上升到復位門檻電壓之前對存儲器的寫操作。器件包含8腳DIP和表貼8腳SOIC兩種封裝形式。

    標簽: EEPROM CMOS I2C 串行

    上傳時間: 2014-03-19

    上傳用戶:蟲蟲蟲蟲蟲蟲

  • USB/EPP轉(zhuǎn)接系統(tǒng)的硬件設(shè)計與分析

    摘要:設(shè)計并實現(xiàn)了一個USB/EPP 轉(zhuǎn)接系統(tǒng),給出其硬件設(shè)計方案并討論了相關(guān)技術(shù)細節(jié), 使其實現(xiàn)USB 接口到EPP接口的相互數(shù)據(jù)轉(zhuǎn)發(fā)。使僅具有EPP 接口的傳統(tǒng)儀器設(shè)備借助于USB/EPP 轉(zhuǎn)接系統(tǒng)擁有USB 總線所提供的即插即用和設(shè)備插架特性, 方便其通過USB 接口靈活接入同時擁有多個外設(shè)的計算機主機系統(tǒng)。關(guān)鍵詞:USB;EPP;轉(zhuǎn)接系統(tǒng)中圖分類號:TP368.3 文獻標識碼:A文章編號:1008- 0570(2005)11- 2- 0166- 03 在傳統(tǒng)的I/O 模式中,計算機外設(shè)通常映射為CPU 中固定I/O 地址,要求由主機分配一個指定的IRQ 中斷請求。由于PC 機的端口和中斷資源有限,因而使外設(shè)的可擴展性受到局限;同時,隨著電腦應(yīng)用的拓展,PC 機的外設(shè)接口越來越多,外設(shè)對系統(tǒng)資源的獨占性也容易導致系統(tǒng)資源沖突。由于各種外部設(shè)備不斷增加,容易導致各種I/O 沖突。由Intel、Compaq、Microsoft、IBM等廠商所提出的USB 總線標準,基于即插即用和設(shè)備插架技術(shù),設(shè)備接入時不影響應(yīng)用程序的運行,具有良好的可擴充性和擴展的方便性。目前USB 協(xié)議已經(jīng)發(fā)展到了最新的2.0 版本,可支持峰值傳輸速率為480Mbps 的高速外設(shè),可提供4~8 個USB 2.0 接口,同時通過USB 集線器(HUB)的擴展還可以支持多達127 個外設(shè)同時連接,基本上解決了各種外設(shè)同時存在同時使用的所有問題。基于USB 接口的上述優(yōu)點,目前的計算機,特別是筆記本計算機基本上都只配備USB 接口,而取消了傳統(tǒng)的串口和并口,這對那些以前購置的需要與計算機進行通信而只有串口或并口的各種儀器的繼續(xù)使用造成了極大的障礙。 針對傳統(tǒng)的數(shù)字化儀器與計算機通信中存在的接口不足的問題,本文設(shè)計了一個USB/EPP 轉(zhuǎn)接系統(tǒng),使其能夠從計算機的USB 接口接收數(shù)據(jù),經(jīng)過格式轉(zhuǎn)換,從USB/EPP 轉(zhuǎn)接系統(tǒng)的并行接口EPP 發(fā)送給傳統(tǒng)的儀器設(shè)備;同時也能夠從USB/EPP 轉(zhuǎn)接系統(tǒng)的并行接口EPP 接收數(shù)據(jù),將其轉(zhuǎn)化為USB 幀格式,并發(fā)送到計算機的USB 接口。從而使僅具有EPP 接口的傳統(tǒng)儀器設(shè)備借助于USB/EPP 轉(zhuǎn)接系統(tǒng),可以繼續(xù)正常使用。2 USB 總線2.1 USB 系統(tǒng)描述及總線協(xié)議USB 是一種電纜總線,支持在主機和各種即插即用外設(shè)之間進行數(shù)據(jù)傳輸。由主機預定的標準協(xié)議使各種設(shè)備分享USB 帶寬,當其它設(shè)備和主機在運行時,總線允許添加、設(shè)置、使用以及拆除外設(shè),這為多個儀器設(shè)備共享同一個主計算機提供了可能。USB 協(xié)議采用了管道模型的軟硬件協(xié)議,摒棄了一般外設(shè)協(xié)議的端口映射方式,從而有效地避免了計算機應(yīng)用系統(tǒng)I/O 端口地址沖突。根據(jù)功能劃分,一個USB 系統(tǒng)由三個部分組成:即USB 互連、USB 主機和USB 設(shè)備。圖1 給出了USB系統(tǒng)的通用拓撲結(jié)構(gòu)。

    標簽: USB EPP 轉(zhuǎn)接

    上傳時間: 2013-10-09

    上傳用戶:半熟1994

  • USB攝像頭微處理器硬件設(shè)計

    USB2.0 攝像頭微處理器支持高速USB2.0 接口,內(nèi)嵌強勁的圖像后處理單元,JPEG 高速編譯碼器,支持高達200 萬像素的CMOS 傳感器接口和CCD 傳感器接口,處理器設(shè)計的產(chǎn)品可以實現(xiàn)獨特的運動監(jiān)測功能與臉部追蹤功能,這不僅大大加強了顯示效果,提高了畫面的品質(zhì),更拓展了PC 攝像頭的應(yīng)用領(lǐng)域,如增強的實時視頻聊天功能和門禁監(jiān)測系統(tǒng)。關(guān)鍵詞:USB2.0,微控制器,硬件設(shè)計1.引言USB2.0 攝像頭微處理器支持高速USB2.0 接口,內(nèi)嵌強勁的圖像后處理單元,JPEG 高速編譯碼器,支持高達200 萬像素的CMOS 傳感器接口和CCD 傳感器接口,處理器設(shè)計的產(chǎn)品可以實現(xiàn)獨特的運動監(jiān)測功能與臉部追蹤功能,這不僅大大加強了顯示效果,提高了畫面的品質(zhì),更拓展了PC 攝像頭的應(yīng)用領(lǐng)域,如增強的實時視頻聊天功能和門禁監(jiān)測系統(tǒng)。主要功能:USB2.0 高速傳輸并兼容USB1.1;高速圖像后處理單元;JPEG 高速編譯碼器;VGA 下30 幀/秒高速傳輸;CMOS/CCD 接口;內(nèi)置8 比特微控制器。不儀具備以上的先進特性,還擁有以下多種可擴展性:多個GPIO 接口為增加連拍、LED 指示燈、快捷鍵等功能提供了無限可能;USB2.0 兼容USB1.1,為攝像頭的廣泛的使用增加了保障;支持多種操作系統(tǒng),如64-bit Window,Windows XP,Linux,Mac,VxWorks,WinCE等等。以下就是對USB2.0 攝像頭微處理器的硬件設(shè)計方法及外圍電路分布的介紹。2.系統(tǒng)硬件設(shè)計2.1 振蕩器USB2.0 攝像頭微處理器的鐘頻是12MHz,外部時鐘頻率穩(wěn)定性必須小于±50ppm。圖1 是振蕩器電路的設(shè)計參考圖。

    標簽: USB 攝像頭 微處理器 硬件設(shè)計

    上傳時間: 2014-01-16

    上傳用戶:dumplin9

  • 單片機在工業(yè)無線網(wǎng)絡(luò)中的具體應(yīng)用

     如同今天的許多通用單片機(MCU)已經(jīng)把USB、CAN和以太網(wǎng)作為標準外設(shè)集成在芯片內(nèi)部一樣,越來越多的無線網(wǎng)絡(luò)芯片和無線網(wǎng)絡(luò)解決方案也在向集成SoC 方向發(fā)展,比如第一代產(chǎn)品,Nordic公司nRF905,Chipcon公司cc1010 他們集成了8051兼容的單片機.這些無線單片機適合一般的點對點和點對多點的私有網(wǎng)絡(luò)應(yīng)用,如單一產(chǎn)品的遙控器和抄表裝置等。無線通訊技術(shù)給智能裝置的互連互通提供了便捷的途徑,工業(yè)無線網(wǎng)絡(luò)作為面向工業(yè)和家庭自動化的網(wǎng)絡(luò)技術(shù)也正在向著智能,標準和節(jié)能方向發(fā)展。  目前在工業(yè)控制和消費電子領(lǐng)域使用的無線網(wǎng)絡(luò)技術(shù)有ZigBee、無線局域網(wǎng)(Wi-Fi)、藍牙(Blutooth)、GPRS通用分組無線業(yè)務(wù)、 ISM、IrDA等, 未來還能有3G、超寬頻(UWB)、無線USB、Wimax等。 當然還有大量的私有和專用無線網(wǎng)絡(luò)在工業(yè)控制和消費電子裝置中使用,其中ZigBee、GPRS是在目前在國內(nèi)工業(yè)控制中討論和使用比較多的兩種,藍牙和無線局域網(wǎng)是在消費電子產(chǎn)品如手機、耳機、打印機、照相機和家庭中小企業(yè)網(wǎng)絡(luò)中廣泛使用的無線協(xié)議(個別工業(yè)產(chǎn)品也有應(yīng)用,如無線視頻監(jiān)控和汽車音響系統(tǒng)),當然私有無線網(wǎng)絡(luò)技術(shù)和產(chǎn)品在工業(yè)也有很多的應(yīng)用。  ZigBee是一個低功耗、短距離和低速的無線網(wǎng)絡(luò)技術(shù),工作在2.4GHz國際免執(zhí)照的頻率,在IEEE標準上它和無線局域網(wǎng)、藍牙同屬802家族中的無線個人區(qū)域網(wǎng)絡(luò), ZigBee是有兩部分組成,物理和鏈路層符合IEEE802.15.4, 網(wǎng)絡(luò)和應(yīng)用層符合ZigBee聯(lián)盟的規(guī)范。ZigBee聯(lián)盟是在2002年成立的非盈利組織,有包括TI、霍尼威爾、華為在內(nèi)兩百多家成員, ZigBee聯(lián)盟致力推廣兼容802.15.4和ZigBee協(xié)議的平臺, 制定網(wǎng)絡(luò)層和應(yīng)用架構(gòu)的公共規(guī)范,希望在樓宇自動化、居家控制、家用電器、工業(yè)自動控制和電腦外設(shè)等多方面普及ZigBee標準。  GPRS是在現(xiàn)有的GSM 網(wǎng)絡(luò)發(fā)展出來的分組數(shù)據(jù)承載業(yè)務(wù),它工作在標準的GSM頻率,由于是一個分組交換系統(tǒng),它適合工業(yè)上的突發(fā),少量的數(shù)據(jù)傳輸,還因為GSM網(wǎng)絡(luò)覆蓋廣泛,永遠在線的特點,GPRS特點適合工業(yè)控制中的遠程監(jiān)控和測量系統(tǒng)。在工業(yè)控制應(yīng)用中GPRS 芯片一般是以無線數(shù)傳模塊形式出現(xiàn)的,它通過RS232全雙工接口和單片機連接,軟件上這些模塊都內(nèi)置了GPRS,PPP和TCP/IP協(xié)議,單片機側(cè)通過AT指令集向模塊發(fā)出測試,連接和數(shù)據(jù)收發(fā)指令,GPRS模塊通過中國移動cmnet進入互聯(lián)網(wǎng)和其他終端或者服務(wù)器通訊。目前市場常見的模塊有西門子G24TC45、TC35i,飛思卡爾G24,索愛GR47/48, 還有Wavecom 的集成了ARM9核的GPRS SoC模塊WMP50/100。GPRS模塊有區(qū)分自帶TCP/IP協(xié)議和不帶協(xié)議兩種,一般來講,如果是單片機側(cè)有嵌入式操作系統(tǒng)和TCP/IP協(xié)議支持的話或者應(yīng)用的要求只是收發(fā)短信和語音功能的話,可以選擇不帶協(xié)議的模塊。  先進的SoC技術(shù)正在無線應(yīng)用領(lǐng)域發(fā)揮重要的作用。德州儀器收購了Chipcon公司以后發(fā)布的CC2430 是市場上首款SoC的ZigBee單片機, 見圖1,它把協(xié)議棧z-stack集成在芯片內(nèi)部的閃存里面, 具有穩(wěn)定可靠的CC2420收發(fā)器,增強性的8051內(nèi)核,8KRAM,外設(shè)有I/O 口,ADC,SPI,UART 和AES128 安全協(xié)處理器,三個版本分別是32/64/128K的閃存,以128K為例,扣除基本z-stack協(xié)議還有3/4的空間留給應(yīng)用代碼,即使完整的ZigBee協(xié)議,還有近1/2的空間留給應(yīng)用代碼,這樣的無線單片機除了處理通訊協(xié)議外,還可以完成一些監(jiān)控和顯示任務(wù)。這樣無線單片機都支持通過SPI或者UART與通用單片機或者嵌入式CPU結(jié)合。 2008年4月發(fā)表CC2480新一代單片ZibBee認證處理器就展示出和TI MSP430 通用的低功耗單片機結(jié)合的例子。圖1 CC2430應(yīng)用電路  工業(yè)控制領(lǐng)域的另一個芯片巨頭——飛思卡爾的單片ZigBee處理器MC1321X的方案也非常類似,集成了HC08單片機核心, 16/32/64K 閃存,外設(shè)有GPIO, I2C和ADC, 軟件是Beestack 協(xié)議,只是最多4K RAM 對于更多的任務(wù)顯得小了些。但是憑借32位單片機Coldfire和系統(tǒng)軟件方面經(jīng)驗和優(yōu)勢, 飛思卡爾在滿足用戶應(yīng)用的彈性需求方面作的更有特色,它率先能夠提供從低-中-高各個層面的解決方案,見圖2。

    標簽: 單片機 工業(yè)無線網(wǎng)絡(luò)

    上傳時間: 2013-11-02

    上傳用戶:momofiona

主站蜘蛛池模板: 双牌县| 长顺县| 鹤庆县| 治县。| 抚松县| 锦屏县| 建湖县| 梅州市| 沂水县| 榆林市| 米脂县| 托克逊县| 龙岩市| 玛多县| 浪卡子县| 大埔区| 西峡县| 宝应县| 漯河市| 唐山市| 师宗县| 平陆县| 林芝县| 九龙城区| 晋中市| 响水县| 黄浦区| 北川| 永修县| 共和县| 定远县| 明光市| 民丰县| 屏东市| 瑞丽市| 南靖县| 叶城县| 婺源县| 泰安市| 耒阳市| 奉化市|