The diagram above shows a 4 bit thumbwheel switch connected to PortC of an PIC18 microcontroller. The wheel is used to dial up a number 0 – 9 representing an angle 00 – 90 degrees which is presented to the inputs as a 4 bit binary value. You are required to write a program and subroutines/functions to initialise and operate this interface.
(i) Write a C subroutine to initialise PORTC as needed to interface with the devices.
(ii) Write a C function that checks if the push button is pressed or not, returning 1 if it is pressed or 0 if not pressed. This routine is not to wait for the press.
(iii) Write a C function that reads the thumb wheel switch, returning the angle. (Don’t forget there are other pins used on this port)
(iv) Write a C subroutine that sets the LED on or off given a value of 1 or 0. (Don’t forget there are other pins used on this port)
(v) Write a C main program that clears the LED, waits for the button to be pressed, sets the LED on, reads the angle set by the thumb wheel switch and saves that value in a variable called angle.