Forum: Mikrocontroller und Digitale Elektronik Wieso kann ich nicht komplimieren


von Simon R. (simon_r44)


Lesenswert?

Hallo,
will den Quellcode komplimieren und dann eine Hex haben mit Bascom. Aber 
der meldet immer Fehler...

1
#include <avr/io.h>
2
 
3
#define F_CPU 8000000UL      // 8 MHz (fuer delay.h)
4
#include <util/delay.h>
5
 
6
 
7
int main(void){
8
 
9
    DDRD |= _BV(PD3) | _BV(PD4) | _BV(PD5);
10
 
11
    while (1){
12
        PORTD |= _BV(PD3); _delay_ms(250); PORTD &= ~_BV(PD3);
13
        PORTD |= _BV(PD4); _delay_ms(250); PORTD &= ~_BV(PD4);
14
        PORTD |= _BV(PD5); _delay_ms(250); PORTD &= ~_BV(PD5);
15
                      
16
    }
17
 
18
     
19
return 0;
20
}

von g457 (Gast)


Lesenswert?

> eine Hex haben mit Bascom

?? Das sieht erst mal mehr nach C aus.

> Aber der meldet immer Fehler...

Wer 'der' und was ∗genau∗ meldet 'der'?

von ich (Gast)


Lesenswert?

Das pöse pöse Bascom komplimiert nicht?
Er zeigt bestimmt den Fehler 42 an, oder?

von Weingut P. (weinbauer)


Lesenswert?

äääh, du willst was machen??

C-Code in Bascom "komplimieren" ...

gehe in das Gefängnis, begib Dich direkt dorthin, gehe nicht über Los 
...

von Duzezan (Gast)


Lesenswert?

Was ist denn der genaue Fehler, den dir der Compiler ausgibt?

von Duzezan (Gast)


Lesenswert?

Duzezan schrieb:
> Was ist denn der genaue Fehler, den dir der Compiler ausgibt?

Edit: zu langsam ^^

von Simon R. (simon_r44)


Lesenswert?

Der zeigt jedesmal andere Dinge an. Er erzeugt nur eine .err .bm und 
.lib.

Jetzt zeigt er die fehler nicht an. Kann aber keine hex finden...

von Butzemann (Gast)


Lesenswert?

>Aber der meldet immer Fehler...
Wieso bloss, der Quellcode sieht doch super aus.
Welche Version von BASCOM benutzt du denn?

von Marcus W. (marcusaw)


Lesenswert?

Der Fehler ist, dass der Bascom-Compiler keinen C-Code "komplimiert". 
Versuchs mit nem C-Compiler oder schreib deinen zu "komplimierenden" 
Code in Bascom

von Wolfgang (Gast)


Lesenswert?

Simon R. schrieb:
> und dann eine Hex haben mit Bascom. Aber der meldet immer Fehler...
Bei dem Quellcode würde ich dir als Bascom auch die rote Karte zeigen. 
Da ist ja überhaupt kein einziges DIM drin.

von ich (Gast)


Lesenswert?

g457 schrieb:
>> eine Hex haben mit Bascom
>
> ?? Das sieht erst mal mehr nach C aus.
>
>> Aber der meldet immer Fehler...
>
> Wer 'der' und was ∗genau∗ meldet 'der'?

Mannohmann, das habe ich ja gar nicht beachtet. Na das erklärt 
eigentlich alles. Du kannst kein C-Programm mit Bascom übersetzen.

P.S.: Übrigens heißt das "compilieren" oder "übersetzen" und nicht 
"komplimieren", ok?   ;-)

von Simon R. (simon_r44)


Lesenswert?

Okay also kann man eine c nicht nach hex speichern.
Ich muss also die c nach bas erst umschreiben? keine ahnung wie man das 
macht...

Bin Anfänger

von Simon R. (simon_r44)


Lesenswert?

oder gibts ein anderes programm für c das mir eine hex macht. Versteht 
der attiny2313 den C? ich bin noch ganz am Anfang vom Programmieren.

von Der Pfarrer (Gast)


Lesenswert?

Amen.

von Simon R. (simon_r44)


Lesenswert?

Im Leitartikel wird gesagt das man den Quellcode mittels einer 
Proogrammers über den parrallelport überträgt. Ich kann nur USAB.

von Tom W. (Gast)


Lesenswert?

Ich muss sagen, dass mir das Wort "KOMPLIMIEREN" gefällt.
Es gibt ja das Wort Sublimieren, also "über die Grenzen gehen", 
vielleicht heisst Komplimieren "alles bewegt sich an die Grenze heran". 
Der Komplier optimiert also den Code, bis es nicht mehr geht. Das wäre 
doch was...

von ich (Gast)


Lesenswert?

Simon R. schrieb:
> Okay also kann man eine c nicht nach hex speichern.
> Ich muss also die c nach bas erst umschreiben? keine ahnung wie man das
> macht...
>
> Bin Anfänger

