Pages: 1 2 [3]   Go Down
Author Topic: Problem mit 200 mA-Beschränkung des Mega  (Read 2972 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Jr. Member
**
Karma: 4
Posts: 97
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Guten Abend,

endlich konnte ich nach einigen Tagen Pause mit dem Projekt weitermachen - und hier ist eine Lösung meines Schwankungsproblems!
LM35 sind die Sensoren, einige Meter vom Arduino entfernt. Ohne viele Worte zu verlieren: Glücklich, wer das Datenblatt lesen kann (ich war zuerst wegen der guten und "glatten" Ergebnisse in der Nähe des Arduino davon aisgegangen, dass ich nicht mehr an in der Richtung lesen/machen muss, vgl . Datenblatt des LM35, Fig 4., bei mir allerdings ohne Widerstand, wird glatter). Ein Kondensator zwischen Messleitung und GND wirkt Wunder!

Vielen Dank für Eure Beiträge. Auch wenn sie nicht einschlägig waren, habe ich daran viel gelernt!

Eine Frage hätte ich noch. SDL und SCA des I2C-Busses gehen auch über ziemlich lange Leitungen. Gibt es neben dem I2C-Extender noch eine andere Möglichkeit, Störeinflüsse wie bei meinem LM35 gesehen, zu reduzieren (das LCD Display prodziert manchmal seltsame (Sondern-) Zeichen).

Grüße
Michael


* Zwischenablage-3.jpg (98.37 KB, 1165x909 - viewed 22 times.)
Logged

Switzerland
Offline Offline
Faraday Member
**
Karma: 108
Posts: 5144
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Einen I2C-Bus solltest Du tunlichst unter 1m halten. Kannst oder willst Du das nicht, gibt es noch die Möglichkeit, die Geschwindigkeit zu reduzieren, was die Störanfälligkeit heruntersetzt (der kapazitive Einfluss sinkt, die Flanken haben mehr Zeit, einen vernünftigen Wert zu erreichen).

Bei längeren Leitungen würde ich die Verwendung eines RS485-Busses vorschlagen, dem sollten auch einige Dutzend Meter nichts anhaben können.
Logged

Offline Offline
Jr. Member
**
Karma: 4
Posts: 97
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hallo Pylon,

danke für Deinen Hinweis. Ein paar Meter sind es bei mir schon - diese kann ich nicht überbrücken. Da mein "Sonderzeichenproblem" selten und unregelmäßig auftaucht, wäre ich für die Busgeschwindigkeit-Lösung.
Hast Du bitte einen Tipp, wo ich nachlesen kann, wie das bewerkstelligt wird?

Viele Grüße
Michael
Logged

Switzerland
Offline Offline
Faraday Member
**
Karma: 108
Posts: 5144
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Nick Gammon hat das auf seiner I2C-Seite (unter "Timing"): http://www.gammon.com.au/forum/?id=10896
Logged

Offline Offline
Jr. Member
**
Karma: 4
Posts: 97
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Guten Morgen,

danke für den Tipp und Link. Ich habe die Geschwindigkeit auf die Hälfte heruntergesetzt, mal sehen, ob das signifikante Besserung bringt. Ich berichte.

Grüße
Michael
Logged

Offline Offline
Jr. Member
**
Karma: 4
Posts: 97
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Guten Abend,

vorweg: die Geschwindigkeit herabzusetzen war eine gute Idee, hat aber an meinem Problem nichts geändert :-/

Es ist unglaublich, was einem so auf dem Weg zum hoffentlch einmal perfekten Sketch begegnet.
Bei der Anstreuerung des i2c-LCD-Display habe ich nach langem Suchen einen weiteren Fehler gefunden, der das Kaulderwelsch auf dem LCD produziert haben könnte: lcd.init() muss nach dem wire.begin() stehen. Steht so in der library irgendwo. Sollte man also auch lesen. (Trotzdem stürzt das LCD regelmäßig ab - aber ich find's noch!)

Man lernt nie aus und niemals aufgeben.

Ist die Herabsetzung der Geschwindigkeit (des Taktes) beim I2C auch mit der Reduzierung der Rechengeschwindigkeit des Prozessors verbunden? Müsste so sein, oder?

Herzliche Grüße
Michael
 
Logged

Switzerland
Offline Offline
Faraday Member
**
Karma: 108
Posts: 5144
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Ist die Herabsetzung der Geschwindigkeit (des Taktes) beim I2C auch mit der Reduzierung der Rechengeschwindigkeit des Prozessors verbunden? Müsste so sein, oder?

Nein, der Takt für den I2C-Bus wird durch eine Frequenzteilung aus dem Systemtakt gewonnen, der Haupttakt muss deswegen nicht heruntergesetzt werden.
Logged

Pages: 1 2 [3]   Go Up
Jump to: