mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik 1 Bit Variable C167


Autor: Martin B (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich wollte wissen, wie man bei einem mit der Tasking EDE zu 
programmierenden C167 einer Variable die Speichergröße von einem bit 
zuweiesen kann, da diese nur 1 oder 0 als Wert bekommt. (c-Code)
Danke

Autor: Wegstaben Verbuchsler (wegstabenverbuchsler)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
42 ?

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bitfelder gehen nur innerhalb eines zu definierenden Structs:
http://www.cs.cf.ac.uk/Dave/C/node13.html#SECTION0...

Warum nimmst du nicht einfach einen ganzen Integer?
solange genug Speicher da ist, ist das auf jeden Fall die schnellste 
Lösung.

Autor: Martin B (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jo das wäre eine variante, ha ich auch so eingerichtet, aber e geht 
darum, möglichst wenig speicher zu belegen

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> möglichst wenig speicher zu belegen
Auch wenn du das Bitfeld definierst, und dann nur 1 Bit belegst, wird 
der compiler einen Integer verbrauchen...

Autor: Martin B (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
achso...stimmt eigentlich...naja mal schauen...

andere frage: wie kann ich den myC Resetten am anfang der main funktion? 
oder wird das automatisch gemacht?

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> wie kann ich den myC Resetten am anfang der main funktion?
Du solltest diese Funktion aufrufen:
   lirpa(first); 

> oder wird das automatisch gemacht?
Oder war die Frage wirklich ernst gemeint?

Autor: Martin B (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
nene war nicht ernst gemeint^^

danke schon mal

Autor: Martin B (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
---> kerzscheks

Autor: ??? (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lothar Miller schrieb:
> Bitfelder gehen nur innerhalb eines zu definierenden Structs

Ok, stimmt so, aber gefragt wurde nach (einzelner) Bitvariable. Der c167 
hat einen Bit-adressierbaren Bereich. Bei Keil gibt es den Datentype Bit 
und die Speicherklasse BDATA.
... und bei Tasking? (ist die Ausgangsfrage)


???

Autor: Johann L. (gjlayde) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
??? schrieb:
> Lothar Miller schrieb:
>> Bitfelder gehen nur innerhalb eines zu definierenden Structs
>
> Ok, stimmt so, aber gefragt wurde nach (einzelner) Bitvariable. Der c167
> hat einen Bit-adressierbaren Bereich. Bei Keil gibt es den Datentype Bit
> und die Speicherklasse BDATA.
> ... und bei Tasking? (ist die Ausgangsfrage)

Die Antwort ist schnell gegeben: In C geht es überhaupt nicht.

Zumindest gibt es in keinen C-Standard einen Datentyp "Bit" o.ä., auch 
nicht in der IEC TR 18037.

Autor: Abdul K. (ehydra) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
In C nicht, ja. Aber Keil unterstützt es trotzdem. Da 
Mikrocontroller-Programme seltenst portiert werden, ist ein Standard eh 
wurscht.

Autor: ??? (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Und was ist jetzt mit Tasking? Hat der auch 'ne Bit-Variable?

Bitte mal einer beantworten, ich schlafe schon seit Wochen schlecht 
:=)))

???

Autor: Abdul K. (ehydra) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
??? schrieb:
> Und was ist jetzt mit Tasking? Hat der auch 'ne Bit-Variable?
>
> Bitte mal einer beantworten, ich schlafe schon seit Wochen schlecht
> :=)))
>
> ???

Wie wärs mit Googeln? Ich glaube, du hast deinen Nick zurecht!

http://webcache.googleusercontent.com/search?q=cac...

Autor: ??? (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Abdul K.
Du weist, was das :=))) soll?

Mir ist völlig egal, ob der Tasking es kann oder nicht. Nur ist die 
Ausgangsfrage nicht beantwortet. Alle Kommentare gehen am Ziel vorbei, 
auch Deiner.

???

Autor: Abdul K. (ehydra) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
??? schrieb:
> @Abdul K.
> Du weist, was das :=))) soll?

Noch nie gesehen. Erklärs mir.


>
> Mir ist völlig egal, ob der Tasking es kann oder nicht. Nur ist die
> Ausgangsfrage nicht beantwortet. Alle Kommentare gehen am Ziel vorbei,
> auch Deiner.
>
> ???

Wow. Nun mußte ich gerade eine weitere Minute in Google investieren:
http://www.google.de/search?hl=de&ie=ISO-8859-1&q=...

Vor allem hier:
http://www.tasking.nl/support/c166-classic/c166_v8.7.pdf

http://www.keil.com/forum/docs/thread554.asp

Ja, man muß Arbeit reinstecken, sowas aber auch.

Autor: ??? (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Abdul K.
Martin B. dankt Dir bestimmt.

> Wow. Nun mußte ich gerade eine weitere Minute in Google investieren:
> http://www.google.de/search?hl=de&ie=ISO-8859-1&q=...

Aber ich finde es lustig, dass Du mit dem Wissen über das entscheidende 
Wörtchen
_atbit()
 noch Tante Google bemühst!?        ;-)))

???

Autor: Ich (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> nene war nicht ernst gemeint^^
you are me maybe a joke cookie

Autor: Abdul K. (ehydra) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
??? schrieb:
> @Abdul K.
> Martin B. dankt Dir bestimmt.
>
>> Wow. Nun mußte ich gerade eine weitere Minute in Google investieren:
>> http://www.google.de/search?hl=de&ie=ISO-8859-1&q=...
>
> Aber ich finde es lustig, dass Du mit dem Wissen über das entscheidende
> Wörtchen
_atbit()
 noch Tante Google bemühst!?        ;-)))
>
> ???

Warum nicht, ich kenne Tasking nicht. Ich begreife meinen Job als 
Infobeschaffer. Den Rest überlasse ich dann Typen wie dir.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.