Problem mit CS erzeugung bei PIC18f4320

Gast #860514
Lesenswert?
• ▲
▼
Hi,
nachdem ich nun das Problem mit MPLAB gelöst habe, habe ich schon wieder 
ein anderes Problem.
Ich möchte ein Chip-Select Signal erzeugen und dieses zunächst auf eine 
konstante 1 setzten.
In der Simulation funktioniert das alles bestens, nur bei der 
Echtzeitmessung am PICDEM2 Board von Microchip messe ich mit dem 
Oszillographen lediglich „einen“ Peak, statt einer konstanten 1.
Die Frage ist nun, warum der PIC mein CS nicht dauerhaft auf 1 setzt, 
sondern wieder zurück auf 0?

Hier der aktuelle Code:
1
#include <p18f4320.h>
2
#include <stdio.h>
3

4
#define ad_cs LATEbits.LATE0
5

6
#pragma code
7
void main (void)
8
{
9
  ADCON0=0x00;    //Inchip A/D wandler ausgeschalten mit Bit0=0
10
  ADCON1=0x3F;    //3 = Verwendung von Referenzspannung
11
            //F = Alle Portpins auf Digital I/O, 
12
  
13
  TRISE = 0x02;  //Port E Pin 1 = Eingang, rest Ausgang
14
  
15
  PORTE = 0x00;
16
  ad_cs = 1;
17

18
  while (1){
19
    
20
  }
21
}
Gast #860545
Lesenswert?
• ▲
▼
Wie Dir bereits bei www.fernando-heitor.de geantwortet wurde, sollte auf 
PORTE nur lesend zugegriffen werden. Zum Setzen der Portpegel den LATE 
verwenden.
Lass dieses PORTE = 0x00; einfach mal weg.

Da Du den A/D abgeschaltet hast, kann ich in der Software auch keine 
weiteren Fehlerquellen ausmachen. Wenn es dann immer noch nicht läuft 
ist Deine Hardware womöglich buggy.
Gast #860549
Lesenswert?
• ▲
▼
Oh und nochwas:

Womöglich optimiert der Compiler die leere while-Schleife weg, somit 
würde der Controller direkt nach dem Setzen von PIN_E0 in den Sleepmodus 
gehen. Dies könnte ebenfalls den kurzen "Peak" erklären. Schau Dir mal 
das Assemblerlisting an!

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.