?? pump.src
字號(hào):
; pump.SRC generated from: pump.c
; COMPILER INVOKED BY:
; D:\Keil\C51\BIN\C51.EXE pump.c BROWSE DEBUG OBJECTEXTEND CODE LISTINCLUDE SYMBOLS
$NOMOD51
NAME PUMP
CCF2 BIT 0D8H.2
SPI0CKR DATA 09DH
CCF3 BIT 0D8H.3
P0 DATA 080H
Heat_flag BIT 090H.1
SPIEN BIT 0F8H.0
CCF4 BIT 0D8H.4
P1 DATA 090H
AA BIT 0C0H.2
WDTCN DATA 0FFH
P2 DATA 0A0H
ADC0CF DATA 0BCH
P3 DATA 0B0H
AC BIT 0D0H.6
T1 BIT 080H.3
EIE1 DATA 0E6H
EA BIT 0A8H.7
EIE2 DATA 0E7H
PSCTL DATA 08FH
MSTEN BIT 0F8H.1
CF BIT 0D8H.7
ADC0CN DATA 0E8H
DAC0CN DATA 0D4H
DAC1CN DATA 0D7H
SM_CLK1 BIT 0A0H.2
IE DATA 0A8H
TMR3RLH DATA 093H
EIP1 DATA 0F6H
CEX0 BIT 080H.2
EIP2 DATA 0F7H
PCA0CPH0 DATA 0FAH
PCA0CPH1 DATA 0FBH
TMR3RLL DATA 092H
SM_EN BIT 0A0H.3
PCA0CPH2 DATA 0FCH
CR BIT 0D8H.6
PCA0CPH3 DATA 0FDH
EXF2 BIT 0C8H.6
PCA0CPH4 DATA 0FEH
PCA0CPL0 DATA 0EAH
PCA0CPL1 DATA 0EBH
PCA0CPM0 DATA 0DAH
PCA0MD DATA 0D9H
PCA0CN DATA 0D8H
ES BIT 0A8H.4
PCA0CPL2 DATA 0ECH
PCA0CPM1 DATA 0DBH
PCA0CPL3 DATA 0EDH
PCA0CPM2 DATA 0DCH
IP DATA 0B8H
PCA0CPL4 DATA 0EEH
PCA0CPM3 DATA 0DDH
SM_CW BIT 0A0H.4
RI BIT 098H.0
PCA0CPM4 DATA 0DEH
TXBSY BIT 0F8H.3
CY BIT 0D0H.7
SI BIT 0C0H.3
T1IN BIT 090H.6
INT1 BIT 080H.4
TI BIT 098H.1
XBR0 DATA 0E1H
XBR1 DATA 0E2H
EMI0CN DATA 0AFH
XBR2 DATA 0E3H
REF0CN DATA 0D1H
AMX0CF DATA 0BAH
RCAP2H DATA 0CBH
PS BIT 0B8H.4
SP DATA 081H
T2EX BIT 080H.5
OV BIT 0D0H.2
SMB0CN DATA 0C0H
RCAP2L DATA 0CAH
SM_MODE BIT 0A0H.5
MODF BIT 0F8H.5
DI2PIN BIT 090H.2
SMB0CR DATA 0CFH
CPT0CN DATA 09EH
ADSTM0 BIT 0E8H.2
CPT1CN DATA 09FH
ADSTM1 BIT 0E8H.3
RCLK BIT 0C8H.5
TCLK BIT 0C8H.4
SPI0CN DATA 0F8H
PRT0CF DATA 0A4H
SBUF DATA 099H
PCON DATA 087H
PRT1CF DATA 0A5H
Lpower_LED BIT 090H.3
SPIF BIT 0F8H.7
PRT2CF DATA 0A6H
PRT3CF DATA 0A7H
SCON DATA 098H
ADCINT BIT 0E8H.5
TMOD DATA 089H
TCON DATA 088H
WCOL BIT 0F8H.6
AMX0SL DATA 0BBH
PRT1IF DATA 0ADH
TMR3CN DATA 091H
State_LED BIT 090H.7
IE0 BIT 088H.1
IE1 BIT 088H.3
B DATA 0F0H
DAC0H DATA 0D3H
ADC0H DATA 0BFH
OSCICN DATA 0B2H
DAC1H DATA 0D6H
CLKPIN BIT 090H.5
SMBFTE BIT 0C0H.1
ADLJST BIT 0E8H.0
BUSY BIT 0C0H.7
DAC0L DATA 0D2H
ADC0L DATA 0BEH
DAC1L DATA 0D5H
ACC DATA 0E0H
ADWINT BIT 0E8H.1
CT2 BIT 0C8H.1
ET0 BIT 0A8H.1
ADBUSY BIT 0E8H.4
ET1 BIT 0A8H.3
TF0 BIT 088H.5
ET2 BIT 0A8H.5
TF1 BIT 088H.7
TF2 BIT 0C8H.7
SMBTOE BIT 0C0H.0
RB8 BIT 098H.2
TH0 DATA 08CH
EX0 BIT 0A8H.0
IT0 BIT 088H.0
PCA0H DATA 0F9H
TH1 DATA 08DH
EX1 BIT 0A8H.2
TB8 BIT 098H.3
IT1 BIT 088H.2
TH2 DATA 0CDH
Balarm_flag BIT 090H.0
P BIT 0D0H.0
SM0 BIT 098H.7
OSCXCN DATA 0B1H
TL0 DATA 08AH
SM1 BIT 098H.6
PCA0L DATA 0E9H
TL1 DATA 08BH
SM2 BIT 098H.5
TL2 DATA 0CCH
PT0 BIT 0B8H.1
RS0 BIT 0D0H.3
PT1 BIT 0B8H.3
RS1 BIT 0D0H.4
PT2 BIT 0B8H.5
TR0 BIT 088H.4
TR1 BIT 088H.6
SDA BIT 080H.0
TR2 BIT 0C8H.2
PX0 BIT 0B8H.0
PX1 BIT 0B8H.2
SLVSEL BIT 0F8H.2
ADCEN BIT 0E8H.7
DPH DATA 083H
ADC0GTH DATA 0C5H
DPL DATA 082H
ADC0GTL DATA 0C4H
CNVSTR BIT 080H.6
SCL BIT 080H.1
ADC0LTH DATA 0C7H
EXEN2 BIT 0C8H.3
RSTSRC DATA 0EFH
FLACL DATA 0B7H
CPRL2 BIT 0C8H.0
REN BIT 098H.4
ADC0LTL DATA 0C6H
T2CON DATA 0C8H
STA BIT 0C0H.5
ADCTM BIT 0E8H.6
SMB0ADR DATA 0C3H
SMB0DAT DATA 0C2H
SPI0CFG DATA 09AH
TMR3H DATA 095H
CKCON DATA 08EH
RXOVRN BIT 0F8H.4
TMR3L DATA 094H
DIPIN BIT 0A0H.0
CLK2PIN BIT 090H.4
F0 BIT 0D0H.5
FLSCL DATA 0B6H
F1 BIT 0D0H.1
STO BIT 0C0H.4
ENSMB BIT 0C0H.6
SPI0DAT DATA 09BH
SM_RST BIT 080H.7
PSW DATA 0D0H
CCF0 BIT 0D8H.0
SMB0STA DATA 0C1H
CCF1 BIT 0D8H.1
?PR?SYSCLK_Init?PUMP SEGMENT CODE
?PR?IO_Init?PUMP SEGMENT CODE
?PR?ISR_Init?PUMP SEGMENT CODE
?PR?Global_Init?PUMP SEGMENT CODE
?PR?Bubble_alarm?PUMP SEGMENT CODE
?PR?_delay?PUMP SEGMENT CODE
?PR?_nop?PUMP SEGMENT CODE
?PR?pk?PUMP SEGMENT CODE
?PR?lcdwbit?PUMP SEGMENT CODE
?BI?lcdwbit?PUMP SEGMENT BIT OVERLAYABLE
?PR?_lcdwd?PUMP SEGMENT CODE
?PR?lcdwd1?PUMP SEGMENT CODE
?PR?l_set?PUMP SEGMENT CODE
?PR?display?PUMP SEGMENT CODE
?PR?noplay?PUMP SEGMENT CODE
?PR?lcd2wbit?PUMP SEGMENT CODE
?BI?lcd2wbit?PUMP SEGMENT BIT OVERLAYABLE
?PR?_lcd2wd?PUMP SEGMENT CODE
?PR?lcd2wd1?PUMP SEGMENT CODE
?PR?l2_set?PUMP SEGMENT CODE
?PR?display2?PUMP SEGMENT CODE
?PR?noplay2?PUMP SEGMENT CODE
?PR?SM_Set?PUMP SEGMENT CODE
?PR?T0_Set?PUMP SEGMENT CODE
?PR?T0_ISR?PUMP SEGMENT CODE
?PR?SM_SR?PUMP SEGMENT CODE
?PR?DAC0_Set?PUMP SEGMENT CODE
?PR?DAC1_Set?PUMP SEGMENT CODE
?PR?ADC_Set?PUMP SEGMENT CODE
?PR?ADC_ISR?PUMP SEGMENT CODE
?PR?T1_Set?PUMP SEGMENT CODE
?PR?T1_ISR?PUMP SEGMENT CODE
?PR?PCA_ADC?PUMP SEGMENT CODE
?PR?T2_Set?PUMP SEGMENT CODE
?PR?T3_Set?PUMP SEGMENT CODE
?PR?T3_ISR?PUMP SEGMENT CODE
?PR?data_inv?PUMP SEGMENT CODE
?DT?data_inv?PUMP SEGMENT DATA OVERLAYABLE
?PR?pulse_inv?PUMP SEGMENT CODE
?PR?Read_flash?PUMP SEGMENT CODE
?PR?Write_flash?PUMP SEGMENT CODE
?DT?Write_flash?PUMP SEGMENT DATA OVERLAYABLE
?PR?keyinterrupt?PUMP SEGMENT CODE
?DT?keyinterrupt?PUMP SEGMENT DATA OVERLAYABLE
?PR?main?PUMP SEGMENT CODE
?C_INITSEG SEGMENT CODE
?CO?PUMP SEGMENT CODE
?BI?PUMP SEGMENT BIT
?DT?PUMP SEGMENT DATA
EXTRN CODE (?C?ULCMP)
EXTRN CODE (?C?FCASTI)
EXTRN CODE (?C?FPMUL)
EXTRN CODE (?C?FPADD)
EXTRN CODE (?C?FPSUB)
EXTRN CODE (?C?CASTF)
EXTRN CODE (?C?ULDIV)
EXTRN CODE (?C?IMUL)
EXTRN CODE (?C?LMUL)
EXTRN CODE (?C?CLDPTR)
EXTRN CODE (?C?CCASE)
EXTRN CODE (?C?UIDIV)
EXTRN CODE (?C_STARTUP)
PUBLIC PK_Flag
PUBLIC Gross_Flag
PUBLIC temp2
PUBLIC k
PUBLIC Point_Flag
PUBLIC code_l
PUBLIC l_data
PUBLIC keycode
PUBLIC code_h
PUBLIC Hold_Flag
PUBLIC Drop_NStep
PUBLIC PWM_Width
PUBLIC kk
PUBLIC BUFFER
PUBLIC temp
PUBLIC Fluxdrop_Flag
PUBLIC lcd_data
PUBLIC Buffer_NUM
PUBLIC Drop_Num
PUBLIC Flux_Pulse
PUBLIC All_Pulse
PUBLIC Speed_Set
PUBLIC SR_Flag
PUBLIC lcd_data_code
PUBLIC temp2_code
PUBLIC temp_code
PUBLIC main
PUBLIC keyinterrupt
PUBLIC Write_flash
PUBLIC Read_flash
PUBLIC pulse_inv
PUBLIC data_inv
PUBLIC T3_ISR
PUBLIC T3_Set
PUBLIC T2_Set
PUBLIC PCA_ADC
PUBLIC T1_ISR
PUBLIC T1_Set
PUBLIC ADC_ISR
PUBLIC ADC_Set
PUBLIC DAC1_Set
PUBLIC DAC0_Set
PUBLIC SM_SR
PUBLIC T0_ISR
PUBLIC T0_Set
PUBLIC SM_Set
PUBLIC noplay2
PUBLIC display2
PUBLIC l2_set
PUBLIC lcd2wd1
PUBLIC _lcd2wd
PUBLIC ?lcd2wbit?BIT
PUBLIC lcd2wbit
PUBLIC noplay
PUBLIC display
PUBLIC l_set
PUBLIC lcdwd1
PUBLIC _lcdwd
PUBLIC ?lcdwbit?BIT
PUBLIC lcdwbit
PUBLIC pk
PUBLIC _nop
PUBLIC _delay
PUBLIC Bubble_alarm
PUBLIC Global_Init
PUBLIC ISR_Init
PUBLIC IO_Init
PUBLIC SYSCLK_Init
RSEG ?DT?Write_flash?PUMP
?Write_flash?BYTE:
pwrite?3764: DS 2
ORG 2
pgen?3765: DS 3
RSEG ?BI?lcd2wbit?PUMP
?lcd2wbit?BIT:
n?1452: DBIT 1
RSEG ?DT?keyinterrupt?PUMP
?keyinterrupt?BYTE:
release_flag?3867: DS 1
RSEG ?DT?data_inv?PUMP
?data_inv?BYTE:
a?3459: DS 4
ORG 4
b?3460: DS 4
RSEG ?BI?lcdwbit?PUMP
?lcdwbit?BIT:
n?846: DBIT 1
RSEG ?BI?PUMP
SR_Flag: DBIT 1
Speed_Set: DBIT 1
Fluxdrop_Flag: DBIT 1
Hold_Flag: DBIT 1
Gross_Flag: DBIT 1
PK_Flag: DBIT 1
RSEG ?DT?PUMP
All_Pulse: DS 4
Flux_Pulse: DS 4
Drop_Num: DS 2
Buffer_NUM: DS 2
lcd_data: DS 10
temp: DS 4
BUFFER: DS 2
kk: DS 2
PWM_Width: DS 2
Drop_NStep: DS 4
code_h: DS 1
keycode: DS 1
l_data: DS 5
code_l: DS 1
Point_Flag: DS 1
k: DS 2
temp2: DS 4
RSEG ?CO?PUMP
temp_code:
DB 000H
DB 001H
DB 000H
DB 000H
temp2_code:
DB 000H
DB 005H
DB 000H
DB 000H
lcd_data_code:
DB 088H
DB 0BBH
DB 0C1H
DB 091H
DB 0B2H
DB 094H
DB 084H
DB 0B9H
DB 080H
DB 0B0H
RSEG ?C_INITSEG
DB 001H
DB keycode
DB 000H
DB 002H
DB k
DW 00000H
DB 002H
DB kk
DW 00000H
; /***********************************************************************************************
; 模塊名:pump.h
; 創(chuàng)建人:王恩剛
; ************************************************************************************************/
; /**********************************************頭文件聲明***************************************/
; #pragma src
; #include "C8051F000.h"
; #include <intrins.h>
;
; /********************************************變量類型縮略定義***********************************/
; #define uint unsigned int //縮略定義
; #define uchar unsigned char
; #define ulint unsigned long
;
; /***********************************************常量定義****************************************/
; #define Time_1ms 6 //時(shí)間常量(12M) 6x-x/8
; #define Time_5ms 30
; #define Time_10ms 59
; #define Time_15ms 88
; #define Time_20ms 118
; #define Time_50ms 294
; #define Time_80ms 470
; #define Time_100ms 588
; #define Time_200ms 1175
;
; #define DAC0_DATA 0x01BC //斬波驅(qū)動(dòng)參考電壓設(shè)定值
; #define DAC1_DATA 0x0C00 //比較器參考電壓設(shè)定值
; #define Delay_STime 0x09C4 //檢測(cè)到氣泡報(bào)警的時(shí)間延遲(短)
; #define Delay_LTime 0xF424 //檢測(cè)到氣泡報(bào)警的時(shí)間延遲(長(zhǎng))
; #define Bubble_NUM 0x0001 //累計(jì)氣泡為150個(gè)
; /*******************************************I/O端口對(duì)應(yīng)輸出聲明*********************************/
; sbit SDA=P0^0; //SMBUS設(shè)置
; sbit SCL=P0^1; //用作T3定時(shí)器的自動(dòng)重載觸發(fā)源
; sbit CEX0=P0^2; //PCA第一個(gè)比較、捕捉模塊
; sbit T1=P0^3; //定時(shí)器T1計(jì)數(shù)源輸入端,對(duì)小氣泡進(jìn)行計(jì)數(shù)
; sbit INT1=P0^4; //鍵盤中斷
; sbit T2EX=P0^5; //由內(nèi)部計(jì)數(shù)器2對(duì)氣泡檢測(cè)脈沖進(jìn)行計(jì)數(shù)
; sbit CNVSTR=P0^6; //時(shí)鐘輸出
; sbit SM_RST=P0^7; //L297復(fù)位控制位
; sbit Balarm_flag=P1^0; //氣泡報(bào)警標(biāo)志位,為1時(shí)正常,為0時(shí)報(bào)警
; sbit Heat_flag=P1^1; //加熱標(biāo)志位
; //sbit SHIFT_DATA=P1^2; //移位寄存器串行數(shù)據(jù)輸入位,H時(shí)為1,L時(shí)為0
; sbit DI2PIN=P1^2; //LCD2時(shí)鐘輸入引腳
; sbit Lpower_LED=P1^3; //低電壓報(bào)警
; //sbit SHIFT_CLK=P1^3; //移位寄存器時(shí)鐘輸入
; sbit CLK2PIN=P1^4; //LCD2數(shù)據(jù)輸入引腳
; //sbit SHIFT_CLR=P1^4; //移位寄存器清零端
; sbit CLKPIN = P1^5; //用戶自定義CLK對(duì)應(yīng)引腳
; sbit T1IN=P1^6; //定時(shí)器T1的輸入
; sbit State_LED=P1^7; //狀態(tài)標(biāo)志位
; sbit DIPIN = P2^0; //用戶自定義DI對(duì)應(yīng)引腳
; sbit SM_CLK1=P2^2; //步進(jìn)電機(jī)時(shí)鐘位
; sbit SM_EN=P2^3; //L297使能位
; sbit SM_CW=P2^4; //L297方向控制位
; sbit SM_MODE=P2^5; //L297環(huán)形分配器分配方式控制位
; /*******************************************全局變量定義****************************************/
; uchar temp[4]; //LCD顯示數(shù)字緩存
; uchar temp2[4]; //LCD2顯示數(shù)字緩存
; uchar code temp_code[4]={0,1,0,0}; //LCD顯示數(shù)字的十進(jìn)制形式
; uchar code temp2_code[4]={0,5,0,0}; //LCD2顯示數(shù)字的十進(jìn)制形式
; uchar Point_Flag; //小數(shù)點(diǎn)標(biāo)志位
; uchar data l_data[5]; //用戶自定義LCD緩沖區(qū)
; uchar lcd_data[10]; //0~9對(duì)應(yīng)的顯示代碼緩存;
; uchar code lcd_data_code[10]={0x88,0xbb,0xc1,0x91,0xb2,0x94,0x84,0xb9,0x80,0xb0}; //0~9對(duì)應(yīng)的顯示代碼;
; uchar code_h; //行掃描值
; uchar code_l; //列掃描值
; uchar keycode=0x00; //最終鍵值
; uint k=0; //LCD顯示段位置序號(hào)
; uint kk=0; //LCD2顯示段位置序號(hào)
; uint BUFFER; //步進(jìn)電機(jī)轉(zhuǎn)速控制
; uint Buffer_NUM; //T0循環(huán)次數(shù)
; uint PWM_Width; //定時(shí)器0溢出周期控制
; uint Drop_Num; //設(shè)定的液滴數(shù)
; ulint Flux_Pulse; //設(shè)定的流速對(duì)應(yīng)的脈沖數(shù)
; ulint All_Pulse; //需要產(chǎn)生的全部脈沖數(shù)
; float Drop_NStep; //一滴所對(duì)應(yīng)的步進(jìn)電機(jī)的步數(shù)
; bit Fluxdrop_Flag; //流量和滴速單位標(biāo)志位,為0單位是流量,為1時(shí)單位是滴速
; bit Speed_Set; //流速設(shè)置標(biāo)志位,為0時(shí)設(shè)置保存,為1時(shí)允許設(shè)置
; bit Hold_Flag; //鍵盤鎖定標(biāo)志位,為1時(shí)鍵盤鎖定,為0時(shí)允許鍵盤動(dòng)作
; bit SR_Flag; // 運(yùn)行/停止標(biāo)志位,為0時(shí)停止,為1時(shí)運(yùn)行
; bit PK_Flag; //排空標(biāo)志位,為0停止排空操作,為1時(shí)開始排空操作
; bit Gross_Flag; //輸液量設(shè)置標(biāo)志,為1時(shí)允許設(shè)置,為0時(shí)保存設(shè)置
; /******************************************函數(shù)聲明********************************************/
; void SYSCLK_Init(void); //系統(tǒng)時(shí)鐘初始化
; void IO_Init(void); //I/O端口設(shè)置初始化
; void ISR_Init(void); //系統(tǒng)中斷設(shè)置初始化
; void Global_Init(void); //全局變量初始化
; void Bubble_alarm(void); //氣泡檢測(cè)報(bào)警
; void delay( uint t); //軟件延遲,(102.647t+2.3646)us
; void nop(uint t); //軟件短延遲函數(shù)
; void pk(void); //輸液前的排空操作
; void lcdwbit(bit n); //LCD位傳輸函數(shù)
; void lcdwd(uchar data1); //LCD字節(jié)傳輸函數(shù)
; void lcdwd1(); //LCD4段數(shù)據(jù)傳輸函數(shù)
; void l_set(); //各段顯示數(shù)據(jù)設(shè)置
; void display(); //顯示設(shè)置數(shù)據(jù)
; void noplay(); //空白顯示
; void lcd2wbit(bit n); //LCD2位傳輸函數(shù)
; void lcd2wd(uchar data1); //LCD2字節(jié)傳輸函數(shù)
; void lcd2wd1(); //LCD2的4段數(shù)據(jù)傳輸函數(shù)
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -