有没有人用过Apple FFT
iPhone应用程序或知道我在哪里可以找到一个如何使用它的示例应用程序?我知道Apple发布了一些示例代码,但我不确定如何将它实现到实际项目中.
我试图从Winusb设备获取供应商和产品ID,并在尝试使用winusb_GetDesicriptor()时遇到accessviolationexception,并且无法弄清楚为什么我会得到该异常.
这是我的声明:
internal devInfo myDevInfo = new devInfo();
USB_INTERFACE_DESCRIPTOR ifaceDescriptor;
USB_DEVICE_DESCRIPTOR deviceDescriptor;
internal struct USB_INTERFACE_DESCRIPTOR
{
internal Byte bLength;
internal Byte bDescriptorType;
internal Byte bInterfaceNumber;
internal Byte bAlternateSetting;
internal Byte bNumEndpoints;
internal Byte bInterfaceClass;
internal Byte bInterfaceSubClass;
internal Byte bInterfaceProtocol;
internal Byte iInterface;
}
[StructLayout(LayoutKind.Explicit, Size = 18, CharSet = CharSet.Auto)]
internal struct USB_DEVICE_DESCRIPTOR
{
[FieldOffset(0)]internal byte bLength;
[FieldOffset(1)]internal byte bDescriptorType;
[FieldOffset(2)]internal ushort bcdUSB;
[FieldOffset(4)]internal byte bDeviceClass;
[FieldOffset(5)]internal byte bDeviceSubClass;
[FieldOffset(6)]internal byte bDeviceProtocol;
[FieldOffset(7)]internal byte bMaxPacketSize0;
[FieldOffset(8)]internal ushort idVendor;
[FieldOffset(10)]internal …
Run Code Online (Sandbox Code Playgroud) 我正在编写一个正在写入HID设备的程序,并且在WriteFile函数上收到错误87,无效参数.我从Jan Axelson的USB Complete中获得了功能,所以我不确定为什么我会收到错误.我用它来找到我的设备:
private void USBInit()
{
IntPtr deviceInfoSet;
Int32 memberIndex = 0;
SP_DEVICE_INTERFACE_DATA MyDeviceInterfaceData = new SP_DEVICE_INTERFACE_DATA();
Int32 bufferSize = 0;
IntPtr detailDataBuffer;
Boolean success = false;
deviceFound = false;
HidD_GetHidGuid(ref hidGuid); // Get the GUID
deviceInfoSet = SetupDiGetClassDevs // Get pointer to a device info set
(ref hidGuid,
IntPtr.Zero,
IntPtr.Zero,
DIGCF_PRESENT | DIGCF_DEVICEINTERFACE);
do
{
MyDeviceInterfaceData.cbSize = Marshal.SizeOf(MyDeviceInterfaceData); // Identify Device Interface
success = SetupDiEnumDeviceInterfaces
(deviceInfoSet,
IntPtr.Zero,
ref hidGuid,
memberIndex,
ref MyDeviceInterfaceData);
success = SetupDiGetDeviceInterfaceDetail // Request Structure …
Run Code Online (Sandbox Code Playgroud) 我有一个看起来像这样的结构:
public struct ChannelSettings
{
public double slider20Hz;
public double slider25Hz;
public double slider31_5Hz;
public double slider40Hz;
}
Run Code Online (Sandbox Code Playgroud)
当滑块值改变如下时,我正在遍历我的用户界面对象:
foreach (Slider slider in grdEqSliders.Children)
{
// slidername = slider.Name;
switch(currentChannel)
{
case 1:
// Assign to channel.slidername
break;
case 2:
// Assign to channel.slidername
break;
default:
break;
}
}
Run Code Online (Sandbox Code Playgroud)
我的问题是,有没有办法让我获得滑块名称然后将其转换为我可以在我的结构中直接引用的东西?例如,我想将slider.Name = "slider_20Hz"
in转换为slider20Hz
我在struct中使用的变量.