pic18f4685 portb 4 nicht funktionsfähig

Gast #934648
Lesenswert?
• ▲
▼
#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
Lesenswert?
• ▲
▼
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
Lesenswert?
• ▲
▼
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 #934977
Lesenswert?
• ▲
▼
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
Lesenswert?
• ▲
▼
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
Lesenswert?
• ▲
▼
>>>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
Lesenswert?
• ▲
▼
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

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.