closed

Loginbox

Please enter your username and password into the following fields to log in.


  • Username:
  • Password:
  •  
  • Auto log in on every visit.


  •  

C-Code in Pascal einbinden?



mc-electronic offline
Benutzer
Avatar
Gender: n/a
Location: n/a  Sauerland NRW
Age:
Posts: 368
Registered: 03 / 2008
Private message
Subject: C-Code in Pascal einbinden?  -  Posted: 02.03.2018 - 08:32   -  
Hallo Zusammen,

ich stehe her vor dem Problem, daß ich einen Umweltsensor von Bosch, den BME680 mit AVRco Pascal benutzen möchte. Soweit kein Problem, der Sensor ist per I2C dran und läuft.
Leider hat Bosch umfangreiche Abgleich-Routinen in GCC (C-Compiler) für den Sensor geschrieben, die ich lt. Aussage von Bosch nutzen muß. Und diese Routinen liegen nicht als C-Quellcode vor.

Meine Idee ist nun, den Bosch C-Code an eine bestimmte Adresse zu compilieren, den Stack-Pointer passend zu setzen und dann das Ganze von Pascal aus aufzurufen. Den Hex-Code des compilierten C-Code könnte ich ja beim Flashen in den ISP einbinden...

Hat jemand so etwas schon einmal gemacht? Hätte jemand ein paar Tips für mich?

Michael

PS: Ja, ich finde die Situation auch schrecklich! :banghead: ](*,)
go down go up
miparo offline
Schreiberling
Avatar
Gender: male
Location: GERMANY  Germany
Age: 51
Posts: 618
Registered: 09 / 2007
Private message
Subject: Re: C-Code in Pascal einbinden?  -  Posted: 02.03.2018 - 11:32   -  
Hi Michael,
das geht natürlich nicht aber du kannst mir den C Code geben und ich Übersetzte den für dich.

miparo
Kein Support per PN! | No support via PM!
go down go up
mc-electronic offline
Benutzer
Avatar
Gender: n/a
Location: n/a  Sauerland NRW
Age:
Posts: 368
Registered: 03 / 2008
Private message
Subject: Re: C-Code in Pascal einbinden?  -  Posted: 02.03.2018 - 13:07   -  
Hallo Miparo,

danke Dir für das Angebot, aber Fa. Bosch war so schlau, daß die wichtigen Sachen nicht als Quell-Code (bei C: Quäl-Code) vorliegen. Da liegt nur Binärgemüse zum Einlinken bei.

Deshalb ja die verwegene Idee mit dem C-Compile in einen freien Adressbereich des Flash mit einer Übergabeschnittstelle an einer festen Adresse im RAM. Dann per Jump vom Pascal zum C und hoffen, daß irgendwann das C-Programm zurückkommt. Klar, das ganze Handling muß gut durchdacht sein.

Grüße, Michael
go down go up
miparo offline
Schreiberling
Avatar
Gender: male
Location: GERMANY  Germany
Age: 51
Posts: 618
Registered: 09 / 2007
Private message
Subject: Re: C-Code in Pascal einbinden?  -  Posted: 02.03.2018 - 14:01   -  
Hi Michael,
aber den ganzen Rödel zum BME680 gibt es doch zu Hauf im Netz.
Von Arduino und und und , da ist man doch nicht auf Bosch angewiesen?

miparo
Kein Support per PN! | No support via PM!
This post has been edited 1-times. Last edit: 02.03.2018 - 14:02 by miparo.
go down go up
mc-electronic offline
Benutzer
Avatar
Gender: n/a
Location: n/a  Sauerland NRW
Age:
Posts: 368
Registered: 03 / 2008
Private message
Subject: Re: C-Code in Pascal einbinden?  -  Posted: 02.03.2018 - 14:15   -  
Hallo Miparo,

schön wäre es. Auf den ersten Blick habe ich das auch gedacht.

Bosch stellt 2 Software-Pakete zur Verfügung:

1)
BME6xy API: Hier findet sich die I2C Schnittstelle, das Auslesen der Kompensations-Register sowie einfache Druck-, Temperatur- und Feuchte-Korrektur Berechnungen. Das liegt alles in C Source vor, für alle möglichen Prozessoren und ist das, was die meisten Leute nutzen.

