logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[Atmega162][bascom] Config porta = input nie działa :(

:) 26 Lis 2009 22:59 1391 1
REKLAMA
  • #1 7313523
    :)
    Poziom 15  
    Witam, kiedyś hobbystycznie pisałem jakieś programiki na 8051 w bascomie i nawet coś mi wychodziło, z nudów chciałem pobawić się AVRkami jako, że są łatwiejsze w programowaniu. Zacząłem więc działać, fuse bity mam ustawione w ten sposób:

    Zaprogramowane bity: CKSEL0, CKSEL2, CKSEL3, SUT0, CKDIV8, BOOTSZ0, BOOTSZ1, SPIEN, JTAGEN

    Korzystam z wbudowanego kwarcu ustawionego (tak mi się wydaje) na 1MHz.

    W pierwszym podejściu napisałem prosty testowy program z migającą diodą - program działał prawidłowo

    Następnie chciałem pobawić się portem wejściowym i napisałem coś takiego:

    $regfile = "m162def.dat"
    $crystal = 1000000
    Config Portb = Output
    Config Porta = Input
    
    
    Do
    Portb = Porta
    Loop


    Niestety program nie działa, na porcie B na wszystkich pinach jest stan 0 nie ważne co bym nie podawał na piny portu A. Nie mogę sobie z tym poradzić, czy ktoś może zwrócić uwagę co zchrzaniłem z programie bądź konfiguracji fuse bitów ??

    Z góry dziękuję za pomoc :)
  • REKLAMA
  • #2 7313577
    dawid512
    Poziom 32  
    Temat powinien polecieć do kosza ale... :D

    Na początek musisz wiedzieć że do odczytu danych z końcówek portu służy rejestr PINx czyli w twoim przypadku PINA. Po za tym musisz uruchomić wew. rezystory podciągające (pull-up) czyli piszesz np. PORTA = 255. Na koniec powinno to wyglądać tak : . Po więcej informacji sięgaj do helpa tam wszytsko jest jasno opisane :).
REKLAMA