浅谈人机交互msOSGUI设计

人机交互(Human-Computer Interac  TI on, 简写HCI):是指人与计算机之间使用某种对话语言,以一定的交互方式,为完成确定任务的人与计算机之间的信息交换过程。

从上面的定义,可能太抽象化了,用生活中的例子来说,假如你要吃水煮鱼,选择不同功能电磁炉,人的劳累程度不一样。怎么样才可以做出色香俱全的菜肴,不同电磁炉提供的交互方法不同,有些电磁炉可以通过设定长时间低功率把鱼和其他配料味道炖在一起, 有些只能调整功率,也是可以做出美味的,有些一键设置模式,按普遍规律固定方法煮鱼。

以上其实就是三种不同人机交互方式来完成相同功能,各有不同市场需求。

今天把我学习理解到的 msOS GUI 设计跟大家分享。

msOS 灵活运用结构体,仿C# 的风格,轻便的设计出在硬件 JN12864J LCD上可交互的显示GUI,

设计思想是按添加组件方法,灵活的处理多界面,不同数据类型显示及参数调整。采用面向对象及链表方式设计方式如

Form、Label及TextBox等控件,让图形界面设计非常简单而让设计者只关心业务逻辑设计。

具体见如下框图。

 浅谈人机交互msOSGUI设计_设计制作_接口/总线/驱动

表方式:

详细见如下函数

typedef struct LabelSelf

{

byte X; // display informa  TI on at X‘row loca  TI on,it’s only 4 row.

byte Y; //display informa  TI on at Y‘column location

byte Shift; //

int Offset;

DataType Type;

DataAlign Align;

void * DataPoint;

const string * StringBlockPoint;

struct LabelSelf * NextLabelPoint;//链表

}Label;

界面设计:mmi.c 文件,通过注册控件方式,比如一个界面就是一个Form,一个form 由Label 及TextBox 及 BackText 构成。其中BackText 为固定内容,动态数据由Label 及TextBox 来控制。

目前程序做了5个Form Logo、check,work,setup,service。拿一个最简单的Form 来分析。

System.Gui.Form.Initialize(&App.Menu.CheckForm);// 即一个LCD 界面,目前只是显示三个三角形,可以编写

实现自己公司的LOGO.

CheckChart.Character = ’*‘;

for(i = 0; i 《 16; i++)

{

CheckChart.Column = 0;

}

App.Menu.CheckForm.ChartPoint = &CheckChart;

业务逻辑部分已经包含到控件的结构体定义中去,我们只要编写函数改变控件中相应变量,相对应的分层文件为data.c

void InitializeData(void)

{

App.Data.Frequence = 980000;

App.Data.Power = 6000;

App.Data.PowerPercent = 12;

App.Data.Voltage = 99;

App.Data.Current = 101;

App.Data.Temperature = -25;

App.Data.State = 1;

App.Data.MaxPower = 6000;

App.Data.MaxTemperature = 50;

App.Data.MaxFrequence = 980000;

App.Data.MaxFrequenceOffset = 100000;

App.Data.MinStream = 50;

App.Data.SerialNumber = 0;

App.Data.ProductionDate = (13 《《 16) + (7 《《 8) + 24;

App.Data.IdentifyNumber0 = 0x12345678;

App.Data.IdentifyNumber1 = 0x34567890;

App.Data.IdentifyNumber2 = 0x56789012;

App.Data.IdentifyNumber3 = 0x78901234;

}

备注:GUi.c 中的一些函数设置很巧妙,必须要结合硬件驱动,这里驱动更加巧妙。

85
64
0
66

相关资讯

  1. 1、Win7旗舰版系统打不开系统配置是什么原因?2618
  2. 2、Win7系统财付通控件无法安装如何解决?2489
  3. 3、证照之星如何提高证件照片清晰度?证照之星提高证件照片清晰度的方法642
  4. 4、如何与抖音线条君合拍与抖音线条君合拍的教程345
  5. 5、Win10专业版怎么设置定时任务?5030
  6. 6、WiFi设置隐藏要如何设置?3490
  7. 7、Win10专业版蓝屏代码Badpoolcaller要怎么处理?3339
  8. 8、BlueStacks蓝叠黑屏怎么办?黑屏解决方法分享4579
  9. 9、Win7旗舰版电脑点击关机后显示蓝屏怎么处理?1469
  10. 10、超级捕快怎么注册?超级捕快注册的方法2906
全部评论(0)
我也有话说
0
收藏
点赞
顶部