虫虫首页| 资源下载| 资源专辑| 精品软件
登录| 注册

2013版本最新最全<b>工具包</b>链接

  • 芯片封装方式详解

    最全的芯片封装方式(图文对照)

    标签: 芯片封装 方式

    上传时间: 2013-11-21

    上传用户:sssnaxie

  • FSK-CC1101大功率收发模块

    CC1101 是集FSK/ASK/OOK/MSK调制方式于一体的高功率、性能 收发模块。它提供扩展硬件支持实现信息包处理、数据 缓冲、群发射、空闲信道评估、链接质量指示和无线唤 醒,可以采用曼彻斯特编码进行调制解调它的数据流。 性能优越并且易于应用到你的产品设计中,它可以应用在 RT-001-CC1101 315/433/868/915MHz ISM/SRD频段的系统中,它可以应用在比如消费类电子产品、自动抄表系统、 双向防盗器等等。 该型号最大的有点在于模块内部采用大功率PA及LNA架构,且采用电子开关及控制线路根据客户 的需求达到远距离传输数据。发射功率可通过外部电源来设置,最大发射功率可以达到1W。超远距 离方案应用的最佳选择。 1.1 基本特性 ●省电模式下,低电流损耗 ●方便投入应用 ●高效的串行编程接口 ●工作温度范围:﹣40℃~+85℃ ●工作电压:1.8~ 3.6 Volts. ●有效频率:300-348Mhz, 400-464Mhz,800-928Mhz ●灵敏度高、输出功率高且可编程

    标签: FSK-CC 1101 大功率 收发模块

    上传时间: 2013-11-11

    上传用户:1234xhb

  • 各模块电路及使用说明附件1

    史上最全的小车各模块电路

    标签: 模块电路 使用说明 附件

    上传时间: 2013-10-15

    上传用户:元宵汉堡包

  • 8051单片机汇编指令工具包

    新手学习51汇编

    标签: 8051 单片机 汇编指令 工具包

    上传时间: 2013-11-05

    上传用户:Avoid98

  • 程序设计实训100例(最全)

    单片机入门仿真编程

    标签: 100 程序设计

    上传时间: 2013-10-26

    上传用户:磊子226

  • AVR系列单片机(MCU)问答

    问:我想使用AVR单片机中的Mega系列,有哪些开发工具支持这种单片机? 答:AVR单片机中的Mega系列有一套完善的开发工具评估/编程板,ATMEL的STK500(980元/套)起步工具包是适用于开发Atmega103芯片的对芯片的编程是通过在系统编程(ISP)接口完成的 仿真器 ATMEL的ATICE30可适用于实时仿真 C编译器: 所有的C编译器均已在ATMEL网站上有关第三方工具供应商的网页上列出;ATMEL公司在它的网站:http://www.atmel.com上还提供了许多自由软件它们可用于对AVR单片机的程序进行汇编和模拟这些软件可以自由下载,上述产品也可通过ATMEL授权的地区分销商和销售代理获得。

    标签: AVR MCU 单片机 问答

    上传时间: 2013-11-03

    上传用户:1406054127

  • 9S12XS128单片机开发工具包

    这里描述的是一套9S12XS128系列单片机开发系统套件。开发系统主要由两个部分组成,分别是调试下载用的TBDML和开发用目标板。其中TBDML的使用请参见文档“BDMforS12(TTBDM)用户手册V34.pdf”。目标板是有异步串行口的驱动的基本系统。针对9S12XS128芯片我们编写了9S12XS128目标板监控程序,可以方便地完成应用系统的开发。用户可以在此基础上设计自己所需的目标母板,完成项目的初期开发。应用软件完成后,用开发工具板擦除监控程序,下载最终的应用程序。

    标签: 128 S12 9S 12

    上传时间: 2014-12-27

    上传用户:ma1301115706

  • S08单片机开发工具包设计

    近几十年来,MCU制造技术快速发展,新系列MCU的稳定性、内部存储器容量、I/O口的功能及其它性能指标更趋优化;随着单片机技术的飞速发展,微控制器的应用领域越来越广,它的市场占有率也越来越大。

    标签: S08 单片机开发 工具包

    上传时间: 2013-10-08

    上传用户:xymbian

  • 驱动程序与应用程序的接口

    有两种方式可以让设备和应用程序之间联系: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

  • 51单片机浮点子程序库

    子程序库的使用方法如下:1.将子程序库全部内容链接在应用程序之后,统一编译即可。优点是简单方便,缺点是程序太长,大量无关子程序也包含在其中。 2.仅将子程序库中的有关部分内容链接在应用程序之后,统一编译即可。有些子程序需要调用一些低级子程序,这些低级子程序也应该包含在内。优点是程序紧凑,缺点是需要对子程序库进行仔细删节。MCS-51 浮点运算子程序库及其使用说明本浮点子程序库有三个不同层次的版本,以便适应不同的应用场合: 1.小型库(FQ51A.ASM):只包含浮点加、减、乘、除子程序。 2.中型库(FQ51B.ASM):在小型库的基础上再增加绝对值、倒数、比较、平方、开平方、 数制转换等子程序。 3.大型库(FQ51.ASM):包含本说明书中的全部子程序。 为便于读者使用本程序库,先将有关约定说明如下: 1.双字节定点操作数:用[R0]或[R1]来表示存放在由R0或R1指示的连续单元中的数 据,地址小的单元存放高字节。如果[R0]=1234H,若(R0)=30H,则(30H)=12H,(31H)=34H。 2.二进制浮点操作数:用三个字节表示,第一个字节的最高位为数符,其余七位为 阶码(补码形式),第二字节为尾数的高字节,第三字节为尾数的低字节,尾数用双字节 纯小数(原码)来表示。

    标签: 51单片机 浮点 程序库

    上传时间: 2013-10-15

    上传用户:wmwai1314