## Print-Layout (KiCad)
* Version V1a: [Branch v1a](https://git.htl-mechatronik.at/public/?p=nano-x-base.git;a=blob;f=kicad/dist/v1a/README.md;hb=refs/heads/v1a)
+
+## Test-Software
+
+### Nano-644, Nano-1284 und Arduino Nano
+
+Die fertig übersetzten ELF-Dateien sind zu finden unter:
+* Nano-644: [test_2024-07-23_nano-644.elf](software/nano-644/test_2024-07-23/release/v2024-08-18_1103/test_2024-07-23_nano-644.elf)
+* Nano-1284: [test_2024-07-23_nano-1284p.elf](software/nano-1284/test_2024-07-23/release/v2024-08-18_1118/test_2024-07-23_nano-1284p.elf)
+* Ardunino Nano (5V): [test_2024-07-23_nano-5v.elf](software/arduino-nano-5v/test_2024-07-23/release/v2024-08-18_1113/test_2024-07-23_nano-5v.elf)
+
+Entwicklungsumgebung:
+
+* Tool-Chain: GNU AVR C/C++, simuc (simavr)
+* IDE: VS-Code
+* Betriebssystem: Linux/Debian
+
+Software-Ordner je nach verwendetem µC:
+* Nano-644 (3.3V): [software/nano-644/test_2024-07-23/](software/nano-644/test_2024-07-23/)
+* Arduino Nano (5V): [software/arduino-nano-5v/test_2024-07-23/](software/arduino-nano-5v/test_2024-07-23/)
+* Nano-1284 (3.3V): [software/nano-1284/test_2024-07-23/](software/nano-1284/test_2024-07-23/)
+
+Die Quelltexte sind im Ordner `software/nano-644/test_2024-07-23/src/` zu finden. In den anderen Ordnern ist der Ordner `src` nur ein symbolischer Link zu [software/nano-644/test_2024-07-23/src/](software/nano-644/test_2024-07-23/src/)!
+
+Das Programm kann mit `make flash` auf den jeweiligen Nano übertragen werden. Über die USB-Schnittstelle kann mittels Terminalprogramm (115200/8N1) (`make picocom`) die Verbindung hergestellt werden.
+
+Dort kann mittels Menüfunktion die entsprechende Baugruppe ausgewahlt und getestet werden. Für den Punkt `Modbus` ist der Anschluss eines modbusfähigen Energiezählers *Easton SDM230-Modbus* erforderlich.
+
+```
+====================================
+ ATmega644P / Aug 18 2024 / 11:03:20
+====================================
+
+Available units:
+
+ 0 ... Led
+ 1 ... Switch
+ 2 ... Rgb
+ 3 ... Seg7
+ 4 ... Poti
+ 5 ... Encoder
+ 6 ... R2R
+ 7 ... Motor
+ 8 ... PortExp
+ 9 ... Lcd
+ a ... Uart1
+ b ... Modbus
+ c ... IEEE485
+ d ... I2C-Master
+ e ... I2C-Slave
+ f ... I2C-Sparkfun Env-Combo
+ 10 ... RTC-8563
+ 11 ... CC-1101-Send
+ 12 ... CC-1101-Receive
+
+Select unit:
+```
+
+### Raspberry Pico
+
+Für den Raspberry Pico steht derzeit nur ein kleines bereits übersetztes Programm zur Verfügung.
+
+[software/pico/nano-x-blink/](software/pico/nano-x-blink/)
all: dist/$(NAME).elf dist/$(NAME).s dist/$(NAME).hex sim/$(NAME).elf sim/$(NAME).s info
-dbg:
- @echo --HDR---------------------------------
- @echo $(HDR)
- @echo --SRC---------------------------------
- @echo $(SRC)
- @echo --OBJ---------------------------------
- @echo $(OBJ)
- @echo --OBJ_CPP-----------------------------
- @echo $(OBJ_CPP)
- @echo --OBJ---------------------------------
- @echo $(OBJ)
- @echo ===================================
- @echo
info:
@avr-size --mcu=$(DEVICE) --format=avr dist/$(NAME).elf
sim/$(NAME).elf: .depend $(OBJ_SIM)
$(CC) $(LFLAGS_SIM) -o $@ $(OBJ_SIM)
+# ensure that __DATE__ and __TIME__ macros are up to date
+build/main.o: src/main.cpp $(SRC) $(HDR)
+ @mkdir -p $(dir $@)
+ $(CC) $(CFLAGS) -o $@ $<
build/%.o: src/%.c
@mkdir -p $(dir $@)