Anfänger in Bascom oder Anfänger in C? Oder in beidem?
Also erstmal mußt du wissen, ob du in C oder in Bascom programmieren 
willst. Wenn C deine Wahl ist, findest du hier im Forum Hilfe.
Beispielsweise hier ist ein guter Anfang:
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial

Wenn du aber in Bascom programmieren möchtest, dafür gibt es auch ein 
Forum:
http://bascom-forum.de/

von Martin K. (maart)


Lesenswert?

Simon R. schrieb:
> Versteht der attiny2313 den C?

Der versteht C besser, als wir dich.

Welche Programme benutzt du denn?

von g457 (Gast)


Lesenswert?

> P.S.: Übrigens heißt das "compilieren" oder "übersetzen" und nicht
> "komplimieren", ok?   ;-)

Oder 'kompilieren', also nicht OK. Abgesehen davon falscher Adressat. 
Und eine völlig überflüssige Anmerkung.

> Versteht der attiny2313 den C?

Nein (natürlich nicht).

> ich bin noch ganz am Anfang vom Programmieren.

Lies mal [0]. Und ein C-Buch.

HTH

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

von g457 (Gast)


Lesenswert?

Korrektur: Mit ohne Schrägstrich hinten dran [0] gehts besser..</ingrid>

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

von Thomas E. (thomase)


Lesenswert?

Simon R. schrieb:
> oder gibts ein anderes programm für c das mir eine hex macht. Versteht
> der attiny2313 den C? ich bin noch ganz am Anfang vom Programmieren.
Nein. Der versteht überhaupt nichts von dem, was uns irgendwie 
verständlich ist. Deswegen muß man das übersetzen. Das macht der 
Compiler.
Wie ein Dolmetscher. Nur du hast gerade einem Russisch-Dolmetscher etwas 
auf chinesisch gegeben. Entweder übersetzt du das erstmal ins Russische 
oder du suchst dir einen Chinesen. Und der heisst C.

mfg.

von ich (Gast)


Lesenswert?

g457 schrieb:
>> P.S.: Übrigens heißt das "compilieren" oder "übersetzen" und
> nicht
>> "komplimieren", ok?   ;-)
>
> Oder 'kompilieren', also nicht OK. Abgesehen davon falscher Adressat.
> Und eine völlig überflüssige Anmerkung.
>
>> Versteht der attiny2313 den C?
>
> Nein (natürlich nicht).
>
>> ich bin noch ganz am Anfang vom Programmieren.
>
> Lies mal [0]. Und ein C-Buch.
>
> HTH
>
> [0] http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial/

Sorry, ich habe dich nicht angegriffen. Ich hatte dich nur zitiert, weil 
mir vorher nicht aufgefallen war, daß es C-Quelltext war. Das war nicht 
an dich gerichtet. Hätte ich noch kenntlich machen sollen.

Und im übrigen, warum ist es überflüssig, einen Anfänger darauf 
hinzuweisen, daß es "komplimieren" nicht gibt und die richtigen Wörter 
zu nennen?

von mh (Gast)


Lesenswert?

Wenn der TO älter als 13 ist, sollte so viel Blödheit und 
Unselbständigkeit eigentlich verpflichtend in den Lebenslauf kommen.

von Mr. Yu (Gast)


Lesenswert?

ich schrieb:
> Und im übrigen, warum ist es überflüssig, einen Anfänger darauf
> hinzuweisen, daß es "komplimieren" nicht gibt und die richtigen Wörter
> zu nennen?

Warum soll man keine selbst erfundenen, neuen Worte verwenden? 
Offensichtlich versteht das doch jeder, oder?

von Simon R. (simon_r44)


Lesenswert?

Martin Kreiner schrieb:
> Welche Programme benutzt du denn?

Der Punt ist dieser. Ich habe eine ATtiny 2313 mit dem ich in die 
Programmiertechnik einsteigen will. Dabei Interesannte Seite gefunden:

http://www.sachsendreier.com/msw/projekte/attiny2313projekte/dreikanallauflicht/dreikanallauflicht.html

Das Programm wollte ich wie bisher immer auf den Chip bringen. Bisher 
nutzte ich also immer bascom gechrieben e Programme zum komplieren oder 
wie das auch immer heißt.

Das ist eine C.

Ich dachte es ist eine bas.

Somit kann ich nichts tun...

von Simon R. (simon_r44)


Lesenswert?

mh schrieb:
> Wenn der TO älter als 13 ist, sollte so viel Blödheit und
> Unselbständigkeit eigentlich verpflichtend in den Lebenslauf kommen.

Jeder hat einmal angefangen. Auch du!

von ich (Gast)


Lesenswert?

