Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Pytanko i problem z Atmega 8535

vcd_a 11 Sie 2006 21:41 1362 7
  • #1 11 Sie 2006 21:41
    vcd_a
    Poziom 18  

    Witam, właśnie kupiłem sobie Atmege 8535 i chciałbym się nia trochę pobawić, zrobiłem już programator ISP i Bascom wykrywa uC. Jednak mam kilka pytań co do samego odpalenia uC czy zasilanie musze podawać tylko do wejścia VCC czy też do AVCC, tak samo z masą czy tylko do GND czy też do AGND. Chciałem jeszcze napisać prosty programik na sam początek z diodką, że jak wcisne przycisk to się zapali diodka, napisałęm taki program:

    Code:

    Config Portc = &B11111111
    Portc = &11110111

    Config Portd = &B00000000
    Portd = &B10111111



    Do
    If Pind.6 = 1 Then
    Waitms 50
    Pinc.3 = 1
    End If

    Loop
    End

    Jednak nie wiem czemu, ale Bascom przy kompilacji wyrzuca kupe błędów, czy możecie mi powiedzieć gdzie są te błędy, a i jeszcze czy do 8535 potrzebuje zewnętrzny kwarc?, pozdrawiam Krzysiek

    0 7
  • Pomocny post
    #2 11 Sie 2006 21:52
    ducker1
    Poziom 24  

    napisz

    Code:

    config pind.1 = input
    config pind.0 = input



    do
      debounce pind.0,0,klawisz1,sub
      debounce pind.1,0,klawisz2,sub
    loop



    klawisz1:
      jakas akcja1            /np set pin.c=1/
    return

    klawisz2:
      jakas akcja2           /np set pin.c=0/
    return




    A zasilanie i mase musisz podpiąć też do tych 2 pinów co pisałeś.

    Tylko podłącz tak jak jest w programia albo zmień porty

    Aha mogą być błędy bo pisałem z pamięci

    To jest żle, i niżej chyba też



    Config Portc = &B11111111
    Portc = &11110111

    Config Portd = &B00000000
    Portd = &B10111111


    Do
    If Pind.6 = 1 Then
    Waitms 50
    Pinc.3 = 1
    End If

    Loop
    End

    0
  • Pomocny post
    #3 12 Sie 2006 00:19
    alnus
    Poziom 28  

    na początek nie musisz mieć kwarcu, procek wystartuje na wewnętrznym zegarze 1MHz. potem możesz to przełączyć fusebitami na wewnętrzny 8MHz lub zewnętrzny kwarc ( o ile go podepniesz ) . ale uważaj, bo łatwo się pomylić i przełączyć np. na zewnętrzny sygnał zegarowy i później już bez zewnętrznego generatora nie ruszy. co do błędów, to podwójne kliknięcie spowoduje podświetlenie linii w programie, gdzie je popełniłeś ( oczywiście nie wszystkie się podświetlą, bo czasem czegoś nie dopiszesz i nie ma się co podświetlić)

    0
  • #4 13 Sie 2006 00:36
    vcd_a
    Poziom 18  

    Witam ponownie, programik już mam, niestety dioda dalej nie świeci, wydaję coś mi się, że Bascom wogóle nie programuje uC, bo nie pokazuje "ramki z paskiem postepu" podczas zapisywanie do flasha, a przy włączaniu pokazuje komunikat: Selected chip and target do not match ATmega 8535 <>AT90S8535., nie wiecie o co może chodzić pozdrawiam Krzysiek

    0
  • Pomocny post
    #5 13 Sie 2006 01:14
    Granat :)
    Poziom 34  

    Witam,

    Przedewszystkim na początku umieć informację, która wskaże kompilatorowi dla jakiego procesora ma utworzyć kod:

    Code:

    $regfile = "m8535.dat"


    i jak chcesz zapalić diodę to nie piszesz set pinc.3 (rejestr PIN służy do oczytu stanu pinu jeśli ten jest ustawiony jako wejście) tylko set portc.3.

    Piny AVCC i AGND służą do zasilania wewnętrznego przetwornika ADC, więc jeśli z niego nie korzystasz nie musisz ich podłączać.

    Pozdrawiam

    0
  • #6 13 Sie 2006 01:39
    vcd_a
    Poziom 18  

    Problem rozwiązałem, wywaliłem dyrektywe z początku i zamiast w okienku programowania klikać ikonkę Auto Program, kliknąłem w Chip > Auto Program i zaczął programować, nie wiem w czym leżał błąd, ale działa, wielkie dzięki za odpowiedzi, pozdrawiam Krzysiek

    Dzięki jeszcze raz, pozd

    0
  • Pomocny post
    #7 13 Sie 2006 13:02
    ducker1
    Poziom 24  

    Granat :) napisał:
    Witam,

    Przedewszystkim na początku umieć informację, która wskaże kompilatorowi dla jakiego procesora ma utworzyć kod:

    Code:

    $regfile = "m8535.dat"




    Nie jest to konieczne jeśli wybierzesz ręcznie w ustawieniach Bascoma jaki to procek a vcd_a tak właśnie zrobił

    0