欢迎光临散文网 会员登陆 & 注册

PFTL101BE 2.0KN 3BSE004214R1直接以实现功能为目标进行编码

2023-09-01 10:59 作者:小赖总-17750010683  | 我要投稿

PFTL101BE 2.0KN 3BSE004214R1直接以实现功能为目标进行编码

嵌入式是软件设计领域的一个分支,它自身的诸多特点决定了系统架构师的选择,同时它的一些问题又具有相当的通用性,可以推广到其他的领域。

提起嵌入式软件设计,传统的印象是单片机,汇编,高度依赖硬件。传统的嵌入式软件开发者往往只关注实现功能本身,而忽视诸如代码复用,PFTL101BE 2.0KN 3BSE004214R1数据和界面分离,可测试性等因素。从而导致嵌入式软件的质量高度依赖开发者的水平,成败系之一身。随着嵌入式软硬件的飞速发展,今天的嵌入式系统在功能,规模和复杂度各方面都有了极大的提升。比如,Marvell公司的PXA3xx系列的最高主频已经达到800Mhz,内建USB,WIFI,2D图形加速,32位DDR内存。在硬件上,今天的嵌入式系统已经达到甚至超过了数年前的PC平台。在软件方面,完善的操作系统已经成熟,比如Symbian, Linux, WinCE。基于完善的操作系统,诸如字处理,图像,视频,音频,游戏,网页浏览等各种应用程序层出不穷,其功能性和复杂度比诸PC软件不遑多让。原来多选用专用硬件和专用系统的一些商业设备公司也开始转换思路,以出色而廉价的硬件和完善的操作系统为基础,PFTL101BE 2.0KN 3BSE004214R1用软件的方式代替以前使用专有硬件实现的功能,从而实现更低的成本和更高的可变更,可维护性。

2.决定架构的因素和架构的影响

PFTL101BE 2.0KN 3BSE004214R1架构不是一个孤立的技术的产物,它受多方面因素的影响。同时,一个架构又对软件开发的诸多方面造成影响。

下面举一个具体的例子。

摩托车的发动机在出厂前必须通过一系列的测试。在流水线上,发动机被送到每个工位上,由工人进行诸如转速,噪音,振动等方面的测试。要求实现一个嵌入式设备,具备以下基本功能:

  1. 安装在工位上,工人上班前开启并登录。

  2. 通过传感器自动采集测试数据,并显示在屏幕上。

  3. 记录所有的测试结果,并提供统计功能。比如次品率。

如果你是这个设备的架构师,哪些问题是在设计架构的时候应该关注的呢?

2.1. 常见的误解

2.1.1. 小型的系统不需要架构

PFTL101BE 2.0KN 3BSE004214R1有相当多的嵌入式系统规模都较小,一般是为了某些特定的目的而设计的。受工程师认识,客户规模和项目进度的影响,经常不做任何架构设计,直接以实现功能为目标进行编码。这种行为表面上看满足了进度,成本,功能各方面的需求,但是从长远来看,在扩展和维护上付出的成本,要远远高于最初节约的成本。如果系统的最初开发者继续留在组织内并负责这个项目,那么可能一切都会正常,一旦他离开,后续者因为对系统细节的理解不足,就可能引入更多的错误。要注意,嵌入式系统的变更成本要远远高于一般的软件系统。好的软件架构,可以从宏观和微观的不同层次上描述系统,并将各个部分隔离,从而使新特性的添加和后续维护变得相对简单。

举一个城铁刷卡机的例子,这个例子在前面的课程中出现过。简单的城铁刷卡机只需要实现如下功能:

一个While循环足以实现这个系统,直接就可以开始编码调试。但是从一个架构师的角度,这里有没有值得抽象和剥离的部分呢?

  1. 计费系统。计费系统是必须抽象的,比如从单次计费到按里程计费。

  2. 传感器系统。传感器包括磁卡感应器,投币器等。设备可能更换。

  3. 故障处理和恢复。考虑到较高的可靠性和较短的故障恢复时间,这部分有必要单独设计。

未来很可能出现的需求变更:

  1. 操作界面。是否需要抽象出专门的Model来?以备将来实现View。

  2. 数据统计。是否需要引入关系型数据库?

如果直接以上面的流程图编码,当出现变更后,有多少代码可以复用?

不过,也不要因此产生过度的设计。架构应当立足满足当前需求,并适当的考虑重用和变更。

ABB IGCT 5SHX1960L0004 可控硅 5SHY系列可控硅都有货

ABB CI545 模块 (ABB S800 通讯卡)

ABB IGCT 5SGX1445H0001 可控硅 5SHY系列可控硅都有货

ABB AI723F 模块 (ABB S800 通讯卡)

