Przez USB wygrywa się z użyciem znajdującego się w NANO bootloadera. Może płytka to chiński klon ze starym bootloaderem, aktualnie nano ma bootloader ustawiony na 115200 baud. Stary miał 57000baud. W opcjach jest możliwość wybrania "OLD BOOTLOADER".
Jak masz programator to możesz też wypalić aktualny bootloader.
Pisałeś, że umiesz wgrywać z USBasp, jak raz wgrasz program programatorem to kasujesz bootloader, trzeba potem ponownie wybrać opcję "wypal boodloader", po wgraniu schować głęboko programator i używać bootloadera.
A co do programowania to opcji jest kilka:
1. Znajdujesz gotowca, tak jak jest wgrywasz do Arduino i używasz, z całym dobrodziejstwem...
2. Uczysz się programować, kursów jest na pęczki, np. tu:
https://forbot.pl/blog//kurs-arduino-pod...rsu-id5290
3. Chodzisz po forach i piszesz by ktoś zrobił za friko, bo nie chce Ci się uczyć.
4. Piszesz specyfikację wymagań do programu i w dziale zlecenia stawiasz temat ile na to możesz przeznaczyć, może się ktoś skusi.
Nie wiem jakie programy pisałeś w Bascomie, ale ani w basicu ani w C/C++ nie robi się żadnych skoków. W głównej pętli programu umieszcza się funkcje (w basicu również procedury, w C to jest funkcja bez argumentów, "wojd"), które się wykonuje lub nie. W szczególności jakiś zapis kalibracyjny, który się wykona jeśli został wciśnięty konkretny przycisk.
Jeśli jednak piszesz jednostkowy program, to nie wiem czy jakaś kalibracja dostępna dla użytkownika jest w ogóle potrzebna, ustalasz sobie to przecież raz dla danego zestawu sprzętu, no chyba że on się tak ciągle rozjeżdża? Nawet jeśli kiedyś coś się zmieni to sobie ten program wgrasz na nowo z nowym zestawem danych.