'****************************************************************
'*  Name    : UNTITLED.BAS                                      *
'*  Author  : [Csapoteam]                                       *
'*  Notice  : Copyright (c) 2011 [select VIEW...EDITOR OPTIONS] *
'*          : All Rights Reserved                               *
'*  Date    : 2011.12.04.                                       *
'*  Version : 1.0                                               *
'*  Notes   :                                                   *
'*          :                                                   *
'****************************************************************

Define _INTRC_OSC_NOCLKOUT & _WDT_OFF & _BODEN_OFF & _MCLRE_ON & _LVP_OFF & _CP_OFF

DEFINE OSC 4

'temperature     VAR     WORD            ' Temperature storage
count_remain    VAR     BYTE            ' Count remaining
count_per_c     VAR     BYTE            ' Count per degree C
LED             var     byte
hofok 		    Var 	Word		' A "hofok" valtozonak egy 2 bájtos helyet foglalok
hofok2 		    Var 	Word		' A "hofok" valtozonak egy 2 bájtos helyet foglalok
meres_ok 	    Var 	Byte		' Allapotjelzo a mereshez
character       VAR     BYTE

DQ              VAR     PORTA.0          ' One-wire data pin

' Define LCD registers and bits

   	DEFINE LCD_DREG 	PORTB     ' Az LCD adatvezeteket a B portrol vezereljuk
  	DEFINE LCD_DBIT 	4	      ' Az elso adatvezetek az RB port 4. tagja. (Az RB4)
	DEFINE LCD_RSREG	PORTB	  ' Az LCD Register Select kivezetese a B portra
 	DEFINE LCD_RSBIT	3	      ' megpedig a 3. labra. (Tehat az LCD RS - az RE0 porton
'  	Define LCD_RWREG    PORTB
'   Define LCD_RWBIT    2
 	DEFINE LCD_EREG 	PORTB	  ' Az enable vezerlo bit is a B porton,
 	DEFINE LCD_EBIT 	1	      ' az RE2 portra van kiosztva. (LCD EN - RE2 port.)
    define LCD_LINES    2         ' 4 soros
    
    Low PORTB.2        'LCD R/W line low (W)

    Pause 100     ' Wait for LCD to start up
    



mainloop:
        OWOUT DQ, 1, [$CC, $44] ' Start hőmérséklet konverziós
        
        meres: 	OWIn DQ, 4, [meres_ok]		' Varom hogy vegezzen... Amig a meres_ok = 0 , nincs kesz!
        
        If meres_ok = 0 Then meres 	' Csak ha a meres_ok mar nem nullat ad, mehetunk tovabb.
					' Most mar beolvashatom a hofokot.

        pause 200

        OWOUT DQ, 1, [$CC, $BE]         ' Read the hofok
        OWIN DQ, 0, [hofok.LOWBYTE, hofok.HIGHBYTE]

        ' Calculate temperature in degrees C to 2 decimal places
        ' (not valid for negative temperature)
        hofok = hofok */ 1600
        
        LCDOUT $fe,1,$10,$10,$10,$10, DEC (hofok / 100), ".", DEC2 hofok, " C"

        hofok2 = hofok2 */ 1600
        
        ' Calculate temperature in degrees F to 2 decimal places 
        ' (not valid for negative temperature)
'        hofok2 = (hofok2 */ 461) + 3200
'        LCDOUT $fe,$C0,$10,$10,$10,$10, DEC (hofok2 / 100), ".", DEC2 hofok2, " F"
        
	IF hofok >= 3000 Then HIGH LED    ' Ha 30.0 foknal melegebb van, relek be! 
	IF hofok <= 2900 Then LOW  LED    ' Ha 29.0 fok ala megy a homerseklet, relek ki!


	
LED1    var PORTA.5   


   Goto mainloop
