shenzao

    1.                                  很好的资料,谢谢分享
    2.                                  哈哈,俺的EMC测试仪器已经在采购中了,很快就到货了。谢谢叶老板,下次又需要一定前去讨扰,
    3. H.264产品的区别 6/3523 嵌入式系统 2010-06-06
      深圳锐取软件
    4. STM32F103的USB问题 19/5748 stm32/stm8 2010-03-24
                                       重新焊晶振旁边的那2个电容
    5. WinCE6.0下CETK测试问题 13/4582 WindowsCE 2010-03-18
      不过好像只能测试一下驱动是否有加载,至于稳定性可能还要多想想办法
    6. 求助:怎样以独占方式打开串口? 7/5508 嵌入式系统 2010-03-09
      windows下是可以设置CreateFile的sharemode来决定是否独占。 不知道linux有没有类似模式,坐等学习了。
    7. 波特率一高 串口传输就出錯 7/3486 嵌入式系统 2010-03-04
      估计是时钟不合适 。。。。。。。。。。。。。。。。。。。。。。。。。
    8. 接分接分,新年快乐!
    9. 请教:改变串口发送数据的格式(长度) 8/3624 嵌入式系统 2010-02-08
      因为wince上层一般都是用unicode字符,楼主的意思是想将unicode改为Ascii码,再用串口发送? 如果楼主仅仅只有字符和数字等字符串的话。那就比较简单了。因为对于字符和数字来说,仅仅是将1byte变成2byte宽度,前面补零。 即:'A'的ASCII为0x41, 它的UNicode为0x0041 这样吧前面的00去掉,就可以转成ASCII码了。 char Ascbuf[[100]; for(i=0;i
    10. STM32F103奇怪的问题 58/13672 stm32/stm8 2010-02-06
                                       遇到这类问题是很头疼,最近在调MPC5554,仿真器始终连不上,也不知道是啥原因,头大
    11. ds18b20的诡异问题 14/5208 嵌入式系统 2010-02-02
      谢谢各位的解答,最后确认是芯片本身的问题,确实是温度转换功能失效。换了一个新的,完全没有问题。
    12. 吐血共享:STM8SCH封装库。99SE格式 40/16222 stm32/stm8 2010-01-23
                                       好同志
    13. 请教AMD LX800的定制wince5.0 BSP的问题 13/5743 WindowsCE 2010-01-22
      引用 10 楼 amorous 的回复: 0x81fff030: Did not find emulation code for x86... using floating point ? hardware. ================================================================================== This occurs on the x86, as there are some versions of the i486 architecture that do not include the floating-point co-processor. The system will check for the presence of the FPEMUL library. (You can specify that your BSP uses one of these CPUs by setting BSP_FPEMUL=1.) All code on an x86 is written assuming the presence of the co-processor. In a case where there isn't one, the instructions cause a trap in the kernel, which then calls the emulation library to implement the floating-point calculations. This message simply informs you that the kernel did not find the emulation library and therefore is using the hardware co-processor. If your CPU doesn't have the co-processor, this would be an important message to look for if your fonts are not showing up in the Microsoft? Internet Explorer shell (or other applications).
      用过的几块x86的板子都会打出这句话~~
    14. 关于vxworks时间的飘逸 9/4570 实时操作系统RTOS 2010-01-09
      sysClkRateGet() 返回60。 "怎么不说说你是使用什么样的timer,什么样的系统调用之类的。。。 " 用的是“wdStart()”启动的timer. WDOG_ID     timerId; 多谢大家,有其他原因吗
    15. STM32F103FLASH编程问题 8/6125 stm32/stm8 2010-01-09
                                       呵呵,FLASH操作就是比较麻烦一些
    16. 关于WINCE下USB与ActiveSync的连接问题 7/4283 WindowsCE 2009-12-13
      9999
    17. 鼠标指针的刷新问题 5/3633 嵌入式系统 2009-11-21
      VS帮助文档: The mouse_event function synthesizes mouse motion and button clicks. Windows NT/2000/XP: This function has been superseded. Use SendInput instead. Syntax VOID mouse_event(          DWORD dwFlags,     DWORD dx,     DWORD dy,     DWORD dwData,     ULONG_PTR dwExtraInfo ); Parameters dwFlags [in] Specifies various aspects of mouse motion and button clicking. This parameter can be certain combinations of the following values. The values that specify mouse button status are set to indicate changes in status, not ongoing conditions. For example, if the left mouse button is pressed and held down, MOUSEEVENTF_LEFTDOWN is set when the left button is first pressed, but not for subsequent motions. Similarly, MOUSEEVENTF_LEFTUP is set only when the button is first released. You cannot specify both MOUSEEVENTF_WHEEL and either MOUSEEVENTF_XDOWN or MOUSEEVENTF_XUP simultaneously in the dwFlags parameter, because they both require use of the dwData field. MOUSEEVENTF_ABSOLUTE Specifies that the dx and dy parameters contain normalized absolute coordinates. If not set, those parameters contain relative data: the change in position since the last reported position. This flag can be set, or not set, regardless of what kind of mouse or mouse-like device, if any, is connected to the system. For further information about relative mouse motion, see the following Remarks section. MOUSEEVENTF_MOVE Specifies that movement occurred. MOUSEEVENTF_LEFTDOWN Specifies that the left button is down. MOUSEEVENTF_LEFTUP Specifies that the left button is up. MOUSEEVENTF_RIGHTDOWN Specifies that the right button is down. MOUSEEVENTF_RIGHTUP Specifies that the right button is up. MOUSEEVENTF_MIDDLEDOWN Specifies that the middle button is down. MOUSEEVENTF_MIDDLEUP Specifies that the middle button is up. MOUSEEVENTF_WHEEL Windows NT/2000/XP: Specifies that the wheel has been moved, if the mouse has a wheel. The amount of movement is specified in dwData MOUSEEVENTF_XDOWN Windows 2000/XP: Specifies that an X button was pressed. MOUSEEVENTF_XUP Windows 2000/XP: Specifies that an X button was released. dx [in] Specifies the mouse's absolute position along the x-axis or its amount of motion since the last mouse event was generated, depending on the setting of MOUSEEVENTF_ABSOLUTE. Absolute data is specified as the mouse's actual x-coordinate; relative data is specified as the number of mickeys moved. A mickey is the amount that a mouse has to move for it to report that it has moved. dy [in] Specifies the mouse's absolute position along the y-axis or its amount of motion since the last mouse event was generated, depending on the setting of MOUSEEVENTF_ABSOLUTE. Absolute data is specified as the mouse's actual y-coordinate; relative data is specified as the number of mickeys moved. dwData [in] If dwFlags contains MOUSEEVENTF_WHEEL, then dwData specifies the amount of wheel movement. A positive value indicates that the wheel was rotated forward, away from the user; a negative value indicates that the wheel was rotated backward, toward the user. One wheel click is defined as WHEEL_DELTA, which is 120. If dwFlags contains MOUSEEVENTF_HWHEEL, then dwData specifies the amount of wheel movement. A positive value indicates that the wheel was rotated to the right; a negative value indicates that the wheel was rotated to the left. One wheel click is defined as WHEEL_DELTA, which is 120. Windows 2000/XP: If dwFlags contains MOUSEEVENTF_XDOWN or MOUSEEVENTF_XUP, then dwData specifies which X buttons were pressed or released. This value may be any combination of the following flags. If dwFlags is not MOUSEEVENTF_WHEEL, MOUSEEVENTF_XDOWN, or MOUSEEVENTF_XUP, then dwData should be zero. XBUTTON1 Set if the first X button was pressed or released. XBUTTON2 Set if the second X button was pressed or released. dwExtraInfo [in] Specifies an additional value associated with the mouse event. An application calls GetMessageExtraInfo to obtain this extra information. Return Value This function has no return value. Remarks If the mouse has moved, indicated by MOUSEEVENTF_MOVE being set, dx and dy hold information about that motion. The information is specified as absolute or relative integer values. If MOUSEEVENTF_ABSOLUTE value is specified, dx and dy contain normalized absolute coordinates between 0 and 65,535. The event procedure maps these coordinates onto the display surface. Coordinate (0,0) maps onto the upper-left corner of the display surface, (65535,65535) maps onto the lower-right corner. If the MOUSEEVENTF_ABSOLUTE value is not specified, dx and dy specify relative motions from when the last mouse event was generated (the last reported position). Positive values mean the mouse moved right (or down); negative values mean the mouse moved left (or up). Relative mouse motion is subject to the settings for mouse speed and acceleration level. An end user sets these values using the Mouse application in Control Panel. An application obtains and sets these values with the SystemParametersInfo function. The system applies two tests to the specified relative mouse motion when applying acceleration. If the specified distance along either the x or y axis is greater than the first mouse threshold value, and the mouse acceleration level is not zero, the operating system doubles the distance. If the specified distance along either the x- or y-axis is greater than the second mouse threshold value, and the mouse acceleration level is equal to two, the operating system doubles the distance that resulted from applying the first threshold test. It is thus possible for the operating system to multiply relatively-specified mouse motion along the x- or y-axis by up to four times. Once acceleration has been applied, the system scales the resultant value by the desired mouse speed. Mouse speed can range from 1 (slowest) to 20 (fastest) and represents how much the pointer moves based on the distance the mouse moves. The default value is 10, which results in no additional modification to the mouse motion. The mouse_event function is used to synthesize mouse events by applications that need to do so. It is also used by applications that need to obtain more information from the mouse than its position and button state. For example, if a tablet manufacturer wants to pass pen-based information to its own applications, it can write a DLL that communicates directly to the tablet hardware, obtains the extra information, and saves it in a queue. The DLL then calls mouse_event with the standard button and x/y position data, along with, in the dwExtraInfo parameter, some pointer or index to the queued extra information. When the application needs the extra information, it calls the DLL with the pointer or index stored in dwExtraInfo, and the DLL returns the extra information.
    18. 目前就是按这种流程来走,一下是代码: HRESULT hr;                 if(m_pImagingFactory==NULL){                         return;                 }                 IImage* pImage=NULL;                 CDC *pPicDC=NULL;                 CDC rotatedDC,memDC;                         HBITMAP oldMemBitMap,oldRotateBitMap;                 try{                                                 CString pFileFullName=m_vfileList.at(m_iPicIndex);                         hr=m_pImagingFactory->CreateImageFromFile(pFileFullName,&pImage);                         if(FAILED(hr)){                                 goto finish;                         }                         RECT rectDraw;                         GetClientRect(&rectDraw);                         ImageInfo imageInfo;                         pImage->GetImageInfo(&imageInfo);                                                 RECT rectMem={0,0,imageInfo.Width,imageInfo.Height};                         pPicDC =GetDC();                                        memDC.CreateCompatibleDC(pPicDC);                                                BITMAPINFO memBmi;                         //memset(&memBmi, 0, sizeof(BITMAPINFO));                         memBmi.bmiHeader.biSize = sizeof(BITMAPINFOHEADER);                         memBmi.bmiHeader.biWidth = imageInfo.Width;                         memBmi.bmiHeader.biHeight = imageInfo.Height;                         memBmi.bmiHeader.biPlanes = 1;                         memBmi.bmiHeader.biBitCount = 24;                         memBmi.bmiHeader.biCompression = BI_RGB;                         if ( m_hBitmapMem == NULL)                         {                                 m_hBitmapMem =CreateDIBSection(memDC.GetSafeHdc(), &memBmi, DIB_RGB_COLORS, (void **)&m_lpMemData, NULL, 0);                         }                         oldMemBitMap = (HBITMAP)memDC.SelectObject(m_hBitmapMem);                                pImage->Draw(memDC,&rectMem,NULL);                         pImage->Release();                         pImage=NULL;                                     RECT rectRotated;//旋转后rect                                                             rotatedDC.CreateCompatibleDC(pPicDC);                                                     Invalidate();                         UpdateWindow();                         BITMAPINFO rotatedBmi;                         //memset(&rotatedBmi, 0, sizeof(BITMAPINFO));                         rotatedBmi.bmiHeader.biSize = sizeof(BITMAPINFOHEADER);                         rotatedBmi.bmiHeader.biWidth = imageInfo.Height;                         rotatedBmi.bmiHeader.biHeight = imageInfo.Width;                         rotatedBmi.bmiHeader.biPlanes = 1;                         rotatedBmi.bmiHeader.biBitCount = 24;                         rotatedBmi.bmiHeader.biCompression = BI_RGB;                         //旋转                         switch(m_iAngle){                         case 90:{//90度旋转                                                        rectRotated.left=0;                                 rectRotated.top=0;                                 rectRotated.right=imageInfo.Height;                                 rectRotated.bottom=imageInfo.Width;                                                         m_hBitmapRotate = CreateDIBSection(rotatedDC.GetSafeHdc(), &rotatedBmi, DIB_RGB_COLORS, (void **)&m_lpDstData, NULL, 0);                                 //oldRotateBitMap=(HBITMAP)rotatedDC.SelectObject(m_hBitmapRotate);                                 int memStride = WIDTHBYTES(imageInfo.Width*memBmi.bmiHeader.biBitCount);                                 int rotateStride = WIDTHBYTES(imageInfo.Height*rotatedBmi.bmiHeader.biBitCount);                                     int index;                                 int index2;                                 for(int i=0;iStretchBlt(rectDraw.left,rectDraw.top,(rectDraw.right-rectDraw.left),(rectDraw.bottom-rectDraw.top),&rotatedDC,0,0,rectRotated.right,rectRotated.bottom,SRCCOPY);                 }                 catch(...){             printf("sdf");                         goto finish;                 } finish:                 memDC.SelectObject(oldMemBitMap);                 rotatedDC.SelectObject(oldRotateBitMap);                                DeleteObject(m_hBitmapMem);                 m_hBitmapMem = NULL;                 DeleteObject(m_hBitmapRotate);                 rotatedDC.DeleteDC();                 memDC.DeleteDC();                                                if(pPicDC!=NULL){                         ReleaseDC(pPicDC);                 }                 if(pImage!=NULL){                         pImage->Release();                         pImage=NULL;                 }                 if(m_lpDstData!=NULL){                         //free(lpDstData);                         m_lpDstData=NULL;                 }                 if(m_lpMemData!=NULL){                         //free(lpDstData);                         m_lpMemData=NULL;                 }         }
    19. 我想山寨M8,大家一起来出出主意!嘿嘿。 171/20898 嵌入式系统 2009-11-04
      加GPS,这个要顶!
    20. STC单片机系列用来做什么? 12/9667 stm32/stm8 2009-10-17
                                       老李卖的西瓜,你问老张老李的西瓜好吃不

最近访客

< 1/1 >

统计信息

已有174人来访过

  • 芯积分:--
  • 好友:--
  • 主题:7
  • 回复:52

留言

你需要登录后才可以留言 登录 | 注册


现在还没有留言