Gefunden für include strcmp xmega - Zum Elektronik Forum





1 - HiFi Verstärkerändnisproblem beim AVR GCC -- HiFi Verstärkerändnisproblem beim AVR GCC




Ersatzteile bestellen
  Nene, das kann nicht klappen.
Der µC hat 512 Byte RAM, du hast einfach zu viele Daten, und zwar praktisch 100% Strings davon.


Das Problem bei den AVRs ist, dass sie eine Harvard-Architektur besitzen!
Der GCC kann nicht unterscheiden, ob nun ein übergebener Pointer ins RAM oder ins ROM zeigt.
Auch konstante Daten werden daher in den Arbeitsspeicher kopiert, damit sowas wie putc(char const* string) funktioniert.

Aber sie belegen Platz, auch die anonymen Strings, die ja erzeugt werden, wenn man direkt eine Zeichenkette einer Funktion übergibt, also putc("Hallo").


Es ist also nichts besonderes, dass das nicht hinhaut.

Lösung wie angedeutet:

#include <avr/pgmspace.h>
Edit

prog_char const* string1 = "Hallo Welt";
prog_char const string1[] = "Hallo Welt";

Belegt dann keine 11 Bytes im RAM sondern nur im ROM.

Die Stringfunktionen wie z.B. strcmp gibt es auch für konstante Strings, sie haben alle am Ende ein _P angehängt, also z.B. strcpy_P oder strcmp_P.

Verketten ist auch schlecht. Besser ist es, gleich a...
2 - GSM-Fernschalter Funktionen verändern über µC? -- GSM-Fernschalter Funktionen verändern über µC?
Hallo,

Da ich noch in den Kinderschuhen stecke was µC Betrifft, bräuchte ich
eure Hilfe. Habe ein Problem, ich würde gerne ein GSM Fernschaltmodul
von Elektor aufbauen hier
http://www.elektor.de/jahrgang/2008/november/gsm-f...
ist das Projekt einmal beschrieben. Nun ist es dort so das beim
ansteuern das ersten Relais vom µC ATmega8 nur eine Sekunde geschaltet
wird. Da ich am ersten Ausgang aber gerne die Standheizung für ca. 1800
Sekunden (30 Minuten) ansteuern würde, wollte ich fragen ob es möglich
ist die Firmware die es bei Elektor zum Download gibt dahin gehend um
zuschreiben?
Meine Überlegung:

Der Standard ist folgender:
Exit1 Lässt sich immer nur für eine Sekunde ansteuern.
Exit2 ist Toggelfähig und kann per Jumper umgeschaltet werden auf eine
Sekunde ansteuern
Exit3 ist über einen Timer der am µC angeschlossen ist Steuerbar dort
lässt sich zwischen 1, 5, 10, 15, 20, 30, 45, 60, 90 und 120 Minuten
schalten.

So hätte ich es gerne:
Kann man den AVR so umschreiben / Was muss ich umschreiben das:
EXIT1 den Timer bekommt (halt darüber die Dauer...








3 - Atmel 89C2051. Einlesen des Gesamten Port 1 -- Atmel 89C2051. Einlesen des Gesamten Port 1
Hallo auch !!

ich habe nur sehr (!) begrenzte Ahnung vom Programmieren, trotzdem muss ich einem Atmel 89C2051 beibiegen das er auf Anfrage (es wird ein"A" an ihn gesendet) zwei BCD-Schalter ausliest (sollen an Port 1 angeschlossen werden), diesen Wert in Hexadezimal umwandelt und dann diesen Wert wieder ausgibt ( Die Anfrage und Ausgabe geschieht über eine Western-Buchse ).
Schreiben soll ich das in C mit einem Programm von Raisonance ( RIDE51 ).
Füge auch gleich mal den Anzupassenden Quelltext bei, habe mir sagen lassen da muss man wohl nur ein paar Sachen ändern und die hälfte weglassen.
BITTE helft mir !!!!!! Direkte mails an mich sind für dieses Thema auch absolut kein Problem. ( Studi26@gmx.net )

/**
*
* Project:
*
* Target: Intel 8051 core
* IniDate: 2004
* LU Date: 2004
*
* Author:
* Company:
*
****/

#include <reg51.h>

/* ============================== MAIN =================================== */

#include <stdio.h>
#include <string....

Nicht gefunden ? Eventuell gibt es im Elektroforum Transistornet.de für Include Strcmp Xmega eine Antwort
Im transitornet gefunden: Include


Zum Ersatzteileshop


Bezeichnungen von Produkten, Abbildungen und Logos , die in diesem Forum oder im Shop verwendet werden, sind Eigentum des entsprechenden Herstellers oder Besitzers. Diese dienen lediglich zur Identifikation!
Impressum       Datenschutz       Copyright © Baldur Brock Fernsehtechnik und Versand Ersatzteile in Heilbronn Deutschland       

gerechnet auf die letzten 30 Tage haben wir 17 Beiträge im Durchschnitt pro Tag       heute wurden bisher 6 Beiträge verfasst
© x sparkkelsputz        Besucher : 187961842   Heute : 20293    Gestern : 18748    Online : 377        26.12.2025    13:49
22 Besucher in den letzten 60 Sekunden        alle 2.73 Sekunden ein neuer Besucher ---- logout ----su ---- logout ----
xcvb ycvb
0.0192620754242