AVR mit LM75 und avrgcc

Gast #100809
Lesenswert?

Hallo Forum,
ich habe folgendes Problem, ich fang gerade an mit C zu Programmieren
(ja auf dem AVR). Vorher habe ich in Basic Programmiert was mir aber
irgendwie zu blöd wurde da man nur sehr wenig über die internen Abläufe
im µC erfährt. Nun gut ich würde gerne einen Lm75 Temperatur Sensor mit
einem AT90S8535 auslesen. Das ganze soll in C mit avrgcc programmiert
werden. Hat das schonmal jemand gemacht? Ich sehe mich ehrlich gesagt
nicht in der lage das selbst zu Programmieren. Wie wende ich eigentlich
diese I2C header Dateien an? Kann ich die benutzen um den LM75
auszulesen? Der ist ja auch I2C.

Vielen Dank schonmal für eure hilfe...

Mfg
Bjoern
Gast #100810
Lesenswert?

Hallo Björn,

leider habe ich das nicht auf einem 90S8535 gemacht, sondern auf einem
Tiny26.

Anbei liegt der Code.
Schau in Dir einfach mal an, vielleicht hilfts Dir. BTW: Ist eine
Software I2C implementation.

Gruß Marcus
Angehängte Dateien:
Gast #100812
Lesenswert?

Hallo Björn,

die Hardware I2C Ansteuerung ist wesendlich einfacher, ich habe nur
leider im Moment keinen Code parat. Sorry!

Du mußt nur die I2C-Interrupts auswerten und in das I2C-Datenregister
schreiben bzw. aus ihm lesen, soweit ich weiß, besitzt der Baustein
eins.

Gruß Marcus
Gast #100814
Lesenswert?

Ja die twidemo.c hab ich mir auch schon mal angeguckt, bin aber nicht so
ganz schlau draus geworden. Wie gesagt ich fange erst an in C zu
Programmieren. Ja gut ist vielleicht nicht das schlaueste auf einem
Mikrocontroller eine Programmiersprache zu lernen aber ich denke mit
der Zeit werden meine ergebnisse besser. Ich werde mich gleich mal ans
Programmieren begeben, wenn der Code nicht läuft werd ich ihn hier mal
Posten dann könnt ihr mir vielleicht bessere Ratschläge geben. Aber
bitte nicht selbst drauf los verbessern weil dann versteh ich wieder
nicht was da an meinem Code eigentlich falsch war :-)
Gast #100815
Lesenswert?

> Ja gut ist vielleicht nicht das schlaueste auf einem Mikrocontroller
> eine Programmiersprache zu lernen [...]

In der Tat.  Es debuggt sich relativ schlecht auf einem solchen
(selbst mit Dingen wie JTAG-ICE noch, ohne derartige Vorrichtungen
noch schlechter).

Aus dem twidemo wirst Du sicher nur schlau, wenn Du Dir die Grundlagen
von I²C mal angesehen hast sowie die entsprechenden Erklärungen im
Datenblatt.
Gast #100816
Lesenswert?

Hallo Leute,
ich könnte nochmal einen kleinen Denkanstoß gebrauchen, an und für sich
stehen die Routinen von der Logik her und vom Code eigentlich auch, aber
welche delays muss ich verwenden wenn ich z.B. Sck Pulsen will? Ich habe
mir das Datasheet zum LM75 angeschaut bin daraus aber nicht wirklich
schlau geworden. Ich habe dann die Programmroutinen, weil es auf dem
AVR nicht wirklich geklappt hat, für eine C-Control in Basic übersetzt
naja mit der C-Control geht es. Ich glaube es liegt einfach an der
Geschwindigkeit des AVR...
Gast #100817
Lesenswert?

Hallo Björn,

wenn der Prozessor eine integrierte TWI Schnittstelle hat, dann stell
ihn auf 100kHz und laß die Schnittstelle die ganze arbeit selbst
machen.

Mache das gerade selber mit einem Mega16.
Ist wensendlich weniger Arbeit als alles andere!!

Gruß Marcus

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren