资料库

C#2010编程基础及在运动控制卡上的应用.pdf

第1页 / 共64页
第2页 / 共64页
第3页 / 共64页
第4页 / 共64页
第5页 / 共64页
第6页 / 共64页
第7页 / 共64页
第8页 / 共64页
资料共64页,剩余部分请下载后查看
C#2010 编程基础及在运动控制卡上的应用 左 力 2014.5.9.修改 目 录 录.......................................................................................................................................................................1 目 第一讲: C#2010 概述及基础 .....................................................................................................................................2 第二讲: C#2010 编程语言 .......................................................................................................................................20 第三讲: C#2010 在运动控制卡上的应用 .............................................................................................................. 27 第四讲: C#2010 绘图、多线程编程方法 .............................................................................................................. 37 第五讲: C#2010 高速采样的方法 ...........................................................................................................................50 第六讲: C#2010 程序生成安装软件 .......................................................................................................................56 1
第一讲: C#2010 概述及基础 一. 为什么要用C#? 1. Windows XP将会在 2014年4月8日正式“退休”,届时微软将不会再为该系统提供每周的安 全补丁更新和其他的技术支持。即继续用 XP系统有安全隐患。 2. 微软建议大家使用 Win8、Win7。(2013年10月 17日,微软正式推出 Windows 8.1。Win8 太新,对硬 件要求也高,只有 64位系统。现在用 Win8 为时尚早。 ) 在Win7下,使用什么编程软件好? 继续用 VB6.0 。但VB6.0 在Win7下兼容性不好、慢,且太老( 1998年上市)、功能差; 改用 VB2010。但 VB2010和VB6.0差别很大,要学新东西。 用C#、VC。会不会太难? VB2010、C#、VC,选用哪一个为好?先调查一下,大家都在用什么软件。 2012年底的 Tiobe编程语言排行榜图 1所示: 2
图 1 2012年底的 Tiobe编程语言排行榜 2013 年 8 月编程语言排行榜如图 2 所示。 图 2 2013年 8月 Tiobe编程语言排行榜 Java,1995年由 SUN公司正式推出,免费!具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于 个人 PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网。 (2010年Oracle公司收购了 SUN) Objective-C ,是扩充 C的面向对象编程语言。 它主要使用于 Mac OS X 和 GNUstep 这两个使用 OpenStep标准的系 统。 PHP(Hypertext Preprocessor的缩写,中文名: “超文本预处理器 ”)是一种通用开源脚本语言。语法吸收了 C 语言、 Java和 Perl的特点,入门门槛较低,易于学习,使用广泛,主要适用于 Web开发领域。 Python/?pa? θ ?n/是一种解释型、 面向对象、 动态数据类型的高级程序设计语言。 自从 1991Python 语言诞生至今, 它逐渐被广泛应用于处理系统管理任务和 Web编程。免费、开源。 数据表明: 用C#的人比用VB的人多近一倍。 二. C#的历史: C#读作 C Sharp。符号 #有2种解释: #在五线谱中读作 Sharp,是“升半个音”的意思。这里用 #有对 C提升之意。 3
C C + + C + + + + ,为了方便写成了C #。 1996年原Broland公司的首席研发设计师安德斯 ·海尔斯伯格(Anders Hejlsberg)加入微软, 开始开发 Visual J++。Visual J++很快由 1.1版本升级到 6.0版。VJ++编译出来的虚拟机械码的执 行效率不但比任何 Java开发工具快, 在某些方面甚至比原生的 Windows开发工具, 如:Delphi、 VB、甚至是 VC++ 效率还高。 SUN公司认为 Visual J++ 违反了 Java开发平台的中立性,对微软提出了诉讼。 2000年6月 26日微软在奥兰多举行的“职业开发人员技术大会( PDC 2000)”上,推出新的语言 C#,它 是在Visual J++基础上开发的软件,同时停止 Visual J++的销售。所以, C#语言深受 Java、C和 C++的影响。 2000年6月微软公司发布一种新的编程语言 C# 1.0。 2003年5月,微软推出了 Visual Studio .NET 2003,同时也发布了 C#的改进版本 C# 1.1 微软在 2004年的6月份发布了 Visual Studio 2005的第一个 Beta版,同时展示了 C#2.0。 2005年9月份的 PDC大会上微软推出 C#3.0的技术预览版。 2010年4月推出的 Visual Studio 2010及C#4.0,支持开发面向 Windows7的应用程序。 2012年9月微软发布了 Visual Studio 2012及C#5.0,可支持 Windows8。 C#的巨大成功是安德斯 ·海尔斯伯格在编译器领域的领袖地位的又一次体现。可是说: 安 德斯·海尔斯伯格是 C #之父。(Turbo Pascal、Delphi也是出自他手) 三. C#的优点: C#是一种强大的、面向对象的程序开发语言,是专门用于 .Net的编程语言,用 C#编程的 代码总是在 .Net Framework中运行。 C#综合了 VB 简单的可视化操作和 C++的高运行效率,以其强大的操作能力、优雅的语法 风格、创新的语言特性和便捷的面向组件编程的支持成为 .NET平台的首选语言。 C#在继承 C和C++强大功能的同时去掉了一些它们的复杂特性 (例如没有指针、 宏以及不 允许多重继承等)。 C#语言和 Java很相似。学会 C#后,学习 Java很容易。 结论: 去熟悉VB2010,还不如直接学习、使用C#。 4
什么是 .NET ? .NET平台是于 2000年6月由 Microsoft 推出的全新的应用程序开发平台, 用于构建和运行新 一代的 Microsoft Windows和Web应用程序。 .NET平台包括 4种核心技术: .NET Framework, .NET企业服务器、 构建模块服务、 Visual Studio.NET。 .NET Framework是.NET平台核心中的核心。 它为 .NET平台下应用程序的运行提供基本框 架。它有 2个主要组件: CLR (公共语言运行时, Common Language Runtime )、.NET Framework类 库。 本人感受: C#的功能强:类库庞大、多线程、速度快; 界面设计简单、美观,和 VB 类似; 稳定性比 VB6.0强(调试运动控制卡时没有自动退出现象) ; 智能化水平高(写代码时格式自动对齐,有智能提示;调试程序时方便,能给出 有用的信息等); 学C#比学 VC容易(难点是要适应一些新概念,如:类) 。 四. 安装C# 可以在网上下载免费的 C#2010Express版(也称为学习版)软件包使用。 使用 C#2010Express版可以正常运行运动控制卡。但缺少一些高级功能。 建议购买 C#专业版软件使用。 5
五. 第一个C#程序 输入 3个数字(字母也行),点击“开始”键, 3个数按从小到大顺序重新排列,并输出结 果。界面和运行结果如图 3所示。 输入数字 输出结果 图3 第一个 C#程序的界面和运行结果 C#的编辑界面和 VB6.0相似,如图 4、图 5所示。和 VB6.0不同的是:除了窗体及代码外, C#还有一个主程序 Program.cs、一个系统自动生成的窗体设计程序 Form1.Designer.cs。 图4 C#的窗体编辑界面 6
类 方法 图5 C#的代码编辑界面 C#的程序结构如例程 1代码所示。 例程 1: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; // 引入 System等命名空间 // 相当于 VC的头文件 namespace FirstOne { // 创建名为 FirstOne 的命名空间 // 命名空间中有多个“类”文件 // Program.cs 为主程序文件 class Program // 创建名为 Program的静态类 static { /// 7
/// 应用程序的主入口点。 /// [ STAThread] static { void Main() // 指示应用程序的 COM线程模式是单线程单元( STA)。 // 创建名为 Main ()的静态方法 Application Application Application .EnableVisualStyles(); .SetCompatibleTextRenderingDefault( .Run( new Form1()); // 启用可视化样式 // 设置呈现格式 false ); // 运行 Form1窗体 } } // Form1.cs 为窗体事件的代码 partial class Form1 : Form // 创建名为 Form1的公共类 public { Form1() public { InitializeComponent(); } private { void button1_Click( object sender, EventArgs e) // 开始按键被点击 string[] MyData = new string [3]; // 红色所示代码为编程者写的,其他均为自动生 成 MyData[0] = textBox1.Text; MyData[1] = textBox2.Text; MyData[2] = textBox3.Text; Array.Sort(MyData); textBox1.Text textBox2.Text textBox3.Text = MyData[0]; = MyData[1]; = MyData[2]; } // 输入数据 // 排序 // 输出结果 // Form1.Designer.cs 为窗体设计代码,由 Visual Studio 自动生成 /// /// 必需的设计器变量。 /// private /// /// 清理所有正在使用的资源。 /// /// protected 8 System.ComponentModel. IContainer components = null ; 如果应释放托管资源,为 true ;否则为 false 。 override void Dispose( bool disposing)
分享到:
收藏