自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

zhandoushi的专栏

自在空间

  • 博客(17)
  • 资源 (1)
  • 收藏
  • 关注

转载 多线程之三:MFC多线程及实例

      MFC中有两类线程,分别称之为工作者线程和用户界面线程。二者的主要区别在于工作者线程没有消息循环,而用户界面线程有自己的消息队列和消息循环。  工作者线程没有消息机制,通常用来执行后台计算和维护任务,如冗长的计算过程,打印机的后台打印等。用户界面线程一般用于处理独立于其他线程执行之外的用户输入,响应用户及系统所产生的事件和消息等。但对于Win32的API编程而言,这两种线程是没有区别的,它们都只需线程的启动地址即可启动线程来执行任务。      在MFC中,一般用全局函数AfxBeginThre

2010-11-28 20:58:00 48663 6

转载 全局函数如何访问对话框控件

      很多时候我们在一个全局函数中会访问到应用程序控件,由于全局函数不属于具体的某个对话框类,所以它里面是无法访问某个对话框,当然也就访问不到对话框控件了。有以下几种情况和对应的处理方式。(1)全局线程函数中访问对话框控件      创建一个对话框后,放置一个进度条,添加对应的控制变量myProgressCt,在CPP添加一个线程控制标志volatile BOOL m_bRun2。进度条是个状态显示量,跟后台数据处理是独立的,所以需用多线程。在对话框初始化添加进度条的默认值处理: myProgress

2010-11-25 11:51:00 1796

原创 见证时间对人的改变

<br />      以下文字纯属个人一己之见,夹杂个人因素。非无聊者勿看 。<br />      呆在深圳的几年中,曾经跟一个大学同学合租了三年多,从一开始交情是不错的,算是相互扶持,不料到最后摩擦越来越大,基本上到了绝交的地步。此人为人不坏,工作尽职尽责,就是有股自顾自的傲气,搞的周围的人很不舒服。我来列举几例。<br />      我曾经就工作上的问题请教过他,此人不做答复,叫我自己看,甚至言语都很斟酌,生怕多说了几句。我不知道这是不是所谓的“艺毒”,生怕别人学到了抢了自己的生计。我当然知道工作

2010-11-24 14:54:00 1630 3

原创 滑动条SliderCtrl及实例

      滑动条是一种交互式的、直观的控件。它包括一个沿着控件长度滑动的滑动框和用于显示值范围的可选刻度标志。滑动条控件还有一个内置的键盘界面,所以可用键盘上的箭头键来移动滑块。

2010-11-24 09:47:00 4828 1

原创 微调按钮SpinButton及实例

<br />      微调按钮(SpinButton)是个简易的滑动条,它经常与一个称为“兄弟窗口”(Buddy Window)的编辑控件结合起来使用,它们可以很好地配合,以响应用户的输入。本实例实现调节RGB三个颜色分量,控制合成的颜色显示。完成的界面如下:<br />                                 <br />(1)新建一个基于对话框的应用程序,在上面分别添加三个静态文本、三个编辑框(IDC_EDIT_RED,IDC_EDIT_GREEN,IDC_EDIT_BLUE)

2010-11-23 11:49:00 12015

转载 USB软硬件知识之五:WINCE USB设备驱动程序导读

      随着USB设备的不断增加,我们这些开发人员也就多了对USB设备进行驱动程序开发的工作。通过本文,我希望能让更多的朋友理解Windows CE下对USB设备的驱动模型及样例程序中的实现过程,以样例代码为基础理顺USB设备驱动程序的开发思路。在看样例程序之前,我们就先来看下图:在此图中,我们可以非常清晰的看到主机和物理外设之间的结构方式,在主机端,通过USBD模块和HCD模块使用默认的PIPE访问一个通用的逻辑设备,实际上就是说USBD和HCD是一组抽象出来的访问所有USB设备的逻辑接口,它们负责管

2010-11-22 17:08:00 2128

原创 资源DLL

<br />      在很多实际场合我们要用到一些图片和图标的资源,我们可以将这些资源以DLL的形式加载运用,不用的时候再释放掉。举个实例:创建一个带BMP位图资源和一个图标资源的资源DLL,然后在一个测试对话框中调用它。<br />(1)创建DLL<br />      在VS中新建一个WIN32 Project,名为ResDll,类型为DLL。创建完毕后,在Resources files点击右键添加Resource,点击新建,类型为BMP,即可新建一个有内容的位图资源文件,名为IDB_RESBMP;同

2010-11-18 21:57:00 1347

转载 WIN CE的驱动程序模型

      WinCE系统在驱动设计上有一个很方便的功能,就是原始设备制造商(OEMs)和独立硬件开发商(IHVs)可以自主开发设备驱动程序来支持他们的硬件。因此,深入了解WinCE系统驱动方式是非常有必要的。(1)从驱动加载方式上的分类      要编写WinCE驱动程序首先要确定它是属于哪类驱动。一般来说,WinCE平台上使用的设备可分为两类:内建设备和可安装设备。因此,从驱动加载方式上WinCE可分为内建设备驱动(Built-In Driver)和可加载驱动(Loadable Driver)。    

2010-11-17 22:47:00 4790

原创 LCM之Fmark功能 && LCD控制器同LCD驱动器的差别 && 帧率与刷新率的关系 && OLED背光

