AtmelStudio - přidání nové knihovny

Zdravím všechny
s přáním všeho dobrého (když už ne toho nejlepšího), se na Vás obracím s následující otázkou:
Jako začínající uživatel Arduina, jsem se po vyzkoušení “originálního” IDE, začal rozhlížet po nějakém praktičtějším nástroji (myslel jsem na možnost napovídání při psaní kódu, možnost ladění bez připojeného HW, snad i možnost ladit s připojeným HW).
Zalíbilo se mi prostředí AtmelStudia7. Mám za sebou první pokusy s blikáním, dokonce se mi podařilo nastavit AtmelStudio pro odesílání kódu do Arduina.
Teď jsem se aale zasekl už několik dní nad potřebou přidání nové knihovny do projektu AS7.

Nemůžete mi, prosím, někdo se zkušenostmi z prostředí AS7 (Atmel Studio 7.0.1931) pomoci se správným postupem přidání nové knihovny do projektu Adruino ?
Mám za sebou nepočítaně pokusů, končících většinou hláškou "undefined reference to Timer1

Pozn.
projekt vytvořen za pomocí New Project/Create project from Arduino sketch.

Jestli jsem to správně pochopil, tak ti jde o přidání již existující knihovny do projektu.
V tom případě:
1.) zkopíruj knihovnu (soubor) do adresáře projektu.
2.) Pravým tlačítkem myši klikneš na název projektu v záložce Solution Explorer. Rozbalí se kontextové menu ve kterém vybereš “Add -> Existing Item”. (klávesová zkratka Shift+Alt+A)
3.) No a v nově vyskočeném okně vybereš knihovnu (-y), které chceš přidat.

Obdobným způsobem můžeš postupovat i v případě úplně nové knihovny,
akorát zvolíž “Add -> New Item”.

Díky za reakci.
Jj, jde mi o přidání existující knihovny.

@Divous
zkouším tvůj postup, ale zatím bez úspěchu. Knihovna se mi objeví v Solution exploreru pod složkou Solution items, překlad však končí hláškou “Soubor nebo adresář nenalezen”.
Zkouším dál, nějak to přece musí jít.

Hoď sem prinscreen včetně hlášky.

Trochu cyklím s přidáním souboru k odpovědi.

Stav po přidání knihovny “TimerOne.h”. V Solution Exploreru se objeví, ale po překladu stále stejná hláška, viz okno dole.
TimerOne.jpg

Aha, myslím, že už to vidím.
Knihovnu jsi vložil do Solutions items, ale ne do projektu.
Z toho Solution Items jej zruš a pak klikni pravým tlačítkem myši na název projektu “Casovac”
a pokračuj jako před tím.

Tak nový pokus - vloženo pravou myší “Add” do “Casovac”.
Výsledek stejný.
Stačí vkládat pouze jeden soubor ? (“TimerOne.h”). V knihovně mám ještě “TimerOne.cpp”)
TimerOne1.jpg

Musíš i ten s příponou .cpp

Zkusil jsem - beze změny.

Jo…ještě jsem si všiml, že máš knihovnu vkládanou pomocí <>.
Použij pro ni “”.

Tak to byl zásah.
Dal jsem include s “” a konečně překlad bez chyb.
Zajímavé je, že na řádku 2 mám include s <> a tam to nevadí. Možná proto, že jsem převzal project z Arduino IDE.

V každém případě obrovské díky, už jsem to chtěl vzdát.

Není zač.

“Georg:Zajímavé je, že na řádku 2 mám include s <> a tam to nevadí. Možná proto, že jsem převzal project z Arduino IDE.”

Tie dva druhy zátvoriek majú úplne odlišný význam.
Zátvorky < > odkazujú na hľadanie v príslušnom podadresári, kde je nainšatlované AVRStudio.

Napríklad direktíva
#include <util/atomic.h>

spôsobí, že konkrétne v mojom prípade systém tento header súbor hľadá na mieste:

c:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\util\atomic.h

ale direktíva

#include “tng_runtime_v03.h”

načíta súbor ‘tng_runtime_v03.h’, ktorý sa nachádza priamo v adresári projektu.

Je to tak preto, aby sa štandartné headre nemuseli stále kopírovať do adresárov projektov a zároveň aby boli pre všetky projekty rovnaké.

Ten druhý dôvod však vie spraviť pekný prúser, ak sa inštaluje nová verzia AVR Studia s gcc, ktorá obsahuje zmenou “vylepšené” kľúčové *.h súbory.

Staré projekty nemusia ísť vôbec preložiť pre hlásenie chýb typu “daná premenná nie je definovaná”, lebo v novej verzii AVRStudia, respektíve v jeho jednom kľúčovom hlavičkovom súbore niekoho “rozumne” napadlo danú premennú oproti predchádzajúcej verzii premenovať.

Dosť som si toho užil pri prechode medzai AVR studiom 3,5 a AVRStudiom 4.x.

Je dobré na to pamätať pri prechode na nové verzie sw a tie staré odkladať, aby sa dalo miesto, kde bola spravená zmena ľahšie identifikovať.