STC89S58单片机+JH7A检查仪微机接口软件设计(9)
时间:2017-06-22 16:50 来源:毕业论文 作者:毕业论文 点击:次
4.1 软件编程语言的选择 对于51系列单片机而言,既可采用汇编语言,也可使用C语言编程。汇编语言是直接面向处理器的程序设计语言。处理器是在指令的控制下工作的,处理器可以识别的每一条指令称为机器指令。每一种处理器都有自己可以识别的一整套指令,称为指令集。处理器执行指令时,根据不同的指令采取不同的动作,完成不同的功能,既可以改变自己内部的工作状态,也能控制其它外围电路的工作状态。 4.1.1 优点 因为用汇编语言设计的程序最终被转换成机器指令,故能够保持机器语言的一致性,直接、简洁,并能像机器指令一样访问、控制计算机的各种硬件设备。使用汇编语言,额可以访问所有能够被访问的软、硬件资源。 目标代码简短,占用内存少,执行速度快,是高效的程序设计语言,经常与高级语言配合使用,以改善程序的执行速度和效率,弥补高级语言在硬件控制方面的补足,应用十分广泛。 本次设计中采用汇编语言,编辑环境为Keil编程器。 4.2 本系统软件程序设计 JH7A检查仪的软件是根据系统的硬件来实现的。软件采用的是模块化的设计,使用有限状态机模型。把所有外部可能产生的事件定义成不同的消息,消息产生后,进入消息队列,由主循环负责分发。另外,把系统的不同运行阶段定义成系统的状态,不同的状态,对不同的消息产生不同的响应,同时又有可能引起状态的改变,程序中除了主循环之外,其他模块相互独立,各个模块的改动不会影响其他模块;如果要添加新的功能模块,只需在状态,消息里面增加新的定义即可。状态如果太少,则程序中需要的判断应该相应的要增多,违背了模块化的思想;如果太多,则程序又显琐碎,影响开发的效率。 而软件同样的根据每个模块所实现的功能来编写子程序的,然后通过主程序调用子程序来实现所需的功能。软件主要包括主程序、按键程序和自检程序。 4.2.1 程序地址赋值 WDTE EQU 9FH SCONF EQU 0BFH RS EQU P2.7 ;L:存取缓存器,H:存取DDRAM WR_lcd EQU P3.6 ;L有效 RD_lcd EQU P3.7 ;L有效 CS1 EQU P2.6 ;L有效 CS2 EQU P2.5 ;H有效 BUSY EQU P3.2 ;INT EQU P3.6 ;RST EQU P3.7 ; CS_640 BIT P3.4 DAT_640 BIT P1.1 CLK_640 BIT P1.0 ;74HC165 CH_165 EQU p2.4; CLK_165 EQU P2.3; DA1_165 EQU p2.2 DA2_165 EQU P2.1 ;继电器输出 J1 EQU P1.2 J2 EQU P1.3 J3 EQU P1.4 J4 EQU P1.5 J5 EQU P1.6 (责任编辑:qin) |