Design and Implementation of Electronic Board Advertisement Based on Microcontroller PIC16F887and Multi Character Button Keypad

Recently LED display panels are widely used throughout the world in all situations to create images for visual displays in a variety of applications including communication and visual display devices. LED array display board is a popular instrument for commercial usage. Many banks, shops and cinemas are willing to install one piece of it because of its versatility. LED array display board can be very bright and eye-catching. A display sign used for advertising or for displaying direction or other information to motorists has an important feature in common. This research provides an efficient and scalable approach to LED Dot Matrix displays. The system is comprised of a tricolor dot matrix display panel with an interface circuit to a computer. It also comprises an executive program that runs on the computer for the display control of characters, decorative pattern or messages. The display board shows any character entered from the host computer which is interfaced using USB to a microcontroller that initializes the led driver. The advantage of this research is that size of the display board can be increased row wise and column wise without making any changes in the circuitry since display board is the repetition of a small independent module.

Indeed, this yields a high degree of control over the microcontrollers and fast and compact code for simple applications [1].
Microcontroller, produce by Microchip Company, called Peripheral Interface Controllers, are increasingly popular for developing inexpensive and reliable mechatronic systems. Many microcontroller projects make use of a common set of hardware features, such as serial communication, A/D conversion and PWM output, which are provided by PIC products [2]. However, the authors have found in their research that tools to easily develop high-level applications to make use of these lacking features.
Visual impact is the most effective mode of influencing human minds which is the main aim of advertisements. A display device serves this purpose by presentation of information for visual or tactile reception, acquired, stored, or transmitted in various forms. The display devices used to display information on machines, clocks, railway departure indicators and many other devices require a simple display of limited resolution. The display consists of a matrix of lights or mechanical indicators arranged in a rectangular configuration (other shapes are also possible, although not common) such that by switching on or off selected lights, text or graphics can be displayed. Various modifications have been made in the display board. Now LED display panels are widely used throughout the world in all situations to create images for visual displays in a variety of applications including communication and visual display devices. LED array display board is a popular instrument for commercial usage. Many banks, shops and cinemas are willing to install one piece of it because of its versatility. LED array display board can be very bright and eye-catching. A display sign used for advertising or for showing direction or other information to motorists has an important feature in common. They should be eye-catching and their information should be easy to absorb. In advertising, a signboard made of an LED display generally standing at a conspicuous location, such as a bustling road, is widely used. The LED display comprises a plurality of LEDs controlled by special hardware and software to perform moving images on a screen thereof to attract the attention of passersby. Microcontroller is embedded in many control, monitoring, and processing systems [3].The PIC18F887 in this research microcontroller is manufactured by Microchip [4]. Currently it is one of the most popular microcontrollers, used in many applications [5] [6]. It is a self-contained computer-on-a-chip that integrates a microprocessor, input and output ports, memory for program and data storage, an internal clock, and one or more peripheral devices such as timers, counters, Analog to-Digital Converters (ADC), communication facilities, watchdog circuits and special hardware features [7].This PIC is chosen for reasons of speed, digital ports ability, memory storage, and number of I/O (input or output) ports.

PIC MICROCONTROLLER UNIT (MCU)
PIC microcontroller is a device that has internal memory, Random Access Memory (RAM) and Read Only Memory (ROM), Central Processing Unit (CPU) and Input /Output (IO) ports. All of these parts are built on a single chip named microcontroller. PIC basically has a few Kb of ROM, 256 bytes of RAM, 256 bytes of Electrically Erasable Programmable Read Only Memory (EEPROM) and several analogue and digital I/O lines [8] [9]. The layout of PIC microcontroller unit is shown in Figure (1). Microcontroller also has many types and different total number of pins such as 28, 40 and 44 pins depend to the function of the microcontroller. The important thing is microcontroller must have input and output port. PIC 16F887A has five ports; Port A, B, C, D and E, therefore it can support many input and output ports and it is electronic board, shown in Figure(2), is connected to the computer through USB port . It also has typical 368 bytes of data memory, and operating frequency of 20 MHz. Digital input data from keypad will be connected to Port C and the display led panel to Port B and Port A. The programming must be done to ensure that the keypad input are properly controlled on the display.

DOT LED MATRIX
These are 8X8 dot matrix displays with large emitting area (o.2" diameter) LED sources as shown in Figure (3). The GMX2X88C series are single color displays with gray face and white dot color. The X in GMX denotes row anode or row cathode.
LEDs are ideal for use in applications that are subject to frequent on-off cycling, unlike fluorescent lamps that burn out more quickly when cycled frequently, or HID lamps that require a long time before restarting.

KEYPAD
Keypad consists of sixteen buttons and about 255 English and Arabic characters and symbols. Each button has group of characters and symbols when the button press once it will represent only one character ,whereas pressing the button twice led to another character (like the way of writing messages in mobile). The characters and symbols are distributed on the keypad at the format shown in Figure (

PRINCIPLE OF OPERATION
The keypad represent a matrix of four rows and four columns, therefore the last 4 bits of port C (pc4-pc7) as shown in Figure (5), which it's systematic diagram shown in Figure (6), is connected to the columns to reset them to zero , thereby any button will be pressed will make the row of that button zero which will be input through (pc0-pc3) and examined by the PIC continuously to recognize which button pressed ,how many times, and the period of successive press of the same button. The PIC send through port A (2 bit) representing one of four of the display's column to the 2 to 4 decoder to enable the 4 to 16 decoder which receive its input through pa0-pa3 to light the suitable column with data through port B. The product is shown in Figure ( 7 ) which required 50x20 Dot led matrix(GMX2X88C) for screen size of 1.2mx3m because each GMX2X88C is 0.06mx0.06msquare area.

PROGRAMMING OF PIC MCU
Programming of PIC is also important factor to the microcontroller functions because microcontroller can do anything that programmed into the data memory and registers [8].
Basically, a register is a place inside the PIC that can be written to, read from or both. It has two banks -Bank 0 and Bank 1. Bank 1 is used to control the actual operation of the PIC, to tell the PIC which bits of Port A are input and which are output. Bank 0 is used to manipulate the data. For example, to set one bit on Port A to high, the particular bit or pin on Port A is set as output in Bank 1. Then, a logic 1 (bit 1) is sent to that pin in Bank 0. The most common used registers in Bank 1 are STATUS, TRISA, and TRISB. In Bank 0, TRISA allows to select which pins on Port A are output and which are input while TRISB allows selecting which pins on Port B are output and which are input. In this research the STATUS register is located at The programming of microcontroller has many aspects and functions so it is selected to be main controller of the circuit because its wide functionality can produce good input and output respectively. The display board shows any character entered from the keypad in Figure (8). The flowchart explain the entering characters, shifting, displaying and the saving. Read the key pad; Kp =the symbol form of the character we need; Save this character in the array of specified one; Save this character in the memory of specified one; After each char. We press enter (15) and finally press move (16); The moving is as follows we put the array in another one put shifted by k-position and this k increase by one in each stage so finally we can see the moving paragraph . // bring appropriate value to PORTD PORTA = shifter; // turn on appropriate 7seg. display for(g=0;g<60;g++) number44[g]=0; Keypad_Init(&PORTc);