I'm new to Arduino and microcontrollers in general.
I'm building a MIDI control board, and I need to implement a lot of switches.
Before I start using multiplexers/shift registers, I wanted to try setting up a single switch with the Arduino.
I used a pull-up resistor and connected a switch to one of the digital pins, but the serial print showed that the first 5 were stuck in HIGH state. I reset the board, set them to Input, etc., but they still register HIGH regardless of what I do.
I used a pull-up resistor and connected a switch to one of the digital pins, but the serial print showed that the first 5 were stuck in HIGH state
That's what a pull-up resistor is supposed to do. When you want to switch the pin, you connect it to ground. The logic is reversed (HIGH = OPEN; LOW = CLOSED).
What's strange is that it works fine for pins 6-12. Pins 1-5 and 13 all read HIGH regardless if anything's hooked up or not. That's what leads me to believe something is wrong.
Pins 1-5 and 13 all read HIGH regardless if anything's hooked up or not.
That sounds like you are not setting the pins to input correctly.
Get rid of the 100R resistor you don't need it.
Check the ground is actually making contact and don't use pins 0 & 1 these are used for serial communication and shouldn't be used unless you know exactly what you are doing.