mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Probleme beim proggen mit lpc2148


Autor: David Scheele (der_dave)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tag auch, hab schonmal einen beitrag...in englisch verfasst den ich 
dummerweise net wiederfind... den hier bookmark ich mir ;)

erm geht sich um folgendes:

wir proggen grad an nem olimex lpc2148 ruzm und wollen eigentlich nur 
die einfache aufgabe bewältigen einen wert von einem optiksensor über 
den adwandler auf die konsole ausgeben zu lassen.
wir haben das ganze vorher schonmal geschafft aber mit einem anderen 
board. nun versuchen wir das ganze mit demlpc2148 aber das will net so. 
sensor ist getestet der gibt gute signale. wir haben an den pin ad03 
angestöpselt.
das ist unser code:
#include<targets/lpc2000.h>
#include<stdio.h>


static int erg;
int main(void) {

PINSEL1&=~(1<<29);
PINSEL1|=(1<<28);

AD0CR|=(1<<3); // Kanal 1

AD0CR|=(1<<9);
AD0CR|=(1<<10);

AD0CR|=(1<<16);
AD0CR|=(1<<21);

while(1){
  if(AD0DR3&(1<<31)){
    erg=(short)(AD0DR3>>6);
    debug_printf("%i\n",erg);
  }
}

return(0);
}

wir denken echt langsamwir haben n brett vormkopf. kann uns jemand sagen 
was los ist?

: Verschoben durch Moderator
Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Und was hat das jetzt mit "PC-Programmierung" zu tun?
-> Verschoben

Autor: David Scheele (der_dave)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Find mich hier im forum net wirklich zurecht...immerhin "programmiere 
ich an nem pc".... binmir da net sicher :P

Autor: Wilhelm F. (ferkes-willem)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
David Scheele schrieb:

>wir proggen grad an nem olimex lpc2148 ruzm und wollen
>eigentlich nur die einfache aufgabe bewältigen einen wert
>von einem optiksensor über den adwandler auf die konsole
>ausgeben zu lassen.

Funktioniert die Ausgabe auf die Konsole denn generell, unabhängig vom
ADC?

>wir haben das ganze vorher schonmal geschafft aber mit
>einem anderen board.

Auch LPC2148, oder was ganz anderes?

Autor: David Scheele (der_dave)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wilhelm Ferkes schrieb:
> Funktioniert die Ausgabe auf die Konsole denn generell, unabhängig vom
> ADC?

jo das funtkionert.wir haben schon den standartwert so 0, 256 usw 
abrufgen und aufzählen lassen können, aber das hilft uns ja auch nicht 
viel weiter ;)

ja vorher haben wir an nem anderen board geproggt.... das war ne 
niedrigere zahl weiß aber die nummer net mehr. da waren einige befehle 
die wir dann umändern mussten für dieses board.

Autor: Wilhelm F. (ferkes-willem)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
David Scheele schrieb:

>wir haben schon den standartwert so 0, 256 usw abrufgen und
>aufzählen lassen können, aber das hilft uns ja auch nicht
>viel weiter ;)

Aber sicher, das ist doch schon mal ein Ansatzpunkt, daß schon einiges 
funktioniert! Da kann man jetzt intern im Baustein weiter suchen, ob was 
mit der Initialisierung nicht stimmt, oder ob der Pin hardwaremäßig 
keine Verbindung zum Sensor hat...

>ja vorher haben wir an nem anderen board geproggt....

Meine Frage war, ob es ebenfalls ein LPC2148 war, oder ein anderer 
Baustein aus der LPC21xx-Reihe? Einfach um einzuschätzen, was ihr vorher 
gemacht habt.

Kürzlich war hier noch jemand mit einem LPC23xx, der ein falsches 
Headerfile eingebunden hatte. Als ich es bemerkte, und einen Hinweis 
gab, hat der Mann sich aber auch nie wieder gemeldet.

Autor: David Scheele (der_dave)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja war auch ein lpc21xx dingen.
also wir haben schon alle befehle drei ma überprüft und den einen tag 5 
stunden nur an diesem problem gehockt und nix gebacken bekommn

konsole fuinktioniert wie gesagt und auch beimstoppen und den 
kramsselbst nachgucken scheint eigentlich so ungefähr alles richtig zu 
laufen.

das hier war der code der auf dem letzten board funktioniert hat:
 #include<targets/lpc2000.h>
#include<stdio.h>

static int b;
}

int main(void){

// AD CRAP CONFIG
ADCR|=(1<<1); //KANAL 1

ADCR|=(1<<9); // 110 an Bit 8-15 schreiben
ADCR|=(1<<10); // 110 an Bit 8-15 schreiben

ADCR|=(1<<16); // INSTANT START
ADCR|=(1<<21); // AN!

ADCR&=~(1<<17);
ADCR&=~(1<<18); // Auflösung auf 10 bits
ADCR&=~(1<<19);

// Ab hier LED 
while(1){
if((ADDR&(1<<31))) {
  b=((short)(ADDR>>6))*1250; 
  b =(short)(ADDR>>6);
  debug_printf("%i\n",b);
}}

return(0);
}

Autor: Wilhelm F. (ferkes-willem)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So, ich hab mir mal ein Beispiel angeschaut.
Dort wird am Ende der Initialisierung noch Bit 24 (Start Conversion) in 
ADCR gesetzt. Dann kommt die while-Schleife. Kann es das sein?

Autor: David Scheele (der_dave)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wilhelm Ferkes schrieb:
> So, ich hab mir mal ein Beispiel angeschaut.
> Dort wird am Ende der Initialisierung noch Bit 24 (Start Conversion) in
> ADCR gesetzt. Dann kommt die while-Schleife. Kann es das sein?

wir haben den adcr 24er mit in die while schleife gepackt vorher mal
hat aber net geholfen

Autor: Wilhelm F. (ferkes-willem)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habt ihr mal bei Keil oder Hitex auf die Homepage geschaut?

Dort gibt es reichlich Beispiele für die LPC-Typen zum kostenlosen 
Download. Auch mit ADC. Die funktionierten bei mir auch immer.

Leider habe ich zur Zeit keine LPC-Hardware vor Ort, kann es also selbst 
nicht testen.

Autor: David Scheele (der_dave)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wilhelm Ferkes schrieb:
> Habt ihr mal bei Keil oder Hitex auf die Homepage geschaut?
>
> Dort gibt es reichlich Beispiele für die LPC-Typen zum kostenlosen
> Download. Auch mit ADC. Die funktionierten bei mir auch immer.

Ne noch net geschaut.
War grad drauf find aber net wirklich was was in die richtung geht

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.