ABB 3BHB007211R0105 (AC800F模块) 工控系统自动化备件

ABB AI830A-eA 模块 (ABB S800 通讯卡)

ABB PM820-2 模块 控制器

ABB CI520V1 模块 (ABB S800 通讯卡)

ABB IGCT 5SHY3545L0002 可控硅 5SHY系列可控硅都有货

ABB PM153 模块 控制器

ABB 57310001-HG 备件板 工控系统自动化备件

ABB 07DI92 GJR5252400R4101 控制器模块PLC风电设备

ABB 5760293-7B 备件板 工控系统自动化备件

ABB 086371-502 板子 进口工控备件

ABB IGCT 70EB01b-E 可控硅 5SHY系列可控硅都有货

ABB 3BSE008518R1 (AC800F模块) 工控系统自动化备件

ABB IGCT 5SHY35L4511 可控硅 5SHY系列可控硅都有货

ABB IGCT 5SHX1445H0002 可控硅 5SHY系列可控硅都有货

ABB 3BUS208728-001 (AC800F模块) 工控系统自动化备件

ABB 3HNA006144-001 (AC800F模块) 工控系统自动化备件

ABB CI522 模块 (ABB S800 通讯卡)

ABB 3BHE009017R0101 (AC800F模块) 工控系统自动化备件

ABB IGCT 5SHY35L4520 可控硅 5SHY系列可控硅都有货

ABB 07KT95 GJR5252800R0100 控制器模块PLC风电设备

ABB 3BSE018161R2 (AC800F模块) 工控系统自动化备件

ABB PP825A 3BSE042240R3 模块 控制器

ABB PP815 模块 控制器

ABB 3BSE016237R1 (AC800F模块) 工控系统自动化备件

ABB PP835A 3BSE042234R2 触摸屏

ABB IGCT 5SGY3545L4510 可控硅 5SHY系列可控硅都有货

ABB 3BSE020508R2 DI801-eA (AC800F模块) 工控系统自动化备件

ABB 3BHB003688R0101 (AC800F模块) 工控系统自动化备件

ABB IGCT 5SHY4045L0004GVC736 3BHB021400R0002 可控硅 5SHY系列可控硅都有货

ABB CS513(3BSE000435R) 模块 (ABB S800 通讯卡)

ABB IGCT 5SHY50L5500 可控硅 5SHY系列可控硅都有货

ABB 3BSE018109R1 SB821 (AC800F模块) 工控系统自动化备件

ABB AI820,3BSE008544R1 模块 (ABB S800 通讯卡)

ABB 3BSE018059R1 (AC800F模块) 工控系统自动化备件

ABB CI810V1 模块 (ABB S800 通讯卡)

ABB AIM0006 模块 (ABB S800 通讯卡)

ABB IGCT 5SHX2645L0004 可控硅 5SHY系列可控硅都有货

ABB IGCT 5SHX2645L0001 可控硅 5SHY系列可控硅都有货

ABB 3BSE050090R65 (AC800F模块) 工控系统自动化备件

ABB 3BSE022366R2 CI801-eA (AC800F模块) 工控系统自动化备件

ABB IGCT 5SHY3545L0020 可控硅 5SHY系列可控硅都有货

ABB 3BSE018172R1 SB822 (AC800F模块) 工控系统自动化备件

ABB PPD113B01-10-150000 模块 控制器

ABB IGCT 800PP846A 可控硅 5SHY系列可控硅都有货

ABB 3BSE037760R2 TB40AeA (AC800F模块) 工控系统自动化备件

ABB CI854K01 模块 (ABB S800 通讯卡)

ABB AI815 模块 (ABB S800 通讯卡)

ABB 3BSE008544R2 AI820-eA (AC800F模块) 工控系统自动化备件

ABB 57520001-EV DSCS140 备件板 工控系统自动化备件

ABB 3BSE013238R1 TU837V1 (AC800F模块) 工控系统自动化备件

ABB 3BSE008544R1 (AC800F模块) 工控系统自动化备件

ABB PN6644424A1 模块 控制器

ABB 3BSE013230R1 (AC800F模块) 工控系统自动化备件

ABB CI858 模块 (ABB S800 通讯卡)

ABB 3BSE022460R1 TU846 (AC800F模块) 工控系统自动化备件

ABB 3BSE025349R1 (AC800F模块) 工控系统自动化备件

ABB XVC768AE101 模块 控制器

ABB 3BSE042243R1 触摸屏 PP800面板

ABB 07KT98 GJR5253100R2260 控制器模块PLC风电设备


PFTL101BE 2.0KN 3BSE004214R1直接以实现功能为目标进行编码的评论 (共 条)

分享到微博请遵守国家法律