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

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

Method

  • 基于AT89S52的漢字顯示屏的設計

    介紹了一種基于AT89S52微處理器、鍵控顯示模式、多漢字顯示的顯示模塊設計方法。對AT89S52的內部功能及使用高128字節RAM時的尋址方式進行說明。給出了四漢字顯示模塊的硬件電路原理圖、主程序流程圖以及中斷顯示流程圖。 Abstract:  The design Method of display module base on the AT89S52 microcontroller,display mode controlled by keyboard and? showing several Chinese characterses are introduced in the paper.The internal function and the addressing mode for the high 128B RAM of the AT89S52 are explained.The basic circuit diagram,the main program flow chart and the display interrupt flow chart of four Chinese characterses display module are also given.

    標簽: 89S S52 AT 89

    上傳時間: 2014-01-23

    上傳用戶:咔樂塢

  • 基于ATmega168的ADC按鍵設計

    利用Atmel公司的ATmega168微處理器,采用A/D轉換方式來實現按摩椅控制器的鍵盤接口,通過在硬件電路中巧妙地選擇電阻,在軟件設計中采用數字濾波、二分法和區間鑒定等方法,靈敏可靠地實現了按摩椅中30個按鍵的處理。給出了硬件電路設計和軟件設計思想以及部分匯編代碼。 Abstract:  This paper chooses A/D conversion Method to realize the keyboard interface of the controller by using ATmega168 microchip from Atmel Company.It accomplishes 30-key dealing sensitively and reliably in massage chair through skillfully selecting resistors in hardware circuit and using digital filter,dichotomy and area-judging Method in software design.The hardware design circuit, software design idea and partly assembles code are presented mainly.

    標簽: ATmega 168 ADC 按鍵

    上傳時間: 2014-01-10

    上傳用戶:咔樂塢

  • 基于CAN總線的數字式自動找平控制系統設計

    對于瀝青混凝土攤鋪機自動找平控制系統來說,數字式控制系統的研制是目前的一個方向。介紹了一種基于CAN總線的數字式自動找平控制系統。該系統以CAN總線作為通信方式,PWM控制信號通過C8051F040單片機內部PCA可編程計數器陣列產生,并具有結構簡單、信號穩定、實時性強、易擴展的特點。通過硬件實現和系統運行達到了比較理想的控制效果,驗證了系統的可行性。 Abstract:  A digital auto-leveling control system based on CAN Bus is introduced.It uses CAN Bus as the Method of communication and creates PWM signals by programmable counter array in C8051F040 microcontroller. The system is simple, stable, real-time and expansive.

    標簽: CAN 總線 數字式 控制系統設計

    上傳時間: 2013-10-09

    上傳用戶:ligi201200

  • 基于ROM單片機的漢字輸入法的實現

    在需要實時大量輸入漢字的顯示控制處理應用中,利用傳統單片機實現顯示控制的設計方法是較難實現的。帶漢字字庫的液晶模塊的使用使得小容量ROM單片機的大量漢字信息輸入與顯示成為可能。提出了針對漢字字庫編碼的二級索引拼音輸入檢索方法,介紹了以ST7920作為控制器的帶漢字字庫的液晶顯示模塊的接口方法及漢字顯示和控制原理,給出了通用計算機鍵盤在單片機中的串行接口,采用該技術可大大增強單片機的漢字輸入功能。為小容量ROM單片機的大批量漢字信息處理提供了一種漢字輸入解決方案。 Abstract:  It is difficult to realize Chinese characters input Method based on the embedded system by using the traditional design Method of display control. It is possible to input and display Chinese characters based on the embedded system with the ROM of small content by using the LCD module with Chinese characters.Chinese characters input Method of the quadric index recall in allusion to Chinese characters code is brought forward.The interface and the principle of Chinese characters display control based on the LCD module controlled with the ST7920 is introduced too.The serial interface of the computer keyboard in common use and the embedded system is given at the same time. It can enhance the embedded system function of Chinese characters input by using this technology, and provide a kind of Chinese characters input scheme for the embedded system with small capacity ROM.

    標簽: ROM 單片機 漢字輸入法

    上傳時間: 2013-11-19

    上傳用戶:jhksyghr

  • 開放式匯編器系統的設計

    匯編器在微處理器的驗證和應用中舉足輕重,如何設計通用的匯編器一直是研究的熱點之一。本文提出了一種開放式的匯編器系統設計思想,在匯編語言與機器語言間插入中間代碼CMDL(code mapping description language)語言,打破匯編語言與機器語言的直接映射關系,由此建立起一套描述匯編語言與機器語言的開放式映射體系。基于此開放式映射體系開發了一套匯編器系統,具有較高層次上的通用性和可移植性。【關鍵詞】指令集,CMDL,匯編器,開放式 Design of Retargetable Assembler System Liu Ling Feng Wen Nan Wang Ying Chun Jiang An Ping Ji Li Jiu IME of Peking University, 100871【摘要】An assembler plays a very important role in the field of microprocessor verifications and applications, thus how to build a retargetable assembler system has been a hotspot in this field for long time. This paper presents a new Method about the retargetable assembler system design.It provides a kind of language CMDL, code mapping description language. During the process of assembling, assembler languages are firstly translated to CMDL, and then mapped to the machine codes. In an other word, CMDL is inserted between assembler languages and machine codes during the translation procedure. As a medium code, CMDL has a lot of features, such as high extraction, strong descript capabilities. It can describe almost all attributes of assembler languages. By breaking the direct mapping relationship between assembler languages and machine codes, the complexities of machine codes are hided to the users, therefore, the new retargetable assembler system has higher retargetable level by converting the mapping from assembler languages and machine codes to assembler languages and CMDL, and implementationof it becomes easier. Based on the new mapping system structure, a retargetable assemblersystem is developed. It proved the whole system has good retargetability and implantability.【關鍵詞】instruction set, symbol table, assembler, lexical analysis, retargetability

    標簽: 開放式 匯編器

    上傳時間: 2013-10-10

    上傳用戶:meiguiweishi

  • 無傳感器BLDCM位置檢測的一種單片機軟件實現方法

    針對無位置傳感器無刷直流電機的位置檢測問題,本文應用單片機成功地實現了一種軟件檢測方法,并給出了實測波形加以驗證。關鍵詞: 無刷直流電機 無傳感器 位置檢測Abstract: As to the position-detecting problem of sensorless brushless DC motor, a softwarerealization by microcomputer is proposed successfully in the paper. Experiment results are also presented to verify the Method.Keywords: brushless DC motor, sensorless, position detecting

    標簽: BLDCM 無傳感器 位置檢測 單片機軟件

    上傳時間: 2013-11-01

    上傳用戶:aappkkee

  • USB Demonstration for DK3200 w

    The μPSD32xx family, from ST, consists of Flash programmable system devices with a 8032 MicrocontrollerCore. Of these, the μPSD3234A and μPSD3254A are notable for having a complete implementationof the USB hardware directly on the chip, complying with the Universal Serial Bus Specification, Revision1.1.This application note describes a demonstration program that has been written for the DK3200 hardwaredemonstration kit (incorporating a μPSD3234A device). It gives the user an idea of how simple it is to workwith the device, using the HID class as a ready-made device driver for the USB connection.IN-APPLICATION-PROGRAMMING (IAP) AND IN-SYSTEM-PROGRAMMING (ISP)Since the μPSD contains two independent Flash memory arrays, the Micro Controller Unit (MCU) can executecode from one memory while erasing and programming the other. Product firmware updates in thefield can be reliably performed over any communication channel (such as CAN, Ethernet, UART, J1850)using this unique architecture. For In-Application-Programming (IAP), all code is updated through theMCU. The main advantage for the user is that the firmware can be updated remotely. The target applicationruns and takes care on its own program code and data memory.IAP is not the only Method to program the firmware in μPSD devices. They can also be programmed usingIn-System-Programming (ISP). A IEEE1149.1-compliant JTAG interface is included on the μPSD. Withthis, the entire device can be rapidly programmed while soldered to the circuit board (Main Flash memory,Secondary Boot Flash memory, the PLD, and all configuration areas). This requires no MCU participation.The MCU is completely bypassed. So, the μPSD can be programmed or reprogrammed any time, anywhere, even when completely uncommitted.Both Methods take place with the device in its normal hardware environment, soldered to a printed circuitboard. The IAP Method cannot be used without previous use of ISP, because IAP utilizes a small amountof resident code to receive the service commands, and to perform the desired operations.

    標簽: Demonstration 3200 USB for

    上傳時間: 2014-02-27

    上傳用戶:zhangzhenyu

  • 87C576微控制器的在線編程

    The 87C576 includes two separate Methods of programming theEPROM array, the traditional modified Quick-Pulse Method, and anew On-Board Programming technique (OBP).Quick Pulse programming is a Method using a number of devicepins in parallel (see Figure 1) and is the traditional way in which87C51 family members have been programmed. The Quick-PulseMethod supports the following programming functions:– program USER EPROM– verify USER EPROM– program KEY EPROM– program security bits– verify security bits– read signature bytesThe Quick-Pulse Method is quite easily suited to standardprogramming equipment as evidenced by the numerous vendors of87C51 compatible programmers on the market today. Onedisadvantage is that this Method is not well suited to programming inthe embedded application because of the large number of signallines that must be isolated from the application. In addition, parallelsignals from a programmer would need to be cabled to theapplication’s circuit board, or the application circuit board wouldneed to have logic built-in to perform the programming functions.These requirements have generally made in-circuit programmingusing the modified Quick Pulse Method impractical in almost all87C51 family applications.

    標簽: 87C576 微控制器 編程

    上傳時間: 2013-10-21

    上傳用戶:xiaozhiqban

  • CAN與RS232轉換節點的設計與實現

    CAN與RS232轉換節點的設計與實現 介紹將CAN總線接口與RS232總線接口相互轉換的設計方法和2種總線電平轉換關系,實現CAN總線與各模塊的接口設計,制定了相應的軟硬件設計方案,并給出軟件設計流程圖以及部分硬件設計原理圖。為CAN總線與RS232總線互聯提供了一種方法,對CAN總線與RS232總線接口設備的互聯和廣泛應用的實現具有重要意義。關鍵詞:CAN總線;RS-232總線;串行通信Design and Realization of CAN and RS232 Transformation NodeZHOU Wei, CHENG Xiao-hong(Information Institute, Wuhan University of Technology, Wuhan 430070)【Abstract】This paper introduces one design Method of the CAN bus interface and the RS232 bus interface interconversion, emphasizes two kindof bus level transformation relations, realizes the CAN bus and various modules connection design, formulates the design proposal of correspondingsoftware and hardware, and gives the flow chart of software design as well as the partial schematic diagram of hardware design. It providesoneMethod for the CAN bus and the RS232 bus interconnection, has the vital significance to widespread application realization of the CAN busand theRS232 bus interface equipment interconnection.【Key words】CAN bus; RS-232 bus; serial communication

    標簽: CAN 232 RS 轉換

    上傳時間: 2013-11-04

    上傳用戶:leesuper

  • 驅動程序與應用程序的接口

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

    標簽: 驅動程序 應用程序 接口

    上傳時間: 2013-10-17

    上傳用戶:gai928943

主站蜘蛛池模板: 高州市| 巩义市| 莆田市| 五寨县| 屯留县| 巨鹿县| 休宁县| 福建省| 教育| 昭平县| 合山市| 滕州市| 香港| 恭城| 长阳| 镇安县| 岑巩县| 鄂州市| 巴林左旗| 通江县| 阳江市| 兴山县| 金门县| 江孜县| 锡林浩特市| 永德县| 宜宾县| 西乌珠穆沁旗| 鹰潭市| 额济纳旗| 曲靖市| 茌平县| 灯塔市| 精河县| 江西省| 岑溪市| 黔西县| 信宜市| 新乡市| 轮台县| 贵德县|