BASCOM-AVR -- alternative zu shiftin/shiftout??

Gast #38950
Hi Leute!

Ich glaub bei meinem Programm will das Shiftin/Shiftout nicht richtig.
Bei Shiftout soll die Datenleitung auf Null runtergezogen werden, aber
das passiert nicht. Es gibt nur eine Absenkung von 5 auf 2,5Volt und
nicht auf 0V, dadurch denke ich, passiert was, dass ich keine
eindeutigen Signale und Daten von meinem Sensor bekommen, der uaf das
eindeutige absenken auf 0V erfordert. Ein zusätzliches Reset hat nichts
getan, es sieht nun wie eine Treppe aus.
Meine Frage ist nun, hat jemand eine Idee, wie man dies umgehen kann,
oder hat jemand eine Vorgehensweise parat, die Shiftin/Shiftout
ersetzten könnten.

Vielen dank im Voraus.

Bye, kris :-)
Gast
Schon mit zusätzlichen Pull-Down Widerständen probiert? Pass aber auf
das du die Datenleitungen nicht zu sehr belastet. 20mA ist glaube ich,
maximun.
mfg
Gast
Hi Forest!

Vielen dank für deinen gut gemeinte und echt gute Idee, doch leider
glaube ich, dass dies nicht zu realisieren ist, da ich zwischen sensor
und mikrocontroller auf der datenleitung schon einen pullup widerstand
habe, der in dem datenblatt punkt 2.2.2
(http://193.196.117.123/projekte/saunaaufgusssteuerung/sensor/datenblatt_sht11_d_lo_0202_a.pdf)
gefordert ist und ich habe ihn eingebaut, da sonst nix funktioniert
hat.
ich habe zusätzlich och ein max232 auf der platine und einen 7805.
ne idee, wo ich deinen pulldownwiderstnd hinbauen könnte, da ich glaube
pullup und pulldopwn gleichen sich aus, wenn ich des recht evrstehe???

mfg
Kris :-)
Gast
Was für ein MC benutzt du denn? Denn wenn der MC von sich aus schon mit
Pull-up widerständen ausgestattet ist, und du dann auch noch pull up
widerstände dranhängst, kann es sein das der Strom der datenleitung
nicht mehr ausreicht um die Spannung auf 0V herunter zu ziehen.
Gast
Hab gard in euern Projekt rumgestöbert. Ihr habt den 80c535 benutzt
oder? Im Datenblatt steht der hat an einigen Datenleitungen pull up
widerstände intern. Nehmt einfach die Widerstände aus der Schaltung
raus, und probiert es.
mfg
Gast
Hi,

eine andere Alternative waere sich einen eignen Shiftout / Shiftin
Befehl zuschreiben.

Beispiel:
8 Bit Shiftout

temp = &b00001111
for i = 1 to 8
if temp.0 = 1 then
reset portc.0
waitms 100
else
set portc.0
waitms 100
end if
shiftright temp.0
next i

Es ist nur ein kurzes Beispiel sollte sich aber fuer deine Zwecke
umschreiben lassen.

Mfg

Dirk
Gast
danke an euch beiden und an alle noch kommenden

zu forest: meinst du ich sollte da meinen pull-up- als pull-down
verwenden?

zu dirk: des funktioniert, aber er macht danach nichts mehr. der sensor
hat auch einen clock, der ist in dieser zeit inaktiv, meinst du ich
sollte damit mal was amchen?

mfg und schönen abend. viel spaß beim schwitzen .-)

kris
Gast
Hi,

damit man besser ueberlegen kann waere es sehr interessant welchen µC
und welchen Sensor du nutzt zuwissen. Gib mal bitte die Daten kann man
weiterueberlegen.

Mfg

Dirk
Gast
Hi,

oh hab es uebersehen. Du solltest aber auf jeden Fall die SCK und SCL
Leitung mit einem Pullup von 4k7 versehen. Programmbeispiele fuer
Bascom findet man auf der Kuehnel HP. ABER WIESO benutze fuer Bascom
nicht die I²C Bus Routinen, da der SHT1x ein I2CBus Baustein ist. Man
kann es aber auch mit dem Shiftout und Shiftin Befehl machen, dann muss
man sich aber an das I2C Bus Protokoll halten (Start/Stopbedingungen
usw.)

Mfg Dirk

Mfg

Dirk
Gast
Hallo und einen lieben Dank!

An Dirk:

     SCL = DATA???

     kann ich auch einen 10kohm Pull-up verwenden??

     was für routinen meinst du???

     kannst du mir bitte einen konkreten link geben??

An Forrest:

     wenn ich die pull-ups rausnehme, funktioniert nix mehr.
Gast
He Dirk,

die Appnote ist meine Grundlage gewesen, die auch net so toll war.
Ich wollte eigentlich die anderen angesprcohenen Programmbeispiele
wisen :-)

bye, kris :-)

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 23 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.