Forum: Projekte & Code lpc1768-board grundgerüst mp3 ds1820


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Karl K. (leluno)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
hier ein Grundgerüst für ein LPC1768-board. Das Programm liest von einer 
sd-Karte alle Dateien aus und spielt die MP3-Dateien in der 
FAT-Reihenfolge ab. Anschließend wird die Temperatur gemessen und als 
Graph angezeigt. Ist alles noch im Aufbau. Nächste Schritte wären das 
Touch, Ethernet und IR-Fernbedienung. Es soll alles Modulweise 
programmiert werden. Für Unterstützung wäre ich dankbar. Das Board gibt 
es für unglaubliche 30€ mit TFT über China-ebay.

Hinweisen möchte ich auf meine Macros zum Setzen der Ports. das 
vereinfacht den Zugriff auf ARM ganz erheblich:

//aus LPC176x.h
#define pinSET(portn,pinn) (*(volatile 
uint32_t*)(0x2009C018UL+(portn*0x20UL)))|=(1UL<<pinn)
#define pinCLR(portn,pinn) (*(volatile 
uint32_t*)(0x2009C01CUL+(portn*0x20UL)))|=(1UL<<pinn)
#define pinDIRin(portn,pinn)  (*(volatile 
uint32_t*)(0x2009C000UL+(portn*0x20UL)))&=~(1UL<<pinn)
#define pinDIRout(portn,pinn) (*(volatile 
uint32_t*)(0x2009C000UL+(portn*0x20UL)))|=(1UL<<pinn)
#define pinSEL(p,b,v)    PINSEL[(p) * 2 + (b) / 16] = (PINSEL[(p) * 2 + 
(b) / 16] & ~(3 << ((b) * 2 % 32))) | (v << ((b) * 2 % 32))
#define pinVAL(portn,pinn) ((*(volatile 
uint32_t*)(0x2009C014UL+(portn*0x20UL))& (1<<pinn))>>pinn)

#define pinMOD(p,b,v) PINMODE[(p) * 2 + (b) / 16] = (PINMODE[(p) * 2 + 
(b) / 16] & ~(3 << ((b) * 2 % 32))) | (v << ((b) * 2 % 32))
#define pinOPD(p,b,v) (PINOD[p] & ~(1 << (b))) | ((v) << (b))

von vampire (Gast)


Bewertung
0 lesenswert
nicht lesenswert
ist das :
(Microcontroller Startup code for use with) Red Suite ???

von leluno (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Ja, lpcxpresso

von vampire (Gast)


Bewertung
0 lesenswert
nicht lesenswert
lpcxpresso --> schon 2 PC's her, das ich da mal was gemacht habe;
Nun ja, -halt nochmal(wie üblich), fast "nackich" gemacht bei der 
Anmeldung( fehlt nurnoch:
         -wann geboren und warum?
),
LPCXpresso v3.6.3 [Build 317] [08/04/2011] installiert.

Warscheinlich habe ich schon was vergessen, -aber das import. mp3.zip
wirft nur Fehlermeldungen:
z.B.:
Description  Resource  Path  Location  Type
'LPC_RTC' undeclared (first use in this function)  rtc.c  /mp3/src/start 
line 39  C/C++ Problem
und
Description  Resource  Path  Location  Type
expected identifier before '(' token  rtc.c  /mp3/src/start  line 39 
C/C++ Problem


... und davon 47(nur für rtc.c);

von Karl K. (leluno)


Bewertung
0 lesenswert
nicht lesenswert
Da muss die Datei CMSISv2p00_LPC17xx  eingebunden werden:

zuerst über import laden, dann meine mp3-datei

die Definitionen für LPC_RTC usw. stehen in der cmsis

von vampire (Gast)


Bewertung
0 lesenswert
nicht lesenswert
-eigentlich war ich nur neugierig, ob jemand die unsägliche Pinselei in 
den Griff bekommen hat!
Die CMSISv2p00_LPC17xx kennt meine alte Version nicht und LPCxpresso war 
damals schon nicht mein Ding!
Hab's dann mit anderen Compilern gemacht.
Mitlerweile bin ich aber komplett auf STM umgestiegen.
Nichts für ungut - sicher 'ne gute Sache, --nur nicht meine ...

von Karl K. (leluno)


Bewertung
0 lesenswert
nicht lesenswert
automatische Umstellung Sommerzeit für lpc1768:

//DOY=89;//Tag einstellen
//++++++++++++++ Korrektur + Umschaltung Sommer/Winterzeit 
++++++++++++++++
//  ix=(84+(110-(YEAR-2000)-((YEAR-2000)-13)/4)%7);//test
//  ix=298+(106-(YEAR-2000)-((YEAR-2000)-13)/4)%7;//test
  if(HOUR==3 || bool_programmstart){
    if(DOY>=(84+(110-(YEAR-2000)-((YEAR-2000)-13)/4)%7)//letzter So im 
März
    && (DOY<(298+(106-(YEAR-2000)-((YEAR-2000)-13)/4)%7))//letzter So im 
okt
      ){//Sommerzeit
        if ((GPREG1>>31)==0){//EEPROM-Wert für Winterzeit
          HOUR++;
          sbi(GPREG1,31);//EEPROM-Wert für sommerzeit setzen
        }
    }else{//Winterzeit
        if ((GPREG1>>31)==1){//EEPROM-Wert für sommerzeit
          HOUR--;
          cbi(GPREG1,31);//EEPROM-Wert für sommerzeit löschen
        }
    }
  }
  //--------------Korrektur + Umschaltung Sommer/Winterzeit 
______________
lcd_rtc();

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.