tag 标签: vc++

相关博文
  • 热度 23
    2015-5-6 11:47
    1719 次阅读|
    0 个评论
    来源:http://www.chiray.com.cn/IDC232_v1.htm IDC232为配置有RS232串行接口及 USB口的步进电机控制器,通过标准串口编程语言同PC机进行数据通信, 实现PC机控制步进电机。模块收到指令后对指令进行解析,并发出控制信号给步进电机驱动器。由PC机客户端软件自动控制步进电机按照程序指定的转速和圈数运行,进行无反馈精确定位。模块主要应用于 光学平移台/转动台以及工业控制及各种自动化生产线检测装置,避免在非复杂控制系统中使用价格昂贵的PLC方案,帮助最终用户降低成本。模块化的商业级产品可有效缩短产品研发周期和降低开发成本。                                 一、 特点 1.串口指令语言方式编程。 2.一台控制器可控制2台步进电机,用户可以有效降低四轴以内控制系统硬件成本,节省安装空间,可满足大多数项目需求。如需控制更多的步进电机可通过集线器(HUB)进行扩展,实现远程或多轴步进电机系统控制。 3.支持USB端口通讯,安装简单,不占用主机PCI插槽,无需开主机箱,方便使用笔记本电脑现场调试。 4.程序执行方式:暂停、停止、连续自动运行或单步运行,有助于用户调试程序。 5.系统自动计算控制参数(转速、脉冲数等),用户可以专心于被控对象的研究及编程,而无需人工计算底层控制参数。 6.支持图形用户界面开发平台:Visual Basic Visual C++ 等。 7.支持虚拟仪器开发平台:LabVIEW(Laboratory Virtual instrument Engineering) 8. 如有特殊需求,控制硬件及系统软件均可定制。 9.全面采用SMT贴片元件,工作更稳定。 10.同时支持共阴、共阳极步进电机驱动器。 11.外形尺寸:136*82*25 (单位:mm)  可选配CR-4A200微步驱动器, 最大200细分。 以上内容版权所有,严禁拷贝。更加详细资料请联系技术支持人员。                         二、应用范围     光学电移台                                                          定长控制系统 广州驰锐电子科技有限公司 版权所有 联系我们:http://www.chiray.com.cn/contact.htm  
  • 热度 24
    2013-7-28 17:40
    1287 次阅读|
    0 个评论
    http://pcedu.pconline.com.cn/empolder/gj/vc/0509/698632.html
  • 热度 18
    2013-1-14 16:41
    1580 次阅读|
    0 个评论
    2.2 VC++ 例程 Cplusplus 建立一个 Win32 console application 工程 Cplusplus ,作为对 C++ 的体验和理解。程序中建立了一个基类 animal ,一个派生类 fish 。通过此例程可以直观的理解类、继承、虚函数等 C++ 基础概念。 软件组织结构如下图: SourceCode为 Cplusplus.zip   2.2.1 C++ 基础知识        类比 C 语言的结构体 (struct) 概念体会 C++ 中类 (class) 的概念。类中可以定义函数,可以定义公有私有属性,但结构体不行。        类是抽象概念,类的对象是实例,可以创建,可以销毁。        构造函数。 C++ 构造函数的名字和类名相同,没有返回值,作用是对对象本身做初始化工作。        析构函数。定义格式为 ~ 类名。是反向的构造函数,没有返回值,一个类中只能有一个析构函数,作用是清除类的对象。对一个对象来说,析构函数是最后一个被调用的成员函数。一般在构造函数中初始化对象的成员变量,分配内存空间,在析构函数中释放资源。        函数的重载。函数的参数类型、参数个数不同,才能构成函数的重载。        this 指针。 This 指针是一个隐含指针,指向对象本身。        继承。 class fish:public animal 。        在构造子类时,可以显示地调动父类的带参数的构造函数。 Fish():animal(400,300);        多重继承。多重继承的语法与单一继承很类似 class B:public C,public D 。        虚函数。用 virtual 关键字申明的函数叫做虚函数。当 C++ 编译器在编译时,发现 animal 类的 breathe() 函数时虚函数,就会采用迟邦定技术,即编译时并不确定具体调用的函数,而是在运行时依据对象的类型来确认调用的是哪一个函数,这种能力叫做 C++ 的多态性:在基类的函数前加上 virtual 关键字,在派生类中重新写该函数,运行时将会根据对象的实际类型来调用相应的函数,如果对象是派生类就调用派生类的函数,如果是基类就调用基类的函数。     animal :: ~animal() 。其中 :: 叫做域标识符,用于指明一个函数属于哪个类或一个数据成员属于哪个类。 :: 前面如果不跟类名,表示是全局函数或全局变量,不属于某类。  
  • 热度 18
    2013-1-13 21:44
    2270 次阅读|
    0 个评论
    迫于项目需要,从今天开始一步一步学习VC++程序开发。软件版本VC6.0,本节实验及后续章节均摘自孙鑫《VC++深入详解》一书,若有其它参考文献会相应列出。博客内容节选于自己学习笔记,故标号与笔记保持一致。 2.1 Win32 Application 例程 xuzhiqiangwhut 2.1.1 步骤 建立一个 Win32 Application 工程 xuzhiqiangwhut ,体验 windows 平台编程的一些基础概念。 步骤: 1. 新建工程。选择 Win32 Application ,填写工程名称,选好存储位置,点击确定,选择 Empty Project 选项,如下所示即可建立新工程。 2. 新建文件。文件 - 新建,选择 C++ Source File ,如图所示即可。 3. 编程。本例只是显示一个窗口,所以程序很简单,只编写两个函数: windows 程序入口函数 WinMain ;窗口过程函数 WinXuProc 。源代码如下: 以下是代码片段:      #include #include //窗口过程函数声明 LRESULT CALLBACK WinXuProc ( HWND hwnd,//handle to window UINT uMsg,//message identifier WPARAM wParam,//first message parameter LPARAM lParam//second message parameter ); //程序入口函数(主函数) int WINAPI WinMain ( HINSTANCE hInstance,//handle to current instance HINSTANCE hPrevInstance,//handle to previous instance LPSTR lpCmdLine,//command line int nCmdShow//show state ) { //设计一个窗口类 WNDCLASS wndcls; wndcls.cbClExtra =0;//类附加内存,一般设为0 wndcls.cbWndExtra =0;//窗口附加内存,一般设为0 wndcls.hbrBackground =(HBRUSH)GetStockObject(BLACK_BRUSH);//调用GetStockObject指定背景画刷 wndcls.hCursor =LoadCursor(NULL,IDC_CROSS);//调用LoadCursor函数加载一个光标资源 wndcls.hIcon =LoadIcon(NULL,IDI_ERROR);//调用LoadIcon函数加载一个图标资源 wndcls.hInstance =hInstance;//应用程序实例句柄由WinMain函数传进来 wndcls.lpfnWndProc =WinXuProc;//指向上面定义的窗口过程函数 wndcls.lpszClassName ="xuzhiqiangwhut";//指定窗口类的名字 wndcls.lpszMenuName =NULL;//指定菜单资源,此处NULL表明创建的窗口没有默认的菜单 wndcls.style =CS_HREDRAW|CS_VREDRAW;//指定窗口类型的样式 //注册窗口类 RegisterClass(wndcls); //创建窗口,定义一个变量用来保存成功创建窗口后返回的句柄 HWND hwnd; hwnd=CreateWindow("xuzhiqiangwhut","hello windows",WS_OVERLAPPEDWINDOW, 0,0,600,400,NULL,NULL,hInstance,NULL); //显示及刷新窗口 ShowWindow(hwnd,SW_SHOWNORMAL); UpdateWindow(hwnd); //定义消息结构体,开始消息循环 MSG msg; while(GetMessage(msg,NULL,0,0)) { TranslateMessage(msg); DispatchMessage(msg); } return msg.wParam ; } //窗口过程函数定义 LRESULT CALLBACK WinXuProc ( HWND hwnd,//handle to window UINT uMsg,//message identifier WPARAM wParam,//first message parameter LPARAM lParam//second message parameter ) { switch(uMsg) { case WM_CHAR: char szChar ;//定义字符串 sprintf(szChar,"char code is %d",wParam); MessageBox(hwnd,szChar,"char",0); break; default: return DefWindowProc(hwnd,uMsg,wParam,lParam); } return 0; } 2.1.2 说明 1. 由本例可知创建一个完整的窗口,需要 4 个步骤:设计一个窗口类;注册窗口类;创建窗口;显示及更新窗口。 2. 主函数中编写了一个消息循环,不断地从消息队列中取出消息,并进行响应。本例的 Windows 消息处理机制如下图所示:        1 在应用程序 xuzhiqiangwhut 中敲击键盘,操作系统接收到窗口消息,将消息投递到 xuzhiqiangwhut 的消息队列中。 2 程序在消息循环中调用 GetMessage 函数从消息队列中取出消息进行预处理, 3 调用 DispatchMessage 函数将消息回传给操作系统。 4 操作系统调用窗口过程函数对消息进行处理。
相关资源