Forum: Mikrocontroller und Digitale Elektronik DS18S20 mit Bascom-AVR


von Sven Scholz (Gast)


Lesenswert?

Hallo,

ich möchte gerne meinen DS18S20 überprüfen und benötige einen simplen
Code für BASCOM-AVR (oder auch gleich die *.hex)

Mein Sensor ist an portD.5 angeschlossen, das Scratchpad möchte ich
gerne über Port B ausgegeben bekommen!

Ich verwende einen ATmega 8 bei 4Mhz.

DANKE...

von Sven Scholz (Gast)


Lesenswert?

hat niemd eine idee?

von stromi (Gast)


Lesenswert?

Googeln hilft, gugst du hier:
http://www.mcselec.com/an06.htm
du musst noch die Portbezeichnungen anpassen
http://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=4742&highlight=18s20

du musst noch die Portbezeichnungen anpassen

von Ratber (Gast)


Lesenswert?

[Meckermodus]

Also Google solltest du eigentlich kennen oder ?
Dürfte doch nicht so schwer sein dort mal zwei Begriffe einzutippern.
Einfach "Bascom und DS1820" eingeben und die Ergebnisse abklappern.
Hier haste was:



=====================================================



'**********************************************************
'Compiler            : BasCom
'Hardware            : AVR-Ctrl
'                    : DS1820
'Chip type           : AT90S8535
'Clock frequency     : 8,000000 MHz
'http://www.mikrocontroller.com
'**********************************************************

$include "ac_lcd.inc"

Config 1wire = Portd.4                                      'use this
pin

Dim Ar(2) As Byte , A As Byte , I As Byte , Temperatur As Integer
Dim Halb As Byte

Lcd "Temp:"
Do
  Wait 1
  1wreset                                                   'reset the
device
  1wwrite &HCC                                              'read ROM
command
  1wwrite &H44
  Waitms 100                                                'read ROM
command
  1wreset                                                   'reset the
device
  1wwrite &HCC                                              'read ROM
command
  1wwrite &HBE                                              'read ROM
command
  For I = 1 To 2
    Ar(i) = 1wread()                                        'place
into array
  Next

  Locate 2 , 1
  Temperatur = Ar(1)

  If Ar(2) > 0 Then Temperatur = 0 Else Shift Temperatur , Right

  Lcd Temperatur ; ".";

  Halb = Ar(1) And 1

  If Halb = 1 Then Lcd "5" Else Lcd "0"

  Lcd " C"
Loop

End


==============================================


Das reicht als Basis vollkommen aus.
Die Suche hat nichtmal 4 Minuten gedauert (Inkl. Lesen der Ergebnisse
und runterladen des Codes).


[/Meckermodus]



'-)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.