|
典型的PID处理程序 |
======================================================================== 这是一个比较典型的PID处理程序,在使用单片机作为控制cpu时,请稍作简化,具体的PID参数必须由具体对象通过实验确定。由于单片机的处理速度和 ram资源的限制,一般不采用浮点数运算,而将所有参数全部用整数,运算 到最后再除以一个2的N次方数据(相当于移位),作类似定点数运算,可大大提高运算速度,根据控制精度的不同要求,当精度要求很高时,注意保留移位引起的“余数”,做好余数补偿。这个程序只是一般常用pid算法的基本架构,没有包含输入输出处理部分。 =====================================================================================================*/ #include <string.h> #include <stdio.h> /*====== | |
|
高精度 PID温度控制器 |
高精度 PID温度控制器
摘要:介绍一种高精度的、采用PID 控制原理的温度控制器, 给出了实验结果。这种控制器适用于小功率半导体器件的工作温度控制, 其控制精度可达±0.05℃。
1 引言 温度控制已成为工业生产、科研活动中很重要的一个环节, 能否成功地将温度控制在所需的范围内关系到整个活动的成败。由于控制对象的多样性和复杂性, 导致采用的温控手段的多样性。例如: 某种半导体激光器对工作温度的稳定性有较高的要求, 一般要将温度控制在±0.1℃左右, 才能保证器件输出的激光波长不发生超出要求的漂移, 否则,激光波长的超范围漂移将使研究工作难以开展。为达到这种温控要求, 笔者根据工作中的情况, 采用PID 控制原理研制成适合用于小 | |
|
RS-232C相关知识 |
RS-232C标准(协议)的全称是EIA-RS-232C标准,定义是“数据终端设备(DTE)和数据通讯设备(DCE)之间串行二进制数据交换接口技术标准”。它是在1970年由美国电子工业协会(EIA)联合贝尔系统、调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标准。其中EIA(Electronic Industry Association)代表美国电子工业协会,RS(Recommended standard)代表推荐标准,232是标识号,C代表RS232的最新一次修改。
1、RS-232C接口引脚定义
由于RS-232C并未定义连接器的物理特性,因此,出现了DB-25、DB-15和DB-9各种类型的连接器,其引脚的定义也各不相同。下面是常用的DB-25和DB-9连接器接口
图:
| |
|
第十一讲图形保存以及CSrollView类 |
第十一讲 图形保存和绘制
(1)结合类CPtrArray和CObjectArray(包含了CStringArray)差不多,只是前者是Void形的,也就是只要CObjectArray中参数或者返回值为Cobject的都可以把其换成void形的就是了。如cobject CObjectArray::GetAt(nIndex);此就可推出. 关于CPtrArray的形式为void CPtrArray::GetAt(nIndex); 如果利用CPtrArray进行强制转换,相当于其功能比 CObjectArray | |
|
第十讲 图形的保存、颜色对话框、位图 |
第十讲 图形的保存、颜色对话框、位图 (1)DC.SetPixel(point,RGB())用于画点。DC.Rectangle()画矩形、 DC.Ellipse()画椭圆。 (2)透明画刷指针:CBrush *pBrush=CBrush::FromHandle((CBrush) GetStockObject(NULL_BRUSH)); FromHandle为静态成员函数。 (3)if(IDOK==DLG.DoModal())因是模态对话框,所以可以。。。 (4)CColorDialog颜色对话框类,也用CDialog方式去创建。CColorDialog成员变量m_cc.rgbResult保存了最终的选择结果、而m | |
|
外观 |
第九讲 程序外观 (1)注意:实例句柄和对像句柄不同.AfxGetInstanceHandle()\theApp.m_hInstance[因为theApp是在另外的原文件中的变量,所以要声明external theApp]\ AfxGetApp()->m_hInstance可得到实例句柄。想用窗口的全局过程函数   | |
|
第八讲 对话框应用 |
第八讲 对话框应用 (1)要想得到窗口子控件的指针,必须要在WM_INITIALDIALOG之后才行. 属性PAGE其实就是一个DIALOG (2)只要在domodel()调用之前使用SetWizarMode()即可改变成向导模式. (3)对于WIZARD模式,改变BUTTON | |
|
属性表单的一点改进 |
在建立属性表单时,按照孙鑫老师的做法,先从CPropertyPage为每一个PAGE derive 一个对象,然后还又从CPropertySheet中derive一个对象,然后在此对象的构造函数中调用成员函数AddPage()函数.经过验证,第二步没有必要,可以直接定义一个CPropertySheet类,然后用Addpage()加进来第一Page即可.这样简化了,而且更容易理解. | |
|
MFC小笔记 |
cdc derive cclientdc and cwindowdc; moveto 相当于起点,LINETO相当于终点; getdesktowindow()桌面窗口,可以得到其窗口对应圣像的的指针或者其窗口的句柄 GetStockObject()得到画笔、画刷、字体、调色板的句柄,使用时必须用类型转换。 slectobject()把画笔(CPEN Member),画刷(CBRUSH),字体(CFONT),调色板选到DC上.返回值为原来的OBJECT的指针. 指定的填充区域,用FILLRECT(),因是指定的区域所以不别选到CD上.
第四讲 文本编程
主要用到的函数:CreateSolidCaret(width,height)-ShowCaret(); GetTextMetrics(TEXTMETRIC );=>注 | |
|
暑假回来 |
回来了,一共正好10天时间,哈,经过回去一下,我改变了自己的计划了,不得以也,唉,就那样子!天无绝人之路,只要自己努力,相信老天爷会为你选择一条路的。 | |
|
|
|
|