PIC16F1847 Microcontroller-Based Programmable Logic Controller: Hardware and Basic Concepts