Forum: Mikrocontroller und Digitale Elektronik MCU programmieren (anfänger braucht Hilfe)


von Chris (Gast)


Lesenswert?

Hallo: Ich kann leider nur einige wenige Grundlagen von 
C-Programmierung. Und nun will ich ein ein Mikrokontroller programmieren 
bzw. es ein wenig üben.  Ich habe ein lauffähiges Demoprogramm in meinem 
MCU und möchte es erweitern. Dafür habe ich schon eine passende Funktion 
im Internet gefunden. Jetzt will soll diese Funktion durch einen Switch 
aufgerufen werden. Es handelt sich um eine Funktion die einen Sensor 
abfragt:
--------------------------------------
BYTE GetTC77String( char *buffer )  //Funktion
 {


..... hier wird der Sensor abgefragt und auf dem Hiperterminal 
ausgegeben.



}
return strlen(buffer)     //
-------------------------------------


Wenn ich einen Schalter drücke, dann soll die Funktion aufgerufen 
werden. Welchem Wert muss ich denn in diese Funktion hineingeben? Ich 
weiss nicht wie ich das machen soll.

von Bohrer (Gast)


Lesenswert?

Der Wert den du suchst ist 42!
1
GetTC77String(42);

von Stefan B. (stefan) Benutzerseite


Lesenswert?

Chris schrieb:
> Hallo: Ich kann leider nur einige wenige Grundlagen von
> C-Programmierung. Und nun will ich ein ein Mikrokontroller programmieren
> bzw. es ein wenig üben.  Ich habe ein lauffähiges Demoprogramm in meinem
> MCU und möchte es erweitern.

Welches Demoprogramm?

> Dafür habe ich schon eine passende Funktion
> im Internet gefunden.

Wo?

> Jetzt will soll diese Funktion durch einen Switch
> aufgerufen werden. Es handelt sich um eine Funktion die einen Sensor
> abfragt:
> --------------------------------------
> BYTE GetTC77String( char *buffer )  //Funktion
>  {
>
>
> ..... hier wird der Sensor abgefragt und auf dem Hiperterminal
> ausgegeben.
>
>
>
> }
> return strlen(buffer)     //

Da ist bereits ein Fehler. Das return steht ausserhalb der Funktion!

> Wenn ich einen Schalter drücke, dann soll die Funktion aufgerufen
> werden.

Die Abfrage des Schalters an sich funktioniert bereits?

> Welchem Wert muss ich denn in diese Funktion hineingeben? Ich
> weiss nicht wie ich das machen soll.

Die Funktion erwartet einen Text (string). Also sowas:

GetTC77String("42"); // Kommando "42" an Sensor senden

oder sowas

{
   char ergebnispuffer[128];
   GetTC77String(ergebnispuffer); // Sensordaten hier speichern!
   // hier ergebnispuffer auswerten
}

Was der Sensor mit dem Text machen könnte, weiss man erst, wenn man sich 
das Datenblatt zu Gemüte führt.

Google findet unter TC77 einen Thermal Sensor with SPI Interface von 
Microchip, ist das der Sensor?
http://ww1.microchip.com/downloads/en/devicedoc/20092a.pdf

von Lehrmann M. (ubimbo)


Lesenswert?

So,

jetzt wäre es noch schön zu wissen welchen Microcontroller du nun 
betreibst. Es gibt mehrere Tausend verschiedener Typen. Wäre interessant 
=)

http://www.mikrocontroller.net/articles/AVR-Tutorial
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial

Am besten fängst du hier an und lernst Grundlagen und versuchst nicht 
durch Code-Klau dich durchzumogeln. Das endet nach 2 Wochen in purer 
Frustration ... Auch wenn du mir jetzt nicht glauben wirst - hinterher 
bist du schlauer ...

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.