Sensiron SHT21

Temp/Feuchte

  • 1
  • 2
  • 3
  • Seite 3 von 3
tbegle
Benutzer
Avatar
Geschlecht: keine Angabe
Alter: 65
Beiträge: 150
Dabei seit: 01 / 2018
Betreff:

Re: Sensiron SHT21

 · 
Gepostet: 18.01.2018 - 10:19 Uhr  ·  #17
Danke für das SHT21 Treiber Programm in Pascal !

Lieber Schreiberling, mit den SHT21 App. wie Sand am Meer(richtig aber alle in C!!) im Netz kann ich leider nichts anfangen (siehe mein Aduino Demo ein 3 Zeiler!) wobei man nur ein USB Kabel benötigt das zugleich als Medium für die Prog. über Bootloader! den man ganz simpel prog kann in (ARDUINO enthalten) und danach(zugleich) als Datenleitung für die Anzeige der Temp/Feuchte und umschaltbar auch auf Grafik!, dient (<<Zeit >>Effizienz + Waldspaziergang!) - dies wäre auch in elab-pascal möglich! (Portal Segment nur für Treiber?) - sehr, sehr schade!
So, jetzt habe ich wirklich alles gesagt!
Toni
miparo
Schreiberling
Avatar
Geschlecht:
Herkunft: Germany
Alter: 59
Beiträge: 988
Dabei seit: 09 / 2007
Betreff:

Re: Sensiron SHT21

 · 
Gepostet: 18.01.2018 - 10:47 Uhr  ·  #18
und das Demo zum SHT20 unter ..AVRcoDemosXMega_WeatherS ist ihnen entgangen ?
Das ist sogar in Pascal.
tbegle
Benutzer
Avatar
Geschlecht: keine Angabe
Alter: 65
Beiträge: 150
Dabei seit: 01 / 2018
Betreff:

Re: Sensiron SHT21

 · 
Gepostet: 18.01.2018 - 12:26 Uhr  ·  #19
Hallo ich noch X,

um wirklich den letzten Verdacht auszuräumen, hier mich nur bedienen zu wollen, schiebe ich euch ein Prog rüber
Herr Hofmann der Atmel Guru könnte es sicher noch einstampfen in Print SHT_T / SHT_H fertig!, da es nur eine Variable gibt!

Danke nochmals für die Initialzündung
Toni

// ----------------------- TWI SHT21 --------------
procedure TF_SHT21;
begin
if TWIstat(SHT21)= true then
TEXT_(73); // SHT21 found
TWIOut(SHT21,$F3);
mdelay(91);
TWIInp(SHT21,LW); // ~90ms (14 bit!)
Hi(Wo) := lByArr[1]; // get the MSB
Lo(Wo) := lByArr[2] And Not $03; // LSB ohne lower 2 Status Bits
SHT_T := -46.85 + 175.72 * float(Wo)/65536; // calculate the temperature
write(serout, floatToStr(SHT_T:2:2));CRLF;
// ---------------------------------------
TWIOut(SHT21,$F5);
mdelay(91);
TWIInp(SHT21,LW); // ~90ms (14 bit!)
Hi(Wo) := lByArr[1]; // get the MSB
Lo(Wo) := lByArr[2] And Not $03; // LSB ohne lower 2 Status Bits
SHT_H := -6 +125 * float(Wo)/65536; // calculate humitity
write(serout, floatToStr(SHT_H:2:2));
else
TEXT_(74); // SHT21 not found
EndIf;
End;
miparo
Schreiberling
Avatar
Geschlecht:
Herkunft: Germany
Alter: 59
Beiträge: 988
Dabei seit: 09 / 2007
Betreff:

Re: Sensiron SHT21

 · 
Gepostet: 18.01.2018 - 12:46 Uhr  ·  #20
Evtl solltest du dir doch noch einmal das Demo anschauen, da man die Float Berechnung wesentlich eleganter lösen kann mit MulDivInt.
Gerade wenn man sonst kein Float im Prog braucht.
Float ist halt brechend langsam.
pvs-deck
PowerUser
Avatar
Geschlecht:
Alter: 54
Beiträge: 1343
Dabei seit: 02 / 2009
Betreff:

Re: Sensiron SHT21

 · 
Gepostet: 18.01.2018 - 13:12 Uhr  ·  #21
Zitat geschrieben von tbegle

Hallo ich noch X,

um wirklich den letzten Verdacht auszuräumen, hier mich nur bedienen zu wollen, schiebe ich euch ein Prog rüber
Herr Hofmann der Atmel Guru könnte es sicher noch einstampfen in Print SHT_T / SHT_H fertig!, da es nur eine Variable gibt!

Danke nochmals für die Initialzündung
Toni


Hallo tbegle,

daraus eine Function für Dich selbst zu machen ist doch in wenigen Schritten erledigt, dann kannst Du diese Funktion ja in einer tools.pas anlegen und bindest diese bei Dir immer in Zukunft ein und fertig.

Sorry.. aber ist sowas wirklich als E-Lab-Treiber nötig? Ich denke mal eher nicht. Es fängt schon damit an, welchen TwiPort willste denn nehmen? Einen der mehren Hardware oder einen der Software.... das müsste man dann bei der Funktion mit übergeben. Oder mehrere Funktionen dazu schreiben.

Irgendwo muß der Programmierer auch mal etwas programmieren um genau das zu erreichen was sich der einzelne dazu gedacht hat. Denn da hat jeder auch seine eigenen Ideen der Verarbeitung (siehe auch Mail von Miparo)
Das ist auf jedenfall meine Meinung.

Thorsten
rh
Administrator
Avatar
Geschlecht:
Herkunft: Germany
Alter: 25
Homepage: e-lab.de
Beiträge: 5558
Dabei seit: 03 / 2002
Betreff:

Re: Sensiron SHT21

 · 
Gepostet: 18.01.2018 - 13:40 Uhr  ·  #22
:bindafür:
:banghead:
tbegle
Benutzer
Avatar
Geschlecht: keine Angabe
Alter: 65
Beiträge: 150
Dabei seit: 01 / 2018
Betreff:

Re: Sensiron SHT21

 · 
Gepostet: 25.01.2018 - 16:19 Uhr  ·  #23
Hallo Thorsten, das war überspitzt, aber wenigsten die Basic's! auf die man aufbauen kann, bzw die man nur < mod muss!

schon bleib ich wieder hängen - ich bekomme den String nicht in das EEprom, früher gabs den sehr praktischen val(Stirng) Befehl
// ---------------------------------------
Inp_ : String[3];
read(SerInp,inp_); (z.B. 123)
writeln(Serout,'Volumen : ' + inp_); Ausgabe 123 ok
eeprom[7]:= <---- inp_;(123) ?
// ---------------------------------------
  • 1
  • 2
  • 3
  • Seite 3 von 3
Gewählte Zitate für Mehrfachzitierung:   0

Registrierte in diesem Topic

Aktuell kein registrierter in diesem Bereich

Die Statistik zeigt, wer in den letzten 5 Minuten online war. Erneuerung alle 90 Sekunden.
MySQL Queries: 15 · Cache Hits: 14   126   140 · Page-Gen-Time: 0.034355s · Speichernutzung: 2 MB · GZIP: ein · Viewport: SMXL-HiDPI