最近调试R61509V这颗LCM驱动芯片时,出现在纯色测试画面下画面刷新有残留(tearing effect,即TE)的问题。根本原因是主控写图像数据的速度与LCM刷屏的速度不一致造成的,具体是刷屏速度要快于主控写速度。好在很多LCM驱动芯片都有一个Fmark脚,用来与主控同步,当Fmark发出一个信号给主控时,主控才开始写一帧数据,这样就可以保证两边同步。讲述前首先对几个概念描述:(1)刷屏

2010-11-15 22:48:00 17961 3

转载 Windows CE中的进程和线程

<br />(1)进程<br />      进程是一个正在运行的应用程序的实例,它由两部分组成:A,管理这个进程的操作系统的内核对象;B,该进程拥有的地址空间。每一个进程都有独占的、受到保护的32MB的地址空间。Windows CE系统最大允许32个独立的进程同时进行。当系统启动的时候,最少有4个默认的进程被启动,即:nk.exe(提供有关内核的服务);filesys.exe(提供有关文件系统的服务);gwes.exe(提供对GUI系统的支持);device.exe(装载和管理设备的驱动程序)。以下是一系

2010-11-14 23:27:00 2382

转载 VC中编辑框与UpdateData()函数的使用

(1) UpdateData函数    UpdateData(FALSE)与UpdateData(TRUE)是相反的过程。UpdateData(FALSE)是把程序中改变的值更新到控件中去,UpdateData(TRUE)是把在控件中输入的值更新到你的变量中去。也就是说:当你使用了ClassWizard建立了控件和变量之间的联系后,当你修改了变量的值,而希望对话框控件更新显示,就应该在修改变量后调用UpdateData(FALSE);如果你希望知道用户在对话框中到底输入了什么,就应该在访问变量前调用Upda

2010-11-13 20:57:00 4635

转载 多线程之二:几个实例

(1)建立一个基于对话框的MFC工程MultiThread1,在对话框IDD_MULTITHREAD1_DIALOG中加入两个按钮和一个编辑框,两个按钮的ID分别是IDC_START,IDC_STOP ,标题分别为“启动”,“停止”,IDC_STOP的属性选中Disabled;编辑框的ID为IDC_TIME ,属性选中Read-only;      在MultiThread1Dlg.h文件中添加线程函数声明:void ThreadFunc();注意,线程函数的声明应在类CMultiThread1Dlg的外部

2010-11-11 22:42:00 1950

原创 USBee Suite抓I2C; USBee Suite抓上电时序; USBee Suite抓取UART; USBee Suite抓取SPI

USBee Suit是一款虚拟示波器和逻辑分析仪应用软件,只要搭配相应的硬件,就可以在电脑上实现很多测试功能。一般按照安装流程都会没问题,但是发现过一次在设备管理器里面都不识别的现象,始终提示问号。最终的解决办法是,手动去安装设备驱动,即USBee Suite\Saleae和USBee固件切换\Driver64\x86\的sys文件。 举个实例说明用作逻辑分析仪的使用...

2010-11-10 13:59:00 17159

原创 控制Windows Mobile的LED 之二:控制三个LED指示灯

<br />      最近做的一个项目要求用三个GPIO同时独立的控制三个不同颜色的LED灯,且每个LED灯存在亮、灭、快闪、慢闪等四种状态。一开始想到在一个线程里面完成,但无法独立的控制三个LED灯的闪烁频率,无法避免相互影响。无奈之下,先用三个线程控制三个LED实现该功能,如果以后熟悉了线程定时器的做法,再优化。<br />(1)NLED设置结构体说明<br />struct NLED_SETTINGS_INFO<br />{<br />    UINT    LedNum;             

2010-11-05 23:24:00 2234 1

转载 SetTimer函数和GetTickCount()函数的用法

      什么时候我们需要用到SetTimer函数呢?当你需要每个一段时间执行一件事的的时候就需要使用SetTimer函数了。使用定时器的方法比较简单,通常告诉WINDOWS一个时间间隔,然后WINDOWS以此时间间隔周期性触发程序。通常有两种方法来实现:发送WM_TIMER消息和调用应用程序定义的回调函数。 (1)用WM_TIMER来设置定时器先请看SetTimer这个API函数的原型 UINT_PTR SetTimer(  HWND hWnd,              // 窗口句柄  UINT_P

2010-11-04 22:02:00 2152

转载 WinCE的中断处理流程 && 光感应sensor举例

关于WinCE的中断处理,OAL中主要是实现了ISR部分,一般IST会在设备驱动中实现。                                  这张图想必很多人都见过,主要这张图太经典了,所以还是贴出来唠叨几句,硬件中断产生以后,会导致内核ISR的运行,然后由OAL中的ISR来处理相应的中断,最后导致相对应的IST运行完成真正的中断处理。所以在WinCE中,中断处理由ISR和I

2010-11-02 23:07:00 1949

转载 CreateEvent、setevent、ResetEvent和WaitForSingleObject

(1)CreateEvent函数原型:HANDLE CreateEvent(       LPSECURITY_ATTRIBUTES lpEventAttributes, // 安全属性       BOOL bManualReset, // 复位方式       BOOL bInitialState, // 初始状态       LPCTSTR lpName // 对象名称   );       lpEventAttributes:一个指向SECURITY_ATTRIBUTES结构的指针,确定返回的句柄是

2010-11-01 22:46:00 11866

LED驱动SN3101 的DEMO驱动

SI-EN公司出品的LED驱动型号3101的样例驱动,移植即可使用

2010-12-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除