PIC 18F2455: RB5 geht nicht?

Gast #1461830
Lesenswert?
• ▲
▼
Ich spiel grad ein wenig mit oben genannten PIC rum. Aber scheinbar hab 
ich da was übersehen.
Ich beschäftige mich derzeit mit dem ADC.

Folgendes hab ich dazu geschrieben:
1
//Config in MPLAB einstellen, Programm geht von einem 20 MHz-Quarz aus
2

3
#pragma chip PIC18F2455
4

5
#pragma bit Channel @ ADCON0.2  //AD-Wandler   0: AN0
6
                //        1: AN1
7
#pragma bit ADC_ON @ ADCON0.0  //ADC  Wandler ein: 1
8
                //    Wandler aus: 0
9
#pragma bit ADC_GO @ ADCON0.1  //ADC  Wandlung starten:  1
10
                //    Wandlung fertig:  0
11

12
void main(void)
13
{
14
//Wandler Voreinstellungen
15
  ADCON0 = 0b00000000;    //Preset:AN0, Wandler aus, Wandlung fertig
16
  ADCON1 = 0b00001110;    //AN0 aktiv, alle anderen sind digitale IOs
17
  ADCON2 = 0b00010101;    //TAD-Einstellung für 20 MHz, vgl. Datenblatt
18
//Comperator aus
19
  CMCON = 7;
20
//Ports Konfigurieren
21
  LATA = 0;
22
  TRISA = 0b00000101;      //RA0,RA2: Inputs, other Outputs
23
  LATB = 0;
24
  TRISB = 0b00000000;      //Test ADC-Anzeige
25
  LATC = 0;
26
  TRISC = 0b00000000;      //
27

28
  ADC_ON = 1;
29
  
30
  while(PORTA.2 == 0)
31
  {
32
    Channel = 0;
33
    ADC_GO = 1;
34
    while(ADC_GO);
35
    LATB = ADRESH;
36
  }
37
    
38
}

An RA0 ist der Schleifer eines Potis, welches zwischen Vdd und Vss 
hängt, an RA2 ist ein Widerstand gegen Vss und über einen Schalter kann 
man Vdd auf RA2 schalten. An Port B ist von jedem Pin über einen 
Widerstand zu Vss eine Diode angeschlossen.

Solange also an Port A Pin 2 Masse liegt soll der PIC lustig die 
Spannung vom Schleifer digitalisieren und das Highbyte an Port B 
ausgeben.
Problem ist, dass RB5 nix macht, das bleibt unabhägig von der 
Schleiferposition immer auf Low (wodurch dann auch die LED dunkel 
bleibt). Ich hab das Datenblatt jetzt schon ein paar mal durchgesehen 
aber ich bin scheinbar blind oder um diese Uhrzeit nicht mehr so 
auffassungsfähig wie ich sein sollte. Was muss ich noch einstellen, dass 
Port B Pin 5 auch high werden darf/kann?

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.