试题详情
简答题单片机应用系统软件开发大体包括哪些方面?应注意哪些要点?
  • 软件调试与所选用的软件结构和程序设计技术有关。如果采用模块程序设计技术,则需要逐个模块分别调试。调试各个子程序时一定要符合现场环境,即相应的入口和出口条件。调试的手段可采用单步或设置断点运行方式,通过检查用户系统CPU的现场、RAM的内容和I/O口的状态,来确定程序执行结果是否符合设计要求。通过检测可发现程序中死循环错误、机器码错误以及转移地址错误,同时也可发现用户系统中的硬件故障、软件算法及硬件设计错误。在调试过程中,需要不断调整用户系统的软件和硬件。
    各个模块通过后,可将有关的功能块联合其它进行综合调试。在这个阶段若发生故障,可能的原因有:子程序在运行时是否破坏现场、缓冲单元与监控程序的工作单元是否冲突。
    单步和断点调试后,应进行连线调试。这是因为单步运行只能检验程序的正确与否,而不能确定定时精度、CPU实时响应等问题。待全部调试完成后,应反复多次运行,观察程序稳定性、用户系统的操作是否符合原设计要求、安排的用户操作是否合理等情况,必要时作适当修正。
    软件和硬件联调完成后,反复运行正常,则可将用户程序固化到ROM中。插入用户样机后,用户系统即能脱离开发系统独立工作,实验室调试系统工作完成。
    硬件和软件经调试完后,对用户系统要进行现场实际运行,检查软硬件是否按预期的要求工作,各项技术指标是否达到设计要求。一般而言,系统经过软硬件调试后均可正常工作。但在某些情况下,由于应用系统运行的环境较为复杂,尤其在干扰较严重的场合下,系统进行实际运行之前无法预料,只能通过现场运行来发现问题找出相应的解决办法。或者虽然已经在系统设计时采取了软硬件抗干扰措施,但效果如何还需通过在现场运行才能得到验证。
    单片机应用系统中应用软件根据系统功能要求设计,需要可靠地实现系统的各种功能。应用系统种类繁多且各不相同,但一个优秀的应用系统软件具有下列特点:
    (1)软件结构清晰、简洁、流程合理。
    (2)各种功能程序实现模块化,方便编译、调试和代码移植。
    (3)程序存储区、数据存储区规划合理,节约硬件资源。
    (4)运行状态实现标志化管理,各个功能程序运行状态、运行结果以及运行要求都设置状态标志以便查询。程序的转移、运行、控制都可按状态标志来控制(不要误会了,这不是在提倡使用全局变量,滥用全局变量是有害的)。
    (5)经过调试修改后的程序应该进行规范化,除去修改“痕迹”。规范化的程序便于交流、借鉴,也为今后创建自己的函数库做好准备,否则你将成为代码工人。
    (6)实现软件的抗干扰设计。为提高可靠性,在应用软件中设置自诊断程序,在系统工作运行前先运行自诊断程序,以便诊断系统各特征参数和状态参数是否正常。
  • 关注下方微信公众号,在线模考后查看

热门试题