Robotrontechnik-Forum

Registrieren || Einloggen || Hilfe/FAQ || Suche || Mitglieder || Home || Statistik || Kalender || Admins Willkommen Gast! RSS

Robotrontechnik-Forum » Technische Diskussionen » BME280 mit BASCOM-AVR-Programm auslesen » Themenansicht

Autor Thread - Seiten: -1-
000
06.10.2026, 12:04 Uhr
wpwsaw
Default Group and Edit


Hallo,

ich möchte gerade eine meiner Uhren mit Temperatur, Luftdruck und Luftfeuchte auf den BME280 umstellen. Leider sind auch einige meiner als BME280 gekauften Sensoren auch nur BMP280 :-((

ich habe einige Tests hinter mir und bevor ich nun doch ein komplettes neues Programm schreibe hier mal die Frage in die Runde ob jemand schon mal erfolgreich ein BASCOM AVR Programm am Laufen hatte, egal auf welchem ATMEGA.

es gibt wenig im Internet und wenn, dann sehr fehlerhaft schon beim compilieren und die Messergebnisse nicht genau bzw. weit weg vom Realwert.

Gruß und danke im Voraus
wpw
--
RECORD, CRN1; CRN2; PicoDat; LC80; Poly880; KC85/2,3,4,5 ; KC87; Z1013; BIC; PC1715; K8915; K8924; A7100; A7150; EC1834; und P8000 ab jetzt ohne Tatra813-8x8 aber mit W50LA/Z/A; P3; ES175/2 und Multicar M25 3SK; Barkas B1000 HP
 
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
001
06.10.2026, 18:16 Uhr
Enrico
Default Group and Edit


BASCOM AVR: Ja.
meine 2 Nixiuhren.

BASCOM per WINE unter Linux.
Zum programmieren per JTAG so ein Konsolenprogram.

Ist aber schon eine ganze Weile her. K.A., wie das genau war, müsste ich gucken,
ob ich das wo finde...
--
MFG
Enrico
 
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
002
06.10.2026, 19:11 Uhr
wpwsaw
Default Group and Edit


...meine Frage zielte aber nur auf die Uhr sondern auf den BME280....


wpw
--
RECORD, CRN1; CRN2; PicoDat; LC80; Poly880; KC85/2,3,4,5 ; KC87; Z1013; BIC; PC1715; K8915; K8924; A7100; A7150; EC1834; und P8000 ab jetzt ohne Tatra813-8x8 aber mit W50LA/Z/A; P3; ES175/2 und Multicar M25 3SK; Barkas B1000 HP
 
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
003
06.10.2026, 19:46 Uhr
Enrico
Default Group and Edit


Ich dachte es geht ums programmieren mit BASCOM, das Ding ist dabei Dein Problem.
--
MFG
Enrico
 
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
004
06.10.2026, 20:22 Uhr
wpwsaw
Default Group and Edit


...habe ich doch oben geschrieben, die uhr habe ich schon vor Jahren von C auf BASCOM umgeschrieben.

Ich wollte einen Sensor einsparen und auf den BME280 umstellen. Die Initialisierung ist sehr umfangreich und bringt meinen Atmega8 an die Speichergrenze. Außerdem habe ich noch kein korrekt funktionieren des Programm zusammen bekommen.

Jetzt habe ich angefangen ein Programm zusammen zu stellen und es Speicher speicheroptimiert hin zu bekommen.

wpw
--
RECORD, CRN1; CRN2; PicoDat; LC80; Poly880; KC85/2,3,4,5 ; KC87; Z1013; BIC; PC1715; K8915; K8924; A7100; A7150; EC1834; und P8000 ab jetzt ohne Tatra813-8x8 aber mit W50LA/Z/A; P3; ES175/2 und Multicar M25 3SK; Barkas B1000 HP
 
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
005
07.10.2026, 21:06 Uhr
wpwsaw
Default Group and Edit


---so zur Info,

ich habe die im Internet gefundenen Programmschnipsel mit einander verglichen und die Formeln aus dem Datenblatt mit den Programmschnipseln für BASCOM angepasst.

ich hatte vorher noch nie darauf geachtet, in einer Programmzeile können nur 2 Operanden verarbeitet werden.

Dadurch werden aus komplexen C oder C++ Zeilen viele kleine Zeilen.....

...und ich habe den Atmega8 durch einen Atmega328p ersetzt, was mir die Möglichkeit eröffnet den Umrechnungsprozeß des BME280 komplett in die VFD und Nixieröhrensteuerung zu übernehmen.

also hat sich das Thema erst einmal wieder erledigt.

und in der letzten Version von BASCOM wurden die Compiler-Regeln wieder verschärft, so das ein viele meiner Programme anpassen musste, weil jetzt der neue Compiler gemeckert hat :-(

wpw
--
RECORD, CRN1; CRN2; PicoDat; LC80; Poly880; KC85/2,3,4,5 ; KC87; Z1013; BIC; PC1715; K8915; K8924; A7100; A7150; EC1834; und P8000 ab jetzt ohne Tatra813-8x8 aber mit W50LA/Z/A; P3; ES175/2 und Multicar M25 3SK; Barkas B1000 HP
 
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
006
23.10.2026, 11:03 Uhr
wpwsaw
Default Group and Edit


...und weiter nur zur Info mit meinem Ärgernis und BASCOM

im Beitrag zuvor hatte ich ja schon geschrieben, das nur 2 Operanden pro Zeile möglich sind und ich die langen Formeln umgeschrieben habe. Aber das Ergebnis der ganzen Rechnungen waren nicht nur unbefriedegend sondern auch falsch.

ich habe mir nun die Ergebnisse jeder Rechenzeile im Monitor anzeigen lassen und sie mit den Zeilen im C++ Programm verglichen und..... viele Unstimmigkeiten fest gestellt :-((

Es gab mehrere Ursachen

1. bei rechnerischen Verknüpfungen von Integer und long Variablen wurde machnmal das Vorzeichen durch die Compiler-Optimierung vergessen

2. bei Bit Verschiebungen von vorzeichen behafteten long und integer Zahlen wurde ebenfalls das Vorzeichen trotz Signed vergessen. Dadurch kamen diese fehlerhaften Ergebnisse zu Stande.

zu 1. habe ich die Variablen angepasst, alles auf long
zu 2. habe ich statt Verschiebung der Bits einfach dann den Wert von 2 hoch x ermittelt und dann mit der Variabel multipliziert bzw. dividiert.

jetzt scheinen die Ergebnisse korrekt zu sein

wpw
--
RECORD, CRN1; CRN2; PicoDat; LC80; Poly880; KC85/2,3,4,5 ; KC87; Z1013; BIC; PC1715; K8915; K8924; A7100; A7150; EC1834; und P8000 ab jetzt ohne Tatra813-8x8 aber mit W50LA/Z/A; P3; ES175/2 und Multicar M25 3SK; Barkas B1000 HP
 
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
007
28.10.2026, 23:19 Uhr
wpwsaw
Default Group and Edit


...guten Abend,

auch wieder zur Info,

ich konnte nun endlich meine Uhr mit dem neuen BME280 wieder in Betrieb nehmen. Aber der Weg war ...... na ja,

Wie schon geschrieben habe ich das gesamte Programm in BASECOM noch einmal überarbeitet und einige der Rechenschritte noch einmal überdacht/getestet mit vielen Monitorausgaben. Der Compiler von BASCOM ist wirklich gewöhnungsbedürftig. Zu guter letzt bin ich sogar 2 Versionen zurück gegangen auf 2.0.7.9 , weil mit den neuen Versionen sogar vor jahren erstellte Programme nur mit Fehlern durchliefen.

Mit dieser älteren Version konnte ich nicht nur die Berechnungen fehlerfrei durchführen lassen, sondern habe es auch gleich in das Uhrenprogramm eingebunden und konnte nach ein paar, diesmal eigene, Fehler die Meßwerte zur Anzeige bringen. Da fast alle ports genutzt werden hatte ich im Testbetrieb z.B. COM aktiviert und auch die ISP Schnittstelle genutzt. Dadurch kam es am Anfang zu falschen Anzeigen wo ich dann sehr lange gesucht habe und Schaltkreise in Verdacht hatte was ich dann durch hin und her tauschen ausschließen konnte. Nach abnehmen des programmers und deaktivieren des COM-Portes lief alles wie es von mir beabsichtig war. ;-))

Diese Uhren hatte ich 2018/19 aufgebaut. Eine von ihnen läuft seit 2018 im Dauerbetrieb. Die Uhr mit den Nixieröhren wird mit einem Atmega32 angesteuert. Ich habe die Uhr mit RTC und DCF erweitert. Temperatur, Luftdruck und luftfeuchte wurden mit DHT11 und BMP085 an einem Atmega8 und den IV22 ausgegeben. Die Wochentagansteuerung/Anzeige läuft mit einem Atiny

Die originalen Programme waren in C die ich dann 2018 schon in BASCOM umgeschrieben habe. Die Uhren waren gekaufte Bausätze.




nun habe ich den BMP085 und den DHT11 durch einen BME280 ersetzt.

Ich werde über den Winter noch ein paar änderungen in der Software vornehmen, z.B. das auch das Datum angezeigt wird.

Ist nur etwas umständlich, da kein Prog-Anschluß für die MCUs in der Schaltung vorgesehen ist.


Übrigens ist auch hier am RTC-Chip ein DCF-Emulator über WLAN im Einsatz.

gruß
wpw
--
RECORD, CRN1; CRN2; PicoDat; LC80; Poly880; KC85/2,3,4,5 ; KC87; Z1013; BIC; PC1715; K8915; K8924; A7100; A7150; EC1834; und P8000 ab jetzt ohne Tatra813-8x8 aber mit W50LA/Z/A; P3; ES175/2 und Multicar M25 3SK; Barkas B1000 HP

Dieser Beitrag wurde am 28.10.2026 um 23:27 Uhr von wpwsaw editiert.
 
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
Seiten: -1-     [ Technische Diskussionen ]  



Robotrontechnik-Forum

powered by ThWboard 3 Beta 2.84-php5
© by Paul Baecher & Felix Gonschorek