Ik heb dit gedaan - heb de 168 uit een Arduino gehaald, geprogrammeerd met de USBtinyISP. Je hebt een soort doelbord nodig voor de USBtiny ISP. Ik gebruikte een van deze van Evil Mad Scientist Labs, samen met een ZIF-socket van Sparkfun. Het daadwerkelijke circuit dat nodig is om ze te programmeren, is eenvoudig genoeg om het zonder veel moeite op een protoboard te bouwen. EMSL heeft ook een handig artikel over wat dat circuit precies moet zijn, zodat je het zelf kunt maken.
Om een doelbord te laten werken, moet het worden opgezet met ten minste een benadering van hoe de chip is al gefuseerd. Dat betekent dat je de juiste hoeveelheid stroom hebt (als het brownout-detectiecircuit is ingeschakeld) en een oscillator als de chip is ingesteld om een externe te gebruiken (AFAIK de chip negeert een externe oscillator als hij niet is gefuseerd om hem te gebruiken). U moet eerst de zekeringen instellen om de interne oscillator te gebruiken voordat u deze uit de Arduino verwijdert, of u moet een oscillator op uw doelbord plaatsen. Ik denk niet dat de Arduino wordt geleverd met brownout-detectie ingeschakeld, dus je bent waarschijnlijk veilig op dat punt. Ik raad aan om gewoon de jumper op de USBtiny te gebruiken om het doelbord van stroom te voorzien, in plaats van je druk te maken over een externe voeding.
Ik kan het Arduino-bord niet als het programmeerdoel gebruiken, omdat het heeft een normale socket in plaats van een ZIF-socket. Ik merk dat ik veel minder kans heb om de pinnen op mijn MCU te vermorzelen wanneer ik een ZIF-socket gebruik. In en uit een breadboard gaan is al erg genoeg. Sparkfun lijkt de goedkoopste prijzen te hebben op ZIF-sockets, als je besluit die route te gaan.
Omdat je al een ISP-programmeur hebt, kun je een beetje geld besparen op je 328-chip en er een kopen zonder de Arduino bootloader. Gebruik gewoon de Arduino-software om de juiste bootloader erop te branden zodra je deze hebt geïnstalleerd.