Darauf aufsetzend kommt dann aber der

2)
BSEC ( Bosch Software Environmental Cluster ) in der Ausführungen IAQ oder ALL: Hier finden sich die tiefer gehenden Kompensations-Berechnungen zur Luftqualität, dem VOC-Sensor Anteil. Dieser unterliegt einer Abhängigkeit von den anderen Meßwerten und muß über einen längeren Zeitraum (bis zu 4 Wochen) betrachtet und kompensiert werden (AMS nennt das z.B: Baseline drift). Hier gibt es nur Binär Code. Und diesen Teil hat meines Wissens noch keiner neu geschrieben.

Andere Hersteller wie AMS oder Sensirion packen diese Berechnungen mit auf den Chip, aber die sind dann gleich doppelt so teuer und oft auch sehr viel größer.

Es ist eine vertrackte Sache, das Ganze.. :fgrin:

Michael
go down go up
miparo offline
Schreiberling
Avatar
Gender: male
Location: GERMANY  Germany
Age: 51
Posts: 618
Registered: 09 / 2007
Private message
Subject: Re: C-Code in Pascal einbinden?  -  Posted: 02.03.2018 - 14:47   -  
Komisches Teil und Bosch hat Angst vor den Chinesen mit ihrer Unit.

Aber das Ding mist dann den Co2 auf dem Mond und 4 Tage Burn In ?

Im FEHM Forum hat ja einer en Alternative zu dem Bosch erwähnt .

miparo
Kein Support per PN! | No support via PM!
go down go up
miparo offline
Schreiberling
Avatar
Gender: male
Location: GERMANY  Germany
Age: 51
Posts: 618
Registered: 09 / 2007
Private message
Subject: Re: C-Code in Pascal einbinden?  -  Posted: 02.03.2018 - 16:15   -  
Brauchst du das für Mega oder Xmega ?

Ich hätte den ASM Code von der Bosch Lib :)

Da werden ja eh nur 13 Funktionen exportiert.
Kein Support per PN! | No support via PM!
This post has been edited 1-times. Last edit: 02.03.2018 - 16:16 by miparo.
go down go up
mc-electronic offline
Benutzer
Avatar
Gender: n/a
Location: n/a  Sauerland NRW
Age:
Posts: 368
Registered: 03 / 2008
Private message
Subject: Re: C-Code in Pascal einbinden?  -  Posted: 03.03.2018 - 07:06   -  
Hallo Miparo,

wenn das Assembler und kein Hex - oder-Binärdump ist, kann ich das brauchen, unter der Voraussetzung, daß die Funktionseinsprünge und übergebenen Parameter erkennbar sind.
Ich sehe mir das gern an, Danke!

Gruß, Michael

PS: ATMega (ist eine ältere Hardware, wo das dran soll)
This post has been edited 1-times. Last edit: 03.03.2018 - 07:06 by mc-electronic.
go down go up
miparo offline
Schreiberling
Avatar
Gender: male
Location: GERMANY  Germany
Age: 51
Posts: 618
Registered: 09 / 2007
Private message
Subject: Re: C-Code in Pascal einbinden?  -  Posted: 03.03.2018 - 16:37   -  
Hi Michael,
die precompilierte läßt sich eh nicht benutzen, da der GCC die Task Register benutzt.

Das ASM läßt sich aber gut anpassen für den AVRco.

Viel passiert da eh nicht in der Bosch Algo Lib.


miparo
Kein Support per PN! | No support via PM!
go down go up
Avra hidden
Schreiberling
Avatar
Gender: male
Location: SERBIA  Belgrade, Serbia
Age: 47
Posts: 609
Registered: 07 / 2002
Homepage Private message
Subject: Re: C-Code in Pascal einbinden?  -  Posted: 05.03.2018 - 18:35   -  
This post has been edited 1-times. Last edit: 05.03.2018 - 18:40 by Avra.
go down go up
 


Registered users in this topic
Currently no registered users in this section

Delete cookies of this forum  •  FAQ / Help  •  Team page  •  Imprint   |  Local time: 22.06.2018 - 11:23