PTP2000及其在不停车收费系统中的应用
PTR2000与PC机相连接时必须经过电平转换,将TTL电平转换成RS-232C电平。用一片MAX232芯片即可达到电平转换的目的。PTR2000与计算机串口连接的典型电路如图4所示。
5 软件编程
5.1 单 牒同发射部分编程
本例中单片机采用89C51,通过汇编语言对其进行编程。
PTR2000的Pin6(PWR)与单片机的P1.0相连,PTR2000的Pin7(TXEN)与单片机的P1.1相连,CS直接接地,利用工作频道1,即433.92MHz。
单片机程序清单介绍如下:
ORG 0000H
AJMP START
ORG 0200H
START:SETB P1.0 ;PTR2000的Pin6置1
SETB P1.1 ;PTR2000的Pin6置1
MOV SP, #80H ;设置数据指针的位置
MOV SCON, 40H ;串口工作方式1
MOV TMOD, #20H ;定时器工作方式1
MOV TL1, #0FDH ;设定波特率9600bits/s
MOV TH1, #0FDH
MOV PCON, #00H
SETB TR1 ;开启定时器1
MOV DPH, #50H ;指针指向数据块
MOV DPL, 00H
VIN: MOV R1, #LEN1 ;发送VIN码
ACALL TXSUB
CARNO:MOV R1, #LEN2 ; 发送车牌号
ACALL TXSUB
COUNT:MOV RA, #LEN3 ;发送车主账号
ACALL TXSUB
CLR P1.0 ;将PTR2000置接收状态
CLR P1.1 ;将PTR2000置待机状态
ORG 0400H
TXSUB:PUSH ACC ;保护ACC
PUSH PSW ;保护PSW
CLR TI ;清TI
TXDD:CLR A
MOVC A,@A+DPTR ;从数据块中取数
MOVSUBF, A ;从串口发送
JNB TI,$ ;等待发送完
CLR TI
INC DPTR ;取下一个数
DJNZ R1,TXDD ;数据为发送完,继续
POP PSW ;弹出PSW
POP ACC ;弹出ACC
RET
ORG 0500H ;数据块
DVIN:DB '1234567890'
LEN1 DATA 10
DCARNO:DB 'ABCDEFG'
LEN2 DATA 7
DCOUNT DB '874033654200'
LEN3 DATA 12
评论