32-bitowy procesor w maXimatorze: czy nadal wolisz Arduino?
Utworzą się dwa projekty, NIOS_LED jest właściwym projektem w którym piszemy kod, NIOS_LED_bsp jest projektem powiązanym z NIOS_LED i służy tylko do generowania bibliotek i makr dla danej konfiguracji wyklikanej w Qsys-ie. Edytujemy plik hello_world_small.c i wstawiamy poniższy kod:
#include "sys/alt_irq.h"
#include "system.h"
#include "altera_avalon_pio_regs.h"
#include "altera_avalon_timer_regs.h"
volatile int counter = 0;
static void irr(){
counter++;
IOWR_ALTERA_AVALON_PIO_DATA(PIO_0_BASE, counter );
IOWR_ALTERA_AVALON_TIMER_STATUS(TIMER_0_BASE, 0);
}
int main()
{
/* TIMER */
IOWR_ALTERA_AVALON_TIMER_CONTROL(TIMER_0_BASE,
ALTERA_AVALON_TIMER_CONTROL_START_MSK |
ALTERA_AVALON_TIMER_CONTROL_CONT_MSK |
ALTERA_AVALON_TIMER_CONTROL_ITO_MSK
);
/* IRQ */
alt_ic_isr_register(TIMER_0_IRQ_INTERRUPT_CONTROLLER_ID,TIMER_0_IRQ, irr, NULL, 0);
alt_ic_irq_enable(0,0);
/*loop*/
while (1){}
return 0;
}
Kompilujemy napisany program, wybierając z menu Project->Build All, następnie klikamy prawym przyciskiem myszy na projekcie NIOS_LED i wybieramy Make Targets->Build…
Wybieramy mem_init_generate i klikamy Build. Po tej operacji przechodzimy do programu Quartus.
Generowanie wsadu dla procesora
W Quartusie Prime trzeba dodać projekt wygenerowany w Eclipse, w tym celu z menu wybieramy Project->Add/ Remove Files in Project… Przy File name klikamy […] i wybieramy plik: software/NIOS_LED/mem_init/meminit.qip, klikając następnie kolejno Add, Apply i OK.
Trzeba jeszcze zmienić domyślną konfigurację pamięci Flash układu FPGA. W tym celu w Quartusie wybieramy opcję Assigments->Device… W wyświetlonym oknie klikamy przycisk Device and Pin Options.. .
Następnie w menu Category wybieramy Configuration i zmieniamy Configuration Mode na Single Uncompressed Image with Memory Initialization (256Kbits UFM). Po tych zmianach klikamy OK, co umożliwia skompilowanie całego projektu wraz z programem dla NIOS.
Programowanie FPGA
Po opisanych dotychczas zbiegach zostało nam zaprogramować lub skonfigurować FPGA w zestawie amXimator do wykonania zadania, co wymaga wykonania następujących, dość oczywistych kroków:
- Dołączamy płytkę zestawu maXimator do zasilania.
- Dołączamy do złącza JTAG programator wchodzący w skład zestawu.
- Z menu pakietu Quartus wybieramy Tools Programmer, następnie w okienku Programmer naciskamy Add File… i wchodzimy do katalogu output_ files, w którym wybieramy plik NIOS_LED.sof (konfigurujący FPGA poprzez pamięć RAM, zapis konfiguracji nie jest trwały). Alternatywnie, jeżeli chcemy trwale zapisać konfigurację FPGA, należy wybrać plik NIOS_LED.sof, który zostanie zapisany w pamięci konfiguracji Flash układu FPGA.
Po naciśnięciu przycisku Start układ FPGA MAX10 zostanie skonfigurowany, czego efekt będzie widać na pokładowych LED zestawu maXimator.
Mam nadzieję, że zachęciłem programistów do sięgnięcia po układy FPGA, w razie problemów, pytań lub propozycji tematów związanych z w/w układami zapraszam na forum http://microgeek.eu/.





Od wzmacniacza nieodwracającego do integratora i wzmacniacza ładunkowego, czyli historia z zaskakującą pointą jak w dobrym kryminale
Green czy smart? Jak decyzje ESG zaczynają optymalizować procesy produkcyjne
Firma Semicon ma w ofercie narzędzia do obróbki przewodów 

![https://www.youtube.com/watch?v=BgxJVTwYJ-s Zapraszamy do obejrzenia filmu i wysłuchania krótkich wypowiedzi prelegentów Hardware Forum 2026 i organizatorów majowej konferencji dla inżynierów z branży elektronicznej: Konrad Bruliński z Lemontech, prof. Krzysztof Kulpa z Politechniki Warszawskiej, Zbigniew Huber z FLC, Ewa Załupska z firmy KROK, Jerzy Kozieł z MPTECH, Grzegorz Potyralski z VIGO Photonics, dr Krzysztof Czuba z Politechniki Warszawskiej, Anna Beata Kalisz Hedegaard z Quantum Security Defence, Adrian Cichosz z Elhurt Dystrybucja Anna Kamińska z Creotech Quantum, oraz Łukasz Jaeszke i Adam Jaeszke z TEK.day [materiał redakcyjny]](https://mikrokontroler.pl/wp-content/uploads/2026/05/tytulowe-film-1.png)



