-
经典
-
看看手册就明白了:
STM32_SPI_NSS_Management.gif
(24.47 KB)
下载次数:1
2011-1-6 11:06
-
J-LINK V6.0及以上版本支持 SWD
-
鼓励原创,反对抄袭!
这年头抄袭还能光明正大!
-
同问,现在最新的IAR版本是1.12,安装软件我下载了,但是网上的注册机还没出来,所以还是安装不了。
-
000
-
我之前都是作原理性的假设而已。因为我没看见原理图,我只能假设某一个状态。现在就你的两个疑问说一下:
“刚刚问了老师一些问题,他要我先测量出每根管的频率,这样就可以知道扫描一帧图像所需要的周期”
这样做,我估计是因为红外发送到接收需要一定的时间的,你每次扫描都要知道当前这个需要多长时间才能传过去。
“还说这个扫描不同于键盘扫描,当检测到接收点的位置时,不要固定的设置为电平为高。”
当检测到接收点的位置,肯定不设置恒电平啦。保存当前地址后,重新再扫描,,,至于置什么状态,具体看原理图,楼主设法将原理图传上,不然,老在猜测,假设,很不舒服,,,,
-
像这种情况,自己画一个更省事,呵呵,用得放心,,,,
-
够强大啊!谢谢分享
-
引用 7 楼 shenmou 的回复:
是在开发板上做的么? 那家的开发板。
我测试了下,似乎只有三星原装的mmc 卡才能启动。
另外,你用的是那个牌子的sd 卡。请教了
貌似和哪家的SD卡没关系,只要是FAT32格式的就可以了。
感觉楼主的平台停在了nand flash这块,能否确定flash的硬件是好的?flash的驱动是否和硬件匹配?
-
485总线需要匹配, 你的传输距离长吗? 终端电阻是为了阻抗匹配。
建议楼主分别测试下 终端不加电阻 和加电阻时,对应的波形,
这样就能明白 终端电阻对于匹配的影响和波形的影响,
-
但是不管要跳转的地址是什么,指令总是0xe59ff018,是没有地址信息的,而且arm中断向量表的前五条指令都是0xe59ff018
-
帮顶
-
新年快乐!
-
今个瞎逛 看见一个步进电机的详细资料 就下了 用不用给你
-
应该是哪个函数的问题把。启动后跳到哪去了?
-
引用 8 楼 schlafenhamster 的回复:
脉冲信号有脉冲功率的问题,加个大电容不是把脉冲滤没了吗。
为什么你要把电容加到输出信号上去,而不是加在电源上面呢。。。
-
驱动程序和应用程序之间传递数据时何时调用MapPtrToProcess?
因为设备管理器负责加载驱动程序DLL,这意味着当应用程序调用驱动程序接口函数的时候,WINCE内核会将调用驱动程序接口函数的线程转移到设备管理器的进程空间然后执行具体的驱动程序代码,应用程序和设备管理器处于两个进程空间,这就造成设备管理器无法访问应用程序传递的指针(虚拟地址),所以当我们在应用程序中传递指针给流驱动程序接口函数时,WINCE内核从中作了一个地址映射,例如ReadFile、WriteFile、DeviceIoControl函数的参数凡是指针都经过了映射才传递给驱动程序,所以很多驱动程序开发者并不了解其中的奥秘就可以编程了。但是如果参数是一个指向一个结构体的指针,而结构体里包括一个或多个指针,那么WINCE内核并不负责映射,所以就需要开发者在驱动程序接口函数中调用API函数MapPtrToProcess来映射地址。例如:pPointer_retval = MapPtrToProcess(pPointer, GetCallerProcess());
-
我做的是HOST驱动,主要是要接收示波器发送过来的数据。
现在端点都读不到。
我在接口描述符里面看到bNumEndpoint一直是0。
读取接口描述符我用了lpGetDescriptor却不行。不知道是不是跟第六个参数有关。
(*pUSBD->usbFuncs->lpGetDescriptor)(pUSBD->hUSBDevice,
NULL,
NULL,
USB_SHORT_TRANSFER_OK,
*pBufIn,//USB_ENDPOINT_DESCRIPTOR_TYPE,
0,
0,// 0或语言ID
sizeof(USB_ENDPOINT_DESCRIPTOR),
&EndpointDescriptor
);
读取端点描述符的时候读出来的却是配置描述符:
(*pUSBD->usbFuncs->lpGetDescriptor)(pUSBD->hUSBDevice,
NULL,
NULL,
USB_SHORT_TRANSFER_OK,
*pBufIn,//USB_STRING_DESCRIPTOR_TYPE,
0,
0,// 0或语言ID
sizeof(USB_CONFIGURATION_DESCRIPTOR),
&CfgDescriptor
);
-
引用楼主 ljdtj 的回复:
结果发现:
子线程1,WaitForMultipleObjects根本就没有等待子线程2的通知事件,一直在循环。
子线程3也一直循环。
后来将WaitForMultipleObjects修改如下
WaitForSingleObject(hEvent[0],INFINITE);
WaitForSingleObject(hEvent[1],INFINITE);
就得到我想要的结果了。
1.WaitForMulObs(,,false,);ce5.0不允许wait type设为true.
2.如果是先触发hEvent[1],再触发hEvent[0],线程1会不会继续等待WaitForSingleOb(hEvent[0],);
从而不能及时退出循环