pic18f4685 portb 4 nicht funktionsfähig

Gast #934648
#define _PIC18xxx
#include <p18f4685.h>
#include <delays.h>
//#include <usart.h>
//#include <adc.h>

void main(void)
{
  ADCON1 = 0x0F;

//        76543210
  TRISB = 0x11001111;
  PORTB = 0;
  LATB = 0;


  while(1)
  {
//         76543210
    LATB = 0b00100000;
    Delay10KTCYx(100);
    LATB = 0b00010000;
    Delay10KTCYx(100);
  }

}

das is der gesamte quelltext

port 5 funktioniert, am 4er wird nichts ausgegeben und ich finde einfach 
keine lösung im netz :|

wobei das kann an der falschen fragestellung liegen, eventuell wisst ihr 
was?
Gast #934661
gute idee, leider kein zusammenhang

tris ist vollkommen schreibbar.

weiterer auszug aus dem datenblatt:

RB4/KBI0/AN9

RB4 OUT 0 DIG LATB<4> data output.

IN 1 TTL PORTB<4> data input. Weak pull-up available only in this mode.

KBI0 IN 1 TTL Interrupt-on-pin change.

AN9 IN 1 ANA A/D input channel 9. Enabled on POR, this analog input 
overrides
the digital input (read as clear – low level).

dennoch danke für die idee, das hatte ich noch gar nicht angesehen :)
Gast #934680
sogar doppelt :)

mit der configuration und dann per ADCON nochmal, da es eben nicht 
wirklich funktioniert hat.

was noch sein könnte, is das die platine nen fehler hat. da seh ich mich 
grad durchs layout, aber das erscheint mir unwahrscheinlich.
Gast #934699
Was mich wundert: PORTB hat intere Pull-Ups, es steht aber nirgends, das 
die Pins Open-Collector sind???  Schalte doch mal die Pull-Ups ein.
Gast #934977
jup, eine seite taster, eine masse, was das betrifft sind die pullups 
wirklich praktisch.

aber das is nicht mein thema ;)

ich brauch 5V also source aus dem pin, sonst wird das nichts mit der led 
:D

ich bin keinen schritt weiter, außer das ich das layout ausschließen 
kann, ebenso die led, beides korrekt ausgeführt.
Persönliche Seite #935172
Eventuell hat es auch was mit den Configurationsbits zu tun.

Es gibt im Configurationsbyte CONFIG3H das Bit1 PBADEN:

bit 1 PBADEN: PORTB A/D Enable bit
(Affects ADCON1 Reset state. ADCON1 controls PORTB<4:0> pin 
configuration.)
1 = PORTB<4:0> pins are configured as analog input channels on Reset
0 = PORTB<4:0> pins are configured as digital I/O on Reset

Mehr fällt mir dazu auch nicht ein.

Sven
#935177
>>>AN9 IN 1 ANA A/D input channel 9. Enabled on POR,

>>Hast du das beachtet (Port auf Digital I/O geschaltet)?

>sogar doppelt :)

>mit der configuration und dann per ADCON nochmal, da es eben nicht
>wirklich funktioniert hat.

Wenn du die Config in MPLAB einstellst, darf dort das Häkchen 
'Configuration bits set in code' nicht gesetzt sein.

>ich bin keinen schritt weiter, außer das ich das layout ausschließen
>kann, ebenso die led, beides korrekt ausgeführt.


>lvp ist off, beschreibe den pic per (original) icd2 ohne lvp.

Viel bleibt ja nicht mehr übrig...
Gast #935270
also ich hab meiner meinung nach auch alles durch

da dies der erste schritt auf die pic18 war, dachte ich, ich hab vl ne 
falle übersehen wo wer anderer einfach drüber lächelt.

blöd nur das die platine bereits bestückt ist, solangs der einzige 
fehler ist, dass die dual-led nur grün leuchtet, statt grün, rot, 
orange, dann belasse ichs daweil mal dabei :)

dennoch herzlichen dank!

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 18 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.