Sensiron SHT21

Temp/Feuchte

  • 1
  • 2
  • 3
  • Page 3 of 3
tbegle
Benutzer
Avatar
Gender: n/a
Age: 64
Posts: 150
Registered: 01 / 2018
Subject:

Re: Sensiron SHT21

 · 
Posted: 18.01.2018 - 10:19  ·  #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
Administrator
Avatar
Gender:
Location: Germany
Age: 58
Posts: 959
Registered: 09 / 2007
Subject:

Re: Sensiron SHT21

 · 
Posted: 18.01.2018 - 10:47  ·  #18
und das Demo zum SHT20 unter ..AVRcoDemosXMega_WeatherS ist ihnen entgangen ?
Das ist sogar in Pascal.
tbegle
Benutzer
Avatar
Gender: n/a
Age: 64
Posts: 150
Registered: 01 / 2018
Subject:

Re: Sensiron SHT21

 · 
Posted: 18.01.2018 - 12:26  ·  #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
Administrator
Avatar
Gender:
Location: Germany
Age: 58
Posts: 959
Registered: 09 / 2007
Subject:

Re: Sensiron SHT21

 · 
Posted: 18.01.2018 - 12:46  ·  #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
Gender:
Age: 53
Homepage: pvs-deck.de
Posts: 1341
Registered: 02 / 2009
Subject:

Re: Sensiron SHT21

 · 
Posted: 18.01.2018 - 13:12  ·  #21
Quote by 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
Gender:
Location: Germany
Age: 24
Homepage: e-lab.de
Posts: 5558
Registered: 03 / 2002
Subject:

Re: Sensiron SHT21

 · 
Posted: 18.01.2018 - 13:40  ·  #22
:bindafür:
:banghead:
tbegle
Benutzer
Avatar
Gender: n/a
Age: 64
Posts: 150
Registered: 01 / 2018
Subject:

Re: Sensiron SHT21

 · 
Posted: 25.01.2018 - 16:19  ·  #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
  • Page 3 of 3
Selected quotes for multi-quoting:   0

Registered users in this topic

Currently no registered users in this section

The statistic shows who was online during the last 5 minutes. Updated every 90 seconds.
MySQL Queries: 14 · Cache Hits: 14   124   138 · Page-Gen-Time: 0.033215s · Memory Usage: 2 MB · GZIP: on · Viewport: SMXL-HiDPI