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

蟲蟲首頁(yè)| 資源下載| 資源專輯| 精品軟件
登錄| 注冊(cè)

《DSP集成開(kāi)發(fā)(fā)環(huán)(huán)境CCS開(kāi)發(fā)(fā)指南》

  • PCA9536 4bit I2C bus and SMBus

    The PCA9536 is an 8-pin CMOS device that provides 4 bits of General Purpose parallelInput/Output (GPIO) expansion for I2C-bus/SMBus applications and was developed toenhance the NXP Semiconductors family of I2C-bus I/O expanders. I/O expanders providea simple solution when additional I/O is needed for ACPI power switches, sensors,push buttons, LEDs, fans, etc.

    標(biāo)簽: SMBus 9536 4bit PCA

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

    上傳用戶:731140412

  • PCA9537 4bit I2C bus and SMBus

    The PCA9537 is a 10-pin CMOS device that provides 4 bits of General Purpose parallelInput/Output (GPIO) expansion with interrupt and reset for I2C-bus/SMBus applicationsand was developed to enhance the NXP Semiconductors family of I2C-bus I/O expanders.I/O expanders provide a simple solution when additional I/O is needed for ACPI powerswitches, sensors, push-buttons, LEDs, fans, etc.

    標(biāo)簽: SMBus 9537 4bit PCA

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

    上傳用戶:wuchunzhong

  • PCA9538 8bit I2C bus and SMBus

    The PCA9538 is a 16-pin CMOS device that provides 8 bits of General Purpose parallelInput/Output (GPIO) expansion with interrupt and reset for I2C-bus/SMBus applicationsand was developed to enhance the NXP Semiconductors family of I2C-bus I/O expanders.I/O expanders provide a simple solution when additional I/O is needed for ACPI powerswitches, sensors, push-buttons, LEDs, fans, etc.

    標(biāo)簽: SMBus 9538 8bit PCA

    上傳時(shí)間: 2014-01-24

    上傳用戶:youmo81

  • PCA9539 PCA9539R 16-bit I2C-bu

    The PCA9539; PCA9539R is a 24-pin CMOS device that provides 16 bits of GeneralPurpose parallel Input/Output (GPIO) expansion with interrupt and reset forI2C-bus/SMBus applications and was developed to enhance the NXP Semiconductorsfamily of I2C-bus I/O expanders. I/O expanders provide a simple solution when additionalI/O is needed for ACPI power switches, sensors, push buttons, LEDs, fans, etc.

    標(biāo)簽: 9539 PCA 9539R C-bu

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

    上傳用戶:ewtrwrtwe

  • PCA9555 16bit I2C-bus and SMBu

    The PCA9555 is a 24-pin CMOS device that provides 16 bits of General Purpose parallelInput/Output (GPIO) expansion for I2C-bus/SMBus applications and was developed toenhance the NXP Semiconductors family of I2C-bus I/O expanders. The improvementsinclude higher drive capability, 5 V I/O tolerance, lower supply current, individual I/Oconfiguration, and smaller packaging. I/O expanders provide a simple solution whenadditional I/O is needed for ACPI power switches, sensors, push buttons, LEDs, fans, etc.The PCA9555 consists of two 8-bit Configuration (Input or Output selection); Input, Outputand Polarity Inversion (active HIGH or active LOW operation) registers. The systemmaster can enable the I/Os as either inputs or outputs by writing to the I/O configurationbits. The data for each Input or Output is kept in the corresponding Input or Outputregister. The polarity of the read register can be inverted with the Polarity Inversionregister. All registers can be read by the system master. Although pin-to-pin and I2C-busaddress compatible with the PCF8575, software changes are required due to theenhancements, and are discussed in Application Note AN469.

    標(biāo)簽: C-bus 9555 SMBu PCA

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

    上傳用戶:fredguo

  • 如何設(shè)置使SPMC75F2413A進(jìn)入節(jié)電模式

    SPMC75低功耗操作:本應(yīng)用例介紹如何設(shè)置使SPMC75F2413A進(jìn)入節(jié)電模式。1.2 模式簡(jiǎn)介SPMC75F2413A有標(biāo)準(zhǔn)模式和兩種節(jié)電模式(等待模式和就緒模式),相應(yīng)功能如下:􀂾 標(biāo)準(zhǔn)模式(Normal)芯片在標(biāo)準(zhǔn)模式下運(yùn)行耗電最大,所有的外設(shè)都可用。􀂾 等待模式(Wait)等待模式下,只有CPU掉電停止工作以降低功耗。其它外設(shè)保持著先前的狀態(tài)并且功能可用。一旦喚醒,CPU將繼續(xù)工作,執(zhí)行接下去的指令。􀂾 就緒模式(Standby)就緒模式下所有的模塊都變?yōu)闊o(wú)效,此時(shí)功耗達(dá)到最小。喚醒后,CPU復(fù)位并回到標(biāo)準(zhǔn)運(yùn)行模式。其它外設(shè)可以通過(guò)軟件分別設(shè)置關(guān)閉。就緒模式下所有功能都會(huì)關(guān)閉,只有系統(tǒng)時(shí)鐘仍在工作。如果按鍵喚醒功能為有效,這兩種模式都可以通過(guò)按鍵喚醒。具體喚醒源的分類及喚醒功能的介紹請(qǐng)參考《SPMC75F2413A編程指南》。【注意】如果MCP定時(shí)器3或定時(shí)器4已經(jīng)處于PWM輸出模式時(shí),芯片不會(huì)進(jìn)入等待或就緒模式。同樣在仿真模式下也無(wú)法進(jìn)入等待或就緒模式。

    標(biāo)簽: 2413A F2413 SPMC 2413

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

    上傳用戶:ming52900

  • 用TPM2產(chǎn)生PWM和作脈沖寬度、周期測(cè)量

    用TPM2產(chǎn)生PWM和作脈沖寬度、周期測(cè)量:SPMC75F2413A的TPM2除具有一般的定時(shí)/計(jì)數(shù)的功能外,還有兩路的PWM輸出/兩路的捕獲功能,因此增強(qiáng)和擴(kuò)展了TPM2在一般領(lǐng)域中的應(yīng)用,本應(yīng)用例介紹TPM2產(chǎn)生脈沖及捕獲(測(cè)量)脈沖。1.2 TPM2簡(jiǎn)介SPMC75F2413A有一個(gè)通用16位TPM定時(shí)器,即TPM定時(shí)器2,支持捕獲輸入和PWM輸出功能。在電機(jī)控制速度反饋環(huán)應(yīng)用中,定時(shí)器2可以用來(lái)提供的系統(tǒng)時(shí)間基準(zhǔn)。定時(shí)器2為捕獲輸入和PWM輸出操作提供兩個(gè)輸入/輸出引腳。詳細(xì)介紹請(qǐng)參考《SPMC75F2413A編程指南》TPM定時(shí)器2模塊部分。

    標(biāo)簽: TPM2 PWM 脈沖寬 周期

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

    上傳用戶:司令部正軍級(jí)

  • 輸入輸出與接口技術(shù)

    2.1.1 I/O接口基本概念1.為什么要引入接口微機(jī)和I/O設(shè)備的信息類型和格式可能不一樣。微機(jī)和I/O設(shè)備信號(hào)傳輸處理的速度可能不匹配。不用接口, I/O直接接CPU,隨著外設(shè)增加,會(huì)大大降低CPU的效率。I/O直接接CPU,會(huì)使外設(shè)硬件結(jié)構(gòu)過(guò)于依賴CPU,對(duì)外設(shè)本身發(fā)展不利。2.接口的概念  定義:接口是CPU與“外部世界”的連接電路,負(fù)責(zé)“中轉(zhuǎn)”各種信息。 分類:存儲(chǔ)器接口和I/O接口。 位置:介于系統(tǒng)總線與外部設(shè)備之間。3.I/O接口與I/O設(shè)備不同I/O設(shè)備對(duì)應(yīng)I/O接口不同。I/O接口受CPU控制,I/O設(shè)備受I/O接口控制。為增加通用性,I/O接口電路一般均具有可編程功能。微機(jī)的應(yīng)用離不開外部設(shè)備接口的設(shè)計(jì)、選用和連接。2.1.2、I/O接口功能  數(shù)據(jù)緩沖功能:通過(guò)寄存器或鎖存器實(shí)現(xiàn)。    存放數(shù)據(jù)的寄存器或鎖存器稱之為數(shù)據(jù)口。  接受和執(zhí)行CPU命令功能:    存放CPU命令代碼的寄存器稱之為命令口,    存放執(zhí)行狀態(tài)信息的寄存器稱之為狀態(tài)口。  設(shè)備選擇功能:CPU通過(guò)地址譯碼選擇不同外設(shè)。    即CPU通過(guò)地址譯碼選擇不同I/O接口和I/O接口中連接的不同的設(shè)備。  信號(hào)轉(zhuǎn)換功能:協(xié)調(diào)總線信號(hào)與I/O設(shè)備信號(hào)。    轉(zhuǎn)換包括信號(hào)的邏輯關(guān)系、時(shí)序配合和電平轉(zhuǎn)換。  可編程功能:增加接口的靈活性和智能性。

    標(biāo)簽: 輸入輸出 接口技術(shù)

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

    上傳用戶:jixingjie

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

    有兩種方式可以讓設(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)的第一步就是打開一個(gè)設(shè)備對(duì)象的句柄。 用符號(hào)鏈打開一個(gè)設(shè)備的句柄為了打開一個(gè)設(shè)備,應(yīng)用程序需要使用CreateFile。如果該設(shè)備有一個(gè)符號(hào)鏈出口,應(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è)符號(hào)鏈,以便應(yīng)用程序能夠打開它。有關(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è)輸出接口打開句柄用這種方式打開一個(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)打開設(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。如果被打開的設(shè)備不支持指定的功能,則調(diào)用相應(yīng)的Win32將引起錯(cuò)誤(無(wú)效功能)。以前為Windows95編寫的VxD的應(yīng)用程序代碼中可能會(huì)在打開設(shè)備的時(shí)候使用FILE_FLAG_DELETE_ON_CLOSE屬性。在Windows NT/2000中,建議不要使用這個(gè)屬性,因?yàn)樗鼘?dǎo)致沒(méi)有特權(quán)的用戶企圖打開這個(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ì)緩沖的寫訪問(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

  • MCS-51單片機(jī)的編程應(yīng)用范例

    [學(xué)習(xí)要求] 掌握MCS-51單片機(jī)的基本應(yīng)用。[重點(diǎn)與難點(diǎn)]重點(diǎn):動(dòng)態(tài)掃描LED顯示電路編程范例;定時(shí)/計(jì)數(shù)器軟件編程范例;A/D接口電路;矩陣式鍵盤接口技術(shù)及編程。難點(diǎn):動(dòng)態(tài)掃描LED顯示電路編程范例;定時(shí)/計(jì)數(shù)器軟件編程范例。[理論內(nèi)容]一、并行I/O口編程范例單片機(jī)I/O的應(yīng)用最典型的是通過(guò)I/O口與7段LED數(shù)碼管構(gòu)成顯示電路,下面從常用的LED顯示原理開始,詳盡講解利用單片機(jī)驅(qū)動(dòng)LED數(shù)碼管的電路及編程原理,目的在于通過(guò)這一編程范例,讓初學(xué)者了解I/O口的編程原理,意在起舉一反三,拋磚引玉的作用。LED的發(fā)光原理,稍有電子技術(shù)基礎(chǔ)的人士都很清楚,這里不想作過(guò)多的介紹,7段LED數(shù)碼管,則在一定形狀的絕緣材料上,利用單只LED組合排列成“8”字型的數(shù)碼管,分別引出它們的電極,點(diǎn)亮相應(yīng)的點(diǎn)劃來(lái)顯示出0-9的數(shù)字。LED數(shù)碼管根據(jù)LED的接法不同分為共陰和共陽(yáng)兩類,了解LED的這些特性,對(duì)編程是很重要的,因?yàn)椴煌愋偷臄?shù)碼管,除了它們的硬件電路有差異外,編程方法也是不同的。圖1是共陰和共陽(yáng)極數(shù)碼管的內(nèi)部電路,它們的發(fā)光原理是一樣的,只是它們的電源極性不同而已。

    標(biāo)簽: MCS 51 單片機(jī) 編程應(yīng)用

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

    上傳用戶:linlin

主站蜘蛛池模板: 和林格尔县| 利辛县| 新化县| 泗阳县| 额济纳旗| 大理市| 金塔县| 云梦县| 曲松县| 奎屯市| 延津县| 阿瓦提县| 托克托县| 长沙市| 山丹县| 丹江口市| 博野县| 济源市| 江华| 拜城县| 虞城县| 普洱| 天津市| 高邑县| 龙海市| 伊吾县| 荃湾区| 泊头市| 堆龙德庆县| 丰县| 安西县| 常宁市| 承德县| 屏东市| 景泰县| 积石山| 阿克| 张家界市| 牟定县| 八宿县| 天峨县|