eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaAVR32 - jak ruszyc z tym prockiemRe: AVR32 - jak ruszyc z tym prockiem
  • Data: 2009-11-08 07:53:04
    Temat: Re: AVR32 - jak ruszyc z tym prockiem
    Od: SM <b...@k...com.pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]


    MAM! DZIAŁA!

    Dla zainteresowanych podaję przepis na uruchomienie AT32UC3B0256
    bez całego zbędnego "bagażu".

    1. Programem BatchISP zgrać bootloader (potrzebny gdy programujemy
    używając BatchISP poprzez USB - zawsze zadeptuje bootloader nie
    uwzględniając adresów ładowania):

    batchisp -device at32uc3b0256 -hardware usb -operation erase f memory
    flash addrange 0x0 0x01FFF read savebuffer "C:\isp.hex" hex386

    2. Programem Hex2Bin przerobić "isp.hex" na "isp.bin"

    3. Napisać prosty program, np. taki jak poniżej (generowanie
    przebiegu prostokątnego na PA3): Zapisać pod nazwą "main.s".

    .equ GPIO_BASE, 0xFFFF1000
    .equ GPIO_GPERS, 0x04
    .equ GPIO_ODERS, 0x44
    .equ GPIO_OVR, 0x50

    .text

    .global _start

    _start:
    .incbin "isp.bin"

    program_start:

    // init

    mov R0, LO(GPIO_BASE)
    orh R0, HI(GPIO_BASE)
    mov R1, (1 << 3)
    st.w R0[GPIO_GPERS], R1
    mov R1, (1 << 3)
    st.w R0[GPIO_ODERS], R1

    // pętla

    main_loop:

    // zerowanie PA3

    mov R1, (0 << 3)
    st.w R0[GPIO_OVR], R1

    // opóźnienie

    mov R2, 1000
    del1: sub R2, R2, 1
    brne del1

    // ustawienie PA3

    mov R1, (1 << 3)
    st.w R0[GPIO_OVR], R1

    // opóźnienie

    mov R2, 1000
    del2: sub R2, R2, 1
    brne del2

    // powrót do pętli

    rjmp main_loop

    _stop:

    4. Asemblacja poprzez:

    avr32-as.exe -R -march=ucr1 -o main.out main.s

    5. Linkowanie poprzez:

    avr32-ld.exe --oformat ihex -m avr32elf_uc3b0256 -Ttext 0x80000000 -Tbss
    0x00000000 -o main.hex main.out

    6. Ładowanie do procka poprzez:

    batchisp -device at32uc3b0256 -hardware usb -operation erase f memory
    flash blankcheck loadbuffer main.hex program verify start reset 0

    Po załadowaniu program sam się uruchomi. Będzie się także uruchamiał
    po resecie. Aby znów zaprogramować procek należy zewrzeć do masy
    PA13 i zresetować go - wejdzie do bootloadera (programowania ISP
    poprzez USB).

    SM

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: