How to use Arduino UNO R3 based software program in Stand-alone mode

I have worked with Arduino UNO R3 board and developed a project and it is working as per need.

Arduino development environment used ver 1.6.12

Now I wish to develop a stand alone mode i.e. as a Product with PCB, AtMega 328 Micro-controller and other required inputs/ outputs.

I understand that Arduino UNO R3 board is communicating with USB for programming etc. But I want to communicate with SCI or SPI communication (with out USB) and wish to reuse the developed software program with minor changes as per need.

Can you please suggest/ guide me "How can I use the software program developed for Arduino R3 board for stand alone Atmega 328 device (with our USB communication).

Please find the attached snapshot of the software program in the attached zip file

Your program/sketch is compiled prior to upload into the Arduino. The compiler creates .HEX image which can be used to program ATmega directly via ISP but programmer (additional HW) is needed for ISP programming. You can use Arduino as ISP or buy programmer - the cheapest one and pretty known is the USBasp.

Just note that the MCU must be exactly same type as the HEX was created for. The UNO R3 has ATmega328P and if you are writing in your post about ATmega328, I’m supposing you meant ATmega328P. There is also ATmega328 and it differs in signature.

I made a standalone "mini Arduino" with ATMEGA328P and I have forseen a connector to plug a USB to serial converter in it. I plug it in only when I need to load a new(or updated) program.


Make sure you install a bootloader on your chip so the FTDI will talk to the PC for downloading. I bootload all my 328P chips as Uno, then I can select Uno as the board type when downloading a sketch.
Uno requires external resonator, or crystal and 22 pF caps.