  
1.本工程为AW60功能演示，分为串口通信和功能实现：
(1)串口设置部分
   此部分有波特率选择框,串口号选择框与一个开关按钮.串口号是自动获取的,波特率
   可以自己手动设置的.开关按钮初始为"打开串口",当你选择了波特率与串
   口号时,然后点击开关按钮,按钮显示变为"关闭串口",两个选择框处于禁
   用状态,在标签中显示当前打开的串口号与波特率,下面的状态条中会显示当前操作.
   当你再次点击开关按钮时,按钮显示"打开串口",两个选择框处于可用状态
   ,在标签中显示当前关闭的串口号与波特率.
(2)串口发送数据
   此部分有发送方式选择框,有字符串方式、十进制方式、十六进制方式三种方式供您
   选择.有发送文本框、"发送数据"按钮、"清空发送框"按钮.当选择字符串方式时,对
   输入没有限制.当选择十进制发送时,要求必须输入0-9之间的字符,且输入的数据不得
   大于255,可以输入逗号与退格,会禁止输入不满足条件的,同时下面的状态条会有相应
   提示,十六进制发送也是如此.当输入数据时就可以点击发送数据按钮将文本框中的数
   据发送出去.每次重新选择数据发送方式时,都会将发送框清零.点击"清空发送框"按
   钮可以强制清空.
(3)串口接收数据
   此部分用来显示接收到的数据，有三个文本框，分别以字符串、十进制、十六进制三
   种方式显示接收到的数据。这三个文本框的Readonly属性设置为true,不允许往里面
   输入数据.当成功接收到数据时,会在文本框中显示接收到的数据.十进制都是以三位
   显示,十六进制以两位显示.
(4)其他演示功能包括小灯Light、数码管LED、液晶LCD、传感器AD、时钟Timer、键盘KB、
   PWM，这些功能的实现都基于串口通信来实现和控制.   
2.工程结构
   此工程分为两部分，与界面有关的都放在Form文件夹中,与界面无关的都放在Functi-
   on文件夹中.与界面有关的都是通过激发窗体上的控件来执行操作的.与界面无关的是
   封装好的函数,只留出一个接口,供用户调用.本工程中与界面无关的函数有四个:串口
   初始化、串口发送数据、串口接收数据、串口中断条件设置.当你用串口进行通信时
   可以直接调用这些函数,不必去了解其内部的机制.
3.注意
(1)此工程用到了委托的,委托Delegate是VB.net与C#语言一项非常重要的特性,它相当于
   C或C++语言中的指针并且是类型安全的.它主要应用于回调函数和事件处理,也用于异
   步处理中,它是一种参考类型,由基类System.Delegate派生.
(2)在界面上放置了一个状态条,显示执行过程,当运行出现错误时,便于调试.
(3)每行代码不超过78列,便于打印代码.
(4)为了区分变量,所有的全局变量都加"g_"前缀.
(5)由于串口的ReceivedBytesThreshold值只能设为正数,在SCI模块我们定义.
   了SetInterrupt过程,以便于用户选择设置接收多少个字节时触发接收中断.
(6)在发送框中输入数据,当输入逗号时要在英文输入法下输入.
(7)在发送输入框中快捷键的"复制"、"粘贴"功能受限,无法使用.
(8)C#语言,在类SCI中的SCIReceiveData函数的时候,传递的数组名前需加ref设置为引用
   ,不然无法改变原数组的值.
(9)对于处理发送字符串中的汉字问题,在接收字符串时,直接用编码的方式获取整个的字
   符串,然后再利用委托在文本框中显示,而不是如VB.NET所示一个一个字节处理.