1
„Gmäeß eneir Sutide eneir elgnihcesn Uvinisterät ist es nchit
2
witihcg, in wlecehr Rneflogheie die Bstachuebn in eneim Wrot
3
snid, das ezniige was wcthiig ist, dass der estre und der
4
leztte Bstabchue an der ritihcegn Pstoiion snid. Der Rset
5
knan ein ttoaelr Bsinöldn sien, tedztorm knan man ihn onhe
6
Pemoblre lseen. Das ist so, wiel wir nciht jeedn Bstachuebn
7
enzelin leesn, snderon das Wrot als gseatems.“

Das versteht auch jeder, aber wir unterhalten uns nicht so :-))

von Simon R. (simon_r44)


Lesenswert?

ich schrieb:
> Das versteht auch jeder, aber wir unterhalten uns nicht so :-))

Ja, aber bei einem Fehler stirbst du nicht.

von Olga (Gast)


Lesenswert?

Don't feed the troll!

von Thomas E. (thomase)


Lesenswert?

Simon R. schrieb:
> Martin Kreiner schrieb:
>> Welche Programme benutzt du denn?
>
> Der Punt ist dieser. Ich habe eine ATtiny 2313 mit dem ich in die
> Programmiertechnik einsteigen will. Dabei Interesannte Seite gefunden:
>
> 
http://www.sachsendreier.com/msw/projekte/attiny2313projekte/dreikanallauflicht/dreikanallauflicht.html
>
Die Seite gehört auf den Index für jugendgefährdende Schriften.

Guck dir das mal an:
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial

mfg.

von flip (Gast)


Lesenswert?

http://www.sachsendreier.com/msw/clernen/clernen1.html
wenn du damit anfängst sollte dir einiges klar werden.

von ich (Gast)


Lesenswert?

Simon R. schrieb:
> mh schrieb:
>> Wenn der TO älter als 13 ist, sollte so viel Blödheit und
>> Unselbständigkeit eigentlich verpflichtend in den Lebenslauf kommen.
>
> Jeder hat einmal angefangen. Auch du!

Laß dich nicht entmutigen von solchen Blödmännern.

Aber den manchmal (oder auch öfters) etwas rauhen Ton hier im Forum mußt 
du schon ertragen. Das ist nun mal so, aber wenn du dich selbst mit der 
Materie beschäftigst, Interesse am Thema zeigst und dann Fragen stellst, 
wird man dir auch helfen. Was du nicht machen darfst, sind Fragen wie: 
"Erklärt mir mal, wie programmieren geht." oder ähnliches. Da wirst du 
sofort Gegenwind bekommen. Aber du hast hier viele Tutorials, wo du was 
lernen kannst. Beschäftige dich damit und mit der Zeit lichten sich die 
Schleier :-)

Und wenn du dich für Bascom entscheidest, findest du dort im Forum 
bestimmt auch Hilfe. Hier sind zwar auch einige, die etwas dazu sagen 
können, aber meist ist C hier die bevorzugte Sprache.

von flip (Gast)


Lesenswert?

http://www.sachsendreier.com/msw/clernen/clernen1.html

Anmerkung: die Verkrutzte LIvecd vom autor brauchst du nicht, lade dir 
einfach eine beliebige andere distri runter (Ubuntu)

von Marcus W. (marcusaw)


Lesenswert?

Am besten hat es dir Thomas Eckmann erklärt: Du möchtest den Übersetzer 
/ Dolmetscher für die eine Sprache mit einer anderen Sprache verwenden. 
Das kann nicht klappen.

Lösung 1: Tausch die Sprache
Lösung 2: Tausch den Übersetzer

Letzteres ist einfacher - da der Compiler in jedem Fall das selbe (oder 
ähnliche) Hex-File ausspuckt. Du könntest dir auch einen Texteditor 
schnappen und das Hex-File Byte für Byte selbst zusammenklöppeln - aber 
versuch mal in dieser Datei etwas zu erweitern oder zu verbessern. 
Deshalb benutzen wir Programmiersprachen, die wiederum kompiliert werden 
müssen. Ein Compiler tut nix anderes als die (für uns lesbare) 
Programmiersprache in eine für den Prozessor lesbare / interpretierbare 
Form zu wandeln.

von ich (Gast)


Lesenswert?

Simon R. schrieb:
> ich schrieb:
>> Das versteht auch jeder, aber wir unterhalten uns nicht so :-))
>
> Ja, aber bei einem Fehler stirbst du nicht.


Das war auf Mr. Yu gemünzt, ging nicht gegen dich:

Mr. Yu schrieb:
> ich schrieb:
>> Und im übrigen, warum ist es überflüssig, einen Anfänger darauf
>> hinzuweisen, daß es "komplimieren" nicht gibt und die richtigen Wörter
>> zu nennen?
>
> Warum soll man keine selbst erfundenen, neuen Worte verwenden?
> Offensichtlich versteht das doch jeder, oder?

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.