windows mobile上操作马达实现振动

来源:互联网 发布:淘宝上的货到付款 编辑:程序博客网 时间:2024/06/09 19:58
WM的震动是以LED灯的形式控制的,知道灯的数量以后,最后一盏灯就是振动马达的地址。在代码里,我们首先添加必要的头文件#include 然后按照以下示例代码,执行函数。void StartVirbate( void ){NLED_SETTINGS_INFO settings ; memset(&settings,0,sizeof(NLED_SETTINGS_INFO));settings.LedNum= 1; settings.OffOnBlink= 1;NLedSetDevice(NLED_SETTINGS_INFO_ID, &settings);}void StopVirbate( void ){NLED_SETTINGS_INFO settings; memset(&settings,0,sizeof(NLED_SETTINGS_INFO));settings.LedNum= 1; settings.OffOnBlink= 0;NLedSetDevice(NLED_SETTINGS_INFO_ID, &settings);}上述方法在1盏灯的机器里(多普达系列)测试过是没问题的,但是不排除会有多个led或者驱动会被改掉的可能,因此在别的手机上对于震动,settings.LedNum有可能不为1,可以先获取Led灯数量后再设置。NLED_COUNT_INFO nci;int nIndex = 1;if(NLedGetDeviceInfo(NLED_COUNT_INFO_ID, (PVOID) &nci)){nIndex = (int)nci.cLeds - 1;}上面的代码,得到LED的数量,而震动LED为最后一个。然后settings.LedNum = nIndex ;
原创粉丝点击