temperatuur sensor ds1820 en pic 16f870 probleem

Hallo ik stel graag even mijn probleem voor .
Ik heb geexperimenteerd met de ds1820 en het voorbeeld gevolgd van picbasic site met de 16f628a en in mijn programma kan ik dan achtereenvolgens twee temp. sensors vervolgens uitlezen.
Dit werkt goed ,maar vermits ik meerdere sensors wil uitlezen wil ik gebruik maken van een 16f870 maar de code blijft hangen bij de tekst "moment a.u.b."
Kan iemand van de knappe koppen op dit forum me verderhelpen met dit probleem.Ik kom er zelf niet zo direct uit
Alvast bedankt
Elco Boy

pic basic code:

'****************************************************************
'* Name : UNTITLED.BAS *
'* Author : ..... *
'* Notice : Copyright (c) 2020 ds *
'* : All Rights Reserved *
'* Date : 8/03/2020 *
'* Version : 1.0 *
'* Notes : *
'* : *
'****************************************************************
DEVICE 16F870
CONFIG WDT_OFF, PWRTE_ON, LVP_OFF, HS_OSC

ALL_DIGITAL TRUE

DECLARE XTAL = 4
DECLARE LCD_TYPE ALPHA
DECLARE LCD_INTERFACE 4
DECLARE LCD_DTPIN PORTB.0
DECLARE LCD_ENPIN PORTB.4
DECLARE LCD_RSPIN PORTB.5
DECLARE LCD_LINES 2

;Normale constanten
SYMBOL Convert = $44 ;DS1820 commando, de DS1820 moet de temperatuur gaan meten
SYMBOL Graad = 223 ;223 is de ASCII code voor het 'graad' karakter
SYMBOL RdScratchPad = $BE ;DS1820 commando, temperatuur van de DS1820 uitlezen
SYMBOL SkipROM = $CC ;DS1820 commando, geen gebruik maken van het unieke adres

;Poortnamen
SYMBOL DS1820 = PORTC.1 ;Sluit de DS1820 temperatuur sensor aan op deze poort
SYMBOL DS18201 = PORTC.2
SYMBOL ventilator1 = PORTB.1
SYMBOL ventilator2 = PORTB.0
;Variabelen declareren
;BYTE
DIM Remain AS BYTE ;Zie datasheet DS1820
DIM Temperatuur AS BYTE ;Bevat de factor 2 van de temperatuur Celsius
TRISB = %00000000
PORTB = %00000000
PORTC = %11111111
TRISC = %00000000
CLEAR ;Wis RAM geheugen

DELAYMS 500 ;LCD stabilisatie

;Hoofdprogramma
;============================ Extra code voor direct juiste temperatuurweergave bij opstarten
CLS ;Wis LCD scherm
PRINT "Moment a.u.b." ;Even wachten, DS1820 moet eerst even de temperatuur meten

OWRITE PORTA.0, 1, [SkipROM, Convert] ;Zend 'Convert' opdracht (meet temperatuur)
REPEAT
OREAD PORTA.0, 4, [Remain] ;Blijf de DS1820 uitlezen...
UNTIL Remain <> 0 ;...totdat de DS1820 klaar is met meten
;============================

CLS ;Wis LCD scherm
WHILE 1 = 1
OWRITE PORTA.0, 1, [SkipROM, Convert] ;Zend 'Convert' opdracht (temperatuur meten)
OWRITE PORTA.0, 1, [SkipROM, RdScratchPad] ;Zend 'Read ScratchPad' opdracht
OREAD PORTA.0, 2, [Temperatuur] ;Lees temperatuur en plaats dit in de variabele

PRINT AT 1, 1, DEC Temperatuur / 2, ".", DEC1 (Temperatuur // 2) * 5, Graad, "C PSU1"
IF Temperatuur>58 THEN
ventilator1 = 1
PRINT AT 2, 1,"PSU 1 VERHIT"
ELSE
ventilator1 = 0

ENDIF
DELAYMS 3000

CLS
DELAYMS 200

OWRITE PORTA.2, 1, [SkipROM, Convert] ;Zend 'Convert' opdracht (temperatuur meten)
OWRITE PORTA.2, 1, [SkipROM, RdScratchPad] ;Zend 'Read ScratchPad' opdracht
OREAD PORTA.2, 2, [Temperatuur] ;Lees temperatuur en plaats dit in de variabele
DELAYMS 100
OWRITE PORTA.2, 1, [SkipROM, Convert] ;Zend 'Convert' opdracht (temperatuur meten)
OWRITE PORTA.2, 1, [SkipROM, RdScratchPad] ;Zend 'Read ScratchPad' opdracht
OREAD PORTA.2, 2, [Temperatuur] ;Lees temperatuur en plaats dit in de variabele

PRINT AT 1, 1, DEC Temperatuur / 2, ".", DEC1 (Temperatuur // 2) * 5, Graad, "C PSU2"
IF Temperatuur>58 THEN
ventilator2 = 1

PRINT AT 2, 1,"PSU 2 VERHIT"
ELSE
ventilator2 = 0

ENDIF
DELAYMS 3000
CLS
DELAYMS 200

WEND

pic basic code:

test 16f870 temp.bas

Sorry voor de tweede post maar ik heb hier de bas file neergezet
groetjes

Hallo,bij deze kan ik u meedelen dat ik het probleem heb gevonden.
in de while wend lus was ik ipv portc de porta aan het benaderen.
thanks
elco boy