mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik [PIC] Default-State Config-Bits


Autor: derjaeger (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
An die PIC-Erfahrenen, da ich ganz neu bei PIC dabei bin (aber nicht 
AVR):

Ich habe folgende Zeile in meinem Programm:
__CONFIG(FOSC_INTRCIO & WDTE_ON);

Werden die nicht spezifizierten Config-Bits automatisch auf '1' gesetzt?
D.h. entspricht die obere Zeile der unteren Zeile?
__CONFIG(FOSC_INTRCIO & WDTE_ON & PWRTE_OFF & CP_OFF & MCLRE_ON);

Im Datenblatt wird das angedeutet:

The configuration bits can be programmed (read as '0') or left 
unprogrammed (read as '1') to select various device configurations

Mir geht es hier um den Master Clear Enable:
Ist es richtig, dass JEDER PIC im Default-State den "Master Clear Pin" 
aktiv hat, d.h. der Pin hat defaultmäßig eine Reset-Funktion, wenn nicht 
anders im Config-Befehl definiert?

Danke!

Autor: Christian M. (Firma: magnetmotor.ch) (chregu) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
derjaeger schrieb:
> Werden die nicht spezifizierten Config-Bits automatisch auf '1' gesetzt?
> D.h. entspricht die obere Zeile der unteren Zeile?

Ja, schau mal in Dein .INC Deines unbekannten PICs:
_PWRTE_OFF                   EQU     H'3FFF'
_CP_OFF                      EQU     H'3FFF'
_MCLRE_ON                    EQU     H'3FFF'

Mit der UND-Verknüpfung ändert sich da nichts!

Gruss Chregu

Autor: derjaeger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke, das hab ich gesucht.

Man kann sofort sehen, welcher Zustand der Default ist (=0xFFFF, in 
diesem Fall ist MCLRE_ON immer gesetzt, wenn man es nicht ausdrücklich 
durch MCLRE_OFF überschreibt.
#define CP_OFF               0xFFFF
// Do not use
#define CP_50                0xEADF
// 0200h-03FEh code protected
#define CP_75                0xD5BF
// All memory is code protected
#define CP_ALL               0xC09F
// Master Clear Enable
// Master Clear enabled
#define MCLRE_ON             0xFFFF
// Master Clear disabled
#define MCLRE_OFF            0xFF7F

Autor: Volker S. (vloki)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
derjaeger schrieb:
> Danke, das hab ich gesucht.

Einfach immer ALLE spezifizieren!
(Geht schneller als nach "Defaults" zu suchen und ist weniger 
fehleranfällig)

Autor: derjaeger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>>Einfach immer ALLE spezifizieren!

Das Problem ist, der Quellcode ist nicht von mir, sondern von einem 
Vorgänger an dem ich ran muss. Da hat er sich die Muehe wohl nicht 
machen wollen ...

Autor: Christian M. (Firma: magnetmotor.ch) (chregu) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Config-Bits kann man je nach Software auch im Compiler oder 
Brennsoftware einstellen/ändern.
Vielleicht hat Dein Vorgänger ja sowas genutzt?

Gruss Chregu

Autor: Teo D. (teoderix)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Christian M. schrieb:
> Die Config-Bits kann man je nach Software

Windows/PIC Memory views/Configurations Bits

Generieren lasen, Copy&Past, fettig. :)

Autor: Volker S. (vloki)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
derjaeger schrieb:
> Da hat er sich die Muehe wohl nicht
> machen wollen ...

Ja die Mühe (potenziert) haben dann eben die anderen ;-)

Autor: Teo D. (teoderix)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Volker S. schrieb:
> derjaeger schrieb:
>> Da hat er sich die Muehe wohl nicht
>> machen wollen ...
>
> Ja die Mühe (potenziert) haben dann eben die anderen ;-)

Der Vorgänger wird wohl so faul gewesen sein, das Tool zu nutzen. Das 
generiert auch keinen unnötigen Code.

Autor: derjaeger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zum Compilieren wurde eine Batchfile genutzt und der Hi-Tech Compiler 
(picc.exe). Ich konnte in der Batchfile nicht erkennen, dass man dem 
Compiler die Configbits uebergeben konnte ...

>Windows/PIC Memory views/Configurations Bits
>Generieren lasen, Copy&Past, fettig. :)

Hat er leider nicht gemacht. daher auch die unvollstaendigen 
Config-Zeilen

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.

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