📄 0615.lst
字号:
页 1
07-28-01
20:10:11
伟福汇编器 V5.00 Copyright (c) 1989, 99 by CHY
地址 机器码 源程序
;
;**********摩托车电控喷油系统*****************
;
; 程序设计:游仕俊 1/2001
; 电话:023-72233384 13609464958
;=============================================
;
; COMP2 1|P00--P01|20 Cin2B
; 2|P17 2|19 Cin2A
; 3|P16 3|18 A/D0
; RST 4|P15 4|17 A/D1
; VSS 5| P05|16 A/D2
; X1 6|P21 VDD|15
; X2 7|P20 P06|14 A/D3
; INT1 8|P14 P07|13 T1
; INT0 9|P13 P10|12 TXD
; TO 10|P12--P11|11 RXD
;------------------------------------------------------
; 一 常量、变量、RAM AND BIT位定义表 ;
;------------------------------------------------------
;
OILCTRL BIT P1.7 ;喷油器控制位
KINDLE EQU P1.2 ;点火脉冲位
OILPUMP BIT P1.6 ;油泵开关位
TXD_ EQU P1.0 ;RS232发
RXD_ EQU P1.1 ;RS232收
MOTOR EQU P1.3 ;启动马达位
SPEED BIT P1.4 ;转速测试位
REST_ BIT P1.5 ;外部复位位
OSC_X1 BIT P2.1 ;外部振荡1
OSC_X2 BIT P2.0 ;外部振荡2
COMPOUT EQU P0.0 ;比较器输出
COMPINA EQU P0.1 ;比较器输入1
COMPINB EQU P0.2 ;比较器输入2
AD_0 EQU P0.3 ;模数转换0
AD_1 EQU P0.4 ;模数转换1
AD_2 EQU P0.5 ;模数转换2
AD_3 EQU P0.6 ;模数转换3
JSQ_1 EQU P0.7 ;计数器1
VSS DATA 'P5' ;接地脚
VDD DATA 'P15' ;正电源+5V
PTOAD DATA 0F6H ;模数转换控制寄存器
POM2 DATA 85H ;输出口定义设置
POM1 DATA 84H ;输出口定义设置
;
OIL_BUF EQU 30H ;油门开度缓冲寄存器
AIR_T EQU 31H ;进气温度缓冲寄存器
MACH_BF EQU 32H ;机器温度缓冲寄存器
C:\YOU4\LPC767\0615.ASM
页 2
07-28-01
20:10:11
伟福汇编器 V5.00 Copyright (c) 1989, 99 by CHY
地址 机器码 源程序
VOL_BUF EQU 33H ;电压补偿缓冲寄存器
AIR_BUF EQU 34H ;空气量缓冲寄存器
FIRST_ EQU 35H ;转数寄存器
BASICH EQU 36H ;基本喷油量寄存器H
BASICL EQU 37H ;基本喷油量寄存器L
m_i EQU 38H ;数据表下标(i)
M_j EQU 39H ;数据表下标(j)
ADC_N EQU 3AH ;模数转换器编号
COUNTH EQU 3BH ;转速计数器高八位RAM
COUNTL EQU 3CH ;转速计数器低八位RAM
Tv EQU 3DH ;电压补偿喷油量寄存器
TM EQU 3EH ;温度补偿喷油量RAM
COOL_ EQU 3FH ;冷启动喷油量寄存器
;
SPEED_S EQU 20H ;速度标定点0-12K RPM/min
OIL_S EQU 21H ;节气门A/D转换量
Oangle EQU 22H ;节气门开度0,6,...,84,90度
NOT_O EQU 23H ;节气门A/D转换量求反
pump_T EQU 28H ;油泵定时器循环值
COOL_X EQU 2DH ;冷启动加浓次数寄存器
STA_X EQU 2EH ;启动加浓次数寄存器
ON_OFF EQU 2FH ;开关量标志寄存器
OIL BIT 127 ;喷油器开关位
QUICK BIT 126 ;加速标志
WEAK BIT 125 ;减速标志
HIGH_ BIT 124 ;超速标志
SLOW BIT 123 ;低速标志
FIRSTB BIT 122 ;200RPM标志
SENSOR BIT 121 ;氧传感器过浓标志
COOL_M BIT 120 ;发动机低温标志
;
FX EQU 40H ;插值点X坐标
FX1 EQU 41H ;插值点X1坐标
FX2 EQU 42H ;插值点X2坐标
FX3 EQU 43H ;插值点X3坐标
FY EQU 44H ;插值点Y坐标
FY1 EQU 45H ;插值点Y1坐标
FY2 EQU 46H ;插值点Y2坐标
FY3 EQU 47H ;插值点Y3坐标
FZX_H EQU 4CH ;点X插值高八位
FZX_L EQU 4DH ;点X插值低八位
FZ_Yh EQU 4EH ;点Y插值高八位
FZ_YL EQU 4FH ;点Y插值低八位
;
SPEEDL EQU 50H ;十六位转速低八位
SPEEDH EQU 51H ;十六位转速高八位
;
TABEL equ 0a00H ;表首地址
C:\YOU4\LPC767\0615.ASM
页 3
07-28-01
20:10:11
伟福汇编器 V5.00 Copyright (c) 1989, 99 by CHY
地址 机器码 源程序
;
;============================================================
;
org 0000h
0000 0180 ST: aJMP MAIN ;复位转主程序
ORG 0003H ;启动中断入口
0003 217E AJMP START ;转启动子程序
org 000bh ;喷油定时器0中断000BH
000B C0E0 push acc
000D C0D0 PUSH PSW
000F 218F AJMP INTF0 ;溢出转
ORG 0053H ;看门狗
0053 C0E0 PUSH acc
0055 C0D0 PUSH PSW
0057 2188 AJMP PUMP ;转油泵子程序
ORG 0080H
0080 758160 MAIN: MOV SP,#60H ;设栈底
0083 758991 mov TMOD,#10010001b ;设定时器1为模式1,GATE=1
; ;设定时器0为模式1,GATE=0
0086 752E01 mov 2eh,#01H
0089 752F00 MOV 2FH,#00H
008C 753500 MOV 35H,#00H
008F 758CEC mov th0,#0ecH
0092 758A78 mov tl0,#78H
0095 75F67E MOV PTOAD,#7eH ;定义模拟口作输入
0098 538580 ANL POM2,#80H ;关P0口数字输入
009B 43847E ORL POM1,#7eH ;关P0口数字输入
009E 753A80 mov adc_n,#80h ;开通道号00
00A1 75B702 MOV IP0H,#02H ;中断级别,定时器0最高
00A4 75B802 MOV IP0,#02H ;
00A7 75A61E MOV WDRST,#1EH ;看门狗初始化
00AA 75A6E1 MOV WDRST,#0E1H ;看门狗初始化
00AD D2AE SETB EWD ;开看门狗中断
00AF D2A9 SETB ET0 ;开定时器0中断
00B1 D2A8 SETB EX0 ;开0中断
00B3 D293 SETB P1.3 ;中断0可输入
00B5 C288 CLR IT0 ;设中断0 位低电平触发
00B7 D2AF setb EA ;开总体中断
00B9 75A717 MOV WDCON,#00010111B ;开看门狗,设定时2.1s
LOOP:
00BC 31E0 ACALL ADREAD ;调模数转换子程序
00BE 758D00 MOV TH1,#00H ;清测速计数器
00C1 758B00 MOV TL1,#00H ;......
00C4 C296 CLR P1.6 ;开开油泵
00C6 5115 ACALL COUNT
00C8 2094FD WAIT: JB P1.4,WAIT ;等负脉冲
; ACALL IGNITION ;调点火脉冲子程序
C:\YOU4\LPC767\0615.ASM
页 4
07-28-01
20:10:11
伟福汇编器 V5.00 Copyright (c) 1989, 99 by CHY
地址 机器码 源程序
00CB 75A61E MOV WDRST,#1EH ;
00CE 75A6E1 MOV WDRST,#0E1H ;
00D1 D2AE SETB EWD ;
00D3 75A717 MOV WDCON,#00010111B ;开看门狗定时器
00D6 D28E SETB TR1 ;开测速定时器
; ACALL SIGN
00D8 3094FD LOOP1: JNB P1.4,LOOP1 ;等正脉冲
;===============================================
; ACALL INGNITION ;调点火脉冲子程序
00DB A27F MOV C,127
00DD 9297 MOV P1.7,C ;开喷油器
00DF 31CD ACALL VOL
00E1 3177 ACALL QUICK_
00E3 319E ACALL OIL_ON
00E5 31AF ACALL MACH_
00E7 D28C SETB TR0 ;开喷油定时器
00E9 D52E0B DJNZ 2EH,AFAN ;启动加浓延时
00EC 752E01 MOV 2EH,#01H ;初值
;setb p1.7
00EF 51AE ACALL DIV1 ;调除法子程序
; acall count1 ;调计算子程序
00F1 515A ACALL DIV2
00F3 711C ACALL COUNT2
00F5 31D4 ACALL cmp2_y
00F7 2094FD AFAN: JB P1.4,AFAN ;等曲轴正脉冲完
00FA C28E CLR TR1 ;计数器1停测速
; ACALL IGNITION ;点火
00FC 858D3B MOV 3BH,TH1 ;测速值进RAM
00FF 858B3C MOV 3CH,TL1 ;...
0102 3121 ACALL HIGH_S ;超速
0104 3132 ACALL WEAKEN ;减速
0106 314A ACALL SLOW_S ;低速
0108 3157 ACALL QUICKS ;加速
010A 310E ACALL F200 ;200RPM/分
010C 01BC down: AJMP LOOP ;循环返回
;===============================================
F200: ;200转检测
010E 0535 INC 35H
0110 E535 MOV A,35H
0112 B4C808 CJNE A,#200,GO ;200转返回
0115 753500 MOV 35H,#00H
0118 208003 jB p0.0,SS ;置位转移
011B C279 CLR 121 ;氧传感器
011D 22 GO: RET
SS:
011E D279 SETB 121 ;送氧浓标志到标志位
0120 22 RET
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -