beautypg.com

Hp rocky mountain basic program – Max Machinery 120 FLOW RATE & TOTAL INDICATOR User Manual

Page 35

background image

120-200-350 © 1993 (Rev 5/97) Max Machinery, Inc.

Page 35

218

Hex_value$=DVAL$(Dec total,16)

219

Checksum$=Hex_value$[7]

220

!

221

!***********************SEND DATA******************************

222

!

223

PRINT “THE OUTPUT IS = >”;Output_format$;

224

PRINT Checksum$

225

OUTPUT Rs232_sc;”>”&Output_format$&Checksum$&CHR$(13)! SEND MESSAGE

226

!

227

!***********************RECIEVE DATA****************************

228

!

229

TRANSFER @Rs232path TO @Rs485path;CONT !MOVE DATA FROM PORT TO BUFFER

230

I=0

231

Loop_num=0

232

REPEAT

233

WAIT .1

234

Loop_num=Loop_num+l

235

STATUS @Rs485path,4;Bytes

! FIND NUMBER OF BYTES IN BUFFER

236

IF Bytes>=l THEN

! ONLY READ IF BYTES ARE AVAILABLE

237

I=I+l

238

ENTER @Rs485path USING “#,K”;Return_dat$(I)

239

Loop_num=0

240

END IF

241

IF Loop_num=50 THEN

! SET FOR 5 SEC TIMEOUT

242

I=l

243

Return_dat$(I)=CHR$(13)

! SEARCH FOR CARRIAGE RETURN

244

END IF

245

UNTIL Return_dat$(I)=CHR$(13)

! FIND END OF TRANSFER INTO BUFFER

246

! END OF TRANSFER IS THE CARRIAGE RETURN

247

ABORTIO @Rs232path

! TERMINATE TRANSFER

248

!

249

!****************DETERMINE IF ERROR CODE IS RECEIVED*************

250

!

251

IF Return_dat$(1)=”N” THEN

252

Return_error$=Return_dat$(2)&Return_dat$(3)

! USE TWO DIGIT ERROR

253

! CODE NUMBER

256

CALL Errorl20(Return_error$)

257

END IF

258

IF Return_dat$(1)=CHR$(13) THEN !SEARCH FOR CARRIAGE RETURN

259

Return_error$=”20"

262

CALL Errorl20(Return_error$)

263

END IF

264

SUBEND

265

SUB Errorl20(Return_error$)

266

!

267

!**********************RS485 ERROR CODE RETURN CODE******************

268

!

269

INTEGER Error_num

270

Error_num=VAL(Return_error$)

271

CLEAR SCREEN

272

PRINT “ “

273

PRINT “ “

274

PRINT “RESPONSE BY THE INDICATOR IS AN ERROR CODE”

275

BEEP

HP ROCKY MOUNTAIN BASIC PROGRAM