1、3计算器软件概要设计说明书计算机学院程序设计基础实践文档版本密级所属范围共 14 页 软件概要设计说明书拟制:Prepared by日期:Date审核:Reviewed by日期:Date审核:Reviewed by日期:Date批准:Granted by日期:Date计算机学院程序设计基础实践专用版权所有 XX修 改 履 历标准名:计算器软件概要设计说明书分类号:修改NO版本号修改日制定、修改内容起草部门作者1V1.004.12制定HDXYHDXY 软件概要设计说明书11引言编写目的此概要设计说明书对软件的解决方案、功能分配、模块化分、程序的总体结构、输入输出和接口设计、运行设计及出错设计等
2、方面作了全面的概括性的说明,为该软件的详细设计奠定了基础。此文档为模块主管、设计人员工作的阶段性总结,并提供软件主设计、设计人员和开发人员参考。背景 该项目基于展讯(Spreadtrum)平台模拟器开发。 为派生机型,中低端型号。 按键式操作。 屏显为128*160。 由XXXX设计开发。术语表MMI :Man Machine Interface 人机接口ADD :加法。SUB :减法。MULTI :乘法。DIVIDE : 除法。SUM : 求和。EQUAL : 等于。参考资料名称作者日期资料来源软件开发计划UI设计规格书计算器操作规程书SPREAD文档12任务概述目标编写一个程序来实现一个单
3、步运算的算术计算器。通过数组来存放输入的每一数字或运算符号的记录(包括1、2、3等数字,+、-、*、/ 等运算符号),然后将其信息存入缓冲BUFFER中。输入一个简单算术计算式,就在屏幕上显示结果。需求概述序号功能名称功能描述备注1加法加法运算2减法减法运算3乘法乘法运算4除法除法运算5除0运算除0运算提示性能需求无条件和限制由于该终端为中低端,且屏显大小为128X160,为输入数据全部显示,所以计算器输入数据一、输入数据二的位数均设计成14位。13总体设计模块结构标识符模块名称模块功能描述备注1计算器输入处理模块键值输入、运算符号输入操作2计算器运算处理模块进行算术运算3计算器显示模块输入显
4、示、运算结果显示4异常出错提示模块异常出错提示界面、如溢出错误、除0操作、非法运算提示可使用结构图来描述各模块之间的控制与被控制关系。功能需求与功能模块关系无设计概念及流程处理说明本系统的基本设计概念和处理流程,尽量使用图表的形式。技术简介 无算法描述 执行基本的加减乘除基本运算。流程分析使用流程图、顺序图或状态图对此模块和其他模块之间,或者模块中各子模块间的交互关系进行详细说明1、数据输入处理模块2、数据显示模块 14、接口设计数据结构定义【定义】typedef enum CALC_OP1, CALC_OP2, CALC_RESULT CALC_MODE_T;【描述】 此为计算器输入操作过程
5、中所处状态的枚举类型。【数据项】 CALC_OP1 /输入数据一和运算操作符 CALC_OP2 /输入数据二中的其它数据 CALC_RESULT【定义】typedef enum CALC_NO_ERROR, CALC_DEVIDED_BY_ZERO, CALC_OVERFLOW, CALC_IMAGINARY CALC_RESULT_T;【描述】 此为计算器计算操作的结果类型。【数据项】CALC_NO_ERROR, 运算正确 CALC_DEVIDED_BY_ZERO, 除0操作 CALC_OVERFLOW, 数据溢出 CALC_IMAGINARY 结果为虚数【定义】LOCAL uint8 s_
6、op_buf3CALC_MAX_LENGTH+1#defined CALC_MAX_LENGTH 14【描述】 此为计算器计算操作所用缓冲器。【数据项】s_op_buf0 运算符 s_op_buf1 运算数据一和计算结果 s_op_buf2 运算数据二【定义】LOCAL const uint8 s_key_mapCALC_KEY_MAP_LENGTH = 1, 2, 3, 4, 5, 6, 7, 8, 9, ., 0, #, ;【描述】 键盘按键键值映射。【数据项】1, /MSG_KEYDOWN_1, 2, /MSG_KEYDOWN_2 , 3, /MSG_KEYDOWN_3 , 4, /MS
7、G_KEYDOWN_4 , 5, /MSG_KEYDOWN_5 , 6, /MSG_KEYDOWN_6 , 7, /MSG_KEYDOWN_7 , 8, /MSG_KEYDOWN_8 , 9, /MSG_KEYDOWN_9 , ., /MSG_KEYDOWN_START, 0, /MSG_KEYDOWN_0, #, /MSG_KEYDOWN_HASH接口函数列出其他模块要调用的以及此模块中各个子模块之间有交互的所有接口函数【函数原型】LOCAL uint8 *SearchChar(uint8 *i1_text_ptr, int8 i2_char)【功能】 在一个给定的字符串中查找一个给定的字符
8、【参数】 i1_text_ptr:给定的一个字符串。i2_char :给定的一个字符【返回值】 如果找到,返回该字符的地址,否则返回NULL.【备注】 无【函数原型】LOCAL void ShowCalcError(uint16 math_error)【功能】 运算出错信息提示处理【参数】 math_error:错误类型。【返回值】 无【备注】 无【函数原型】LOCAL uint16 ShowCalcResult(double t1_dResult,uint16 math_error)【功能】 运算结果处理、显示【参数】 t1_dResult:计算结果。math_error:错误类型【返回值】
9、 返回错误类型【备注】 无【函数原型】LOCAL uint16 ExecuteFormula(void)【功能】 对输入的数据按照四则运算法则进行运算【参数】 无。【返回值】 运算错误类型【备注】 无【函数原型】LOCAL BOOLEAN FormatFormula(MMI_MESSAGE_ID_E msg_id )【功能】 计算器的按键操作,形成计算器的输入数据一、输入数据二、以及操作符。【参数】 msg_id:消息ID,包含数字键、*、#以及四个方向键和确认键。【返回值】 该键值被处理,则返回TRUE,否则返回FALSE【备注】 无【函数原型】LOCAL void DisplayCalcF
10、ormula(void)【功能】 计算器界面显示函数【参数】 无。【返回值】 无【备注】 无【函数原型】LOCAL MMI_RESULT_E HandleCalcWinMsg( MMI_WINDOW_ID_E win_id, MMI_MESSAGE_ID_E msg_id, DPARAM param)【功能】 计算器窗口界面主处理函数,主要处理窗口开启、刷新、关闭、以及其它按键操作处理。【参数】 win_id:窗口ID。msg_id:消息ID。param:开启窗口附加的参数。【返回值】 无【备注】 无信号、命令和事件列表无。15出错处理设计错误信息提示,主要包含除0操作提示,以及数据溢出的信息提示。由于数据长度有限,所以对数据操作要进行某些限制操作16未解决的问题列出所有未解决的问题,并给出解决措施。对多组数据的输入,并进行混合运算(按乘除优先、加减次之)。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1