BotronikS - Final code for all types of Arduino and PC users: -- HOME -- email: botronik@gmail.com
What you need to install or have installed before on your PC: see HERE

CPA8ain8outASP: Up to 8 measured values from analog inputs (ADC:0-5V=0-1023) and 8 outputs controlled by TEXT commands (from PC, PLC...)

connections (click to enlarge)

XLoader example

Termite test...

Useful accessories:  
 
 
 
 
 
 
CPA8ain8outASP: 8 measured values from analog inputs (ADC:0-5V=0-1023) and 8 outputs controlled by TEXT commands (from PC, PLC...)
Note: Power supply 9-12VDC is required! Measured input DC voltage range: 0-5V, Resistors R1-R8 (100K) are optional (good when there is no input voltage)
Download the HEX codes below, unpack, and upload to the proper Arduino board (Use a free net tool for example XLoader)
1. ATmega328-16MHz (MINI,NANO,UNO...): HexASP-m328 - Trial 2h limit! - For the final version, you need to buy ASP (software password ASP=ASP3) - see here
2. AtMega2560 (Mega(ATMEGA2560)........): HexASP-m2560 - Trial 2h limit! - For the final version, you need to buy ASP (software password ASP=ASP3) - see here
Based on the offered TEXT commands, you can develop your own PC, PLC ... communication code, and applications...

Available ASCII TEXT commands (Default: ID=1 Baud=9600): Test uploaded code using some free serial software such as Termite.TextCommamd format: ID(device identifier) + TextCommand + ENTER
IDAT - attention command (return ID+OK) - example for ID=1: 1AT
IDVx - returns status of input x (x=01-08) - example for ID=1: 1V01 - answer format: IDV01=0-1023 (0=0V 1023=5.0V)
IDVA - returns status of all values - example for ID=A: AVA
IDOxH - set OUTx (x=1-8) at Hi(5V) level - example for ID=1: 1O1H
IDOxL - set OUTx (x=1-8) at Lo(0V) level - example for ID=2: 2O1L

Additional commands (after uploading the code, do next:):
Connect Arduino to PC (if in your hardware use RS485 module connected to D0/D1 - Arduino must be out of hardware)- use Termite):
ID=device identifier BAUD=device Baud rate ASP=ArduinoSofwarePassword - if ASP<>ASP3 = Try version!
ID? - returns ID
ID=x (set new ID x=0-9 or A, B, C, D, E, F, - example: ID=2 or ID=A ... )
BAUD=x (set the new baud rate: supported x=1200,2400.4800,9600,19200,38400,57600 - example: BAUD=19200 )
Note: Be careful when changing BAUD! Remember the new set BAUD value in case of further settings!
ASP? - returns ASP (if ASP<>ASP3 =Try version - if ASP=ASP3=Final version)
ASP=xxx (enter ASP - eg. ASP=1234)
 

Try and Test with BScada:
Recommended BScada: BScadaID_8val8out