Understanding and Using AT89C52 Microcontroller Ports for Beginners

  • Thread starter Thread starter beluluk
  • Start date Start date
Join the discussion
Registration is free. Ask a follow-up in this thread, or start your own.
4 replies · 3K views
beluluk
Messages
27
Reaction score
0
I'm doing a project of sorting objects, and this is the first time I'm working with microcontrollers. I am using AT89C52 microcontrollers. i just couldn't understand these statements in the datasheets.

"When 1s are written to Port 2 pins they are pulled high by the internal pullups and can be used as inputs. As inputs, Port 2 pins that are externally being pulled low will source current (IIL) because of the internal pullups."

how am i supposed to use the port as inputs? what should i do when i want the pins as inputs, and also, what should i do when i want the pins as outputs?

the port is an I/O pin. since i would be using the T2 and T2EX timers, can i simultaneously using some of port 2 pins as input (timer/counter) and the others as output?

The datasheets could be obtained from www.atmel.com

Thx b4.
 
Engineering news on Phys.org
You've pretty much explained this yourself. When a 1 is written to the port, it is pulled high by a pullup resistor. Just read the port if you want to use it as an input. If you want to use it as an output, don't hook anything on it that will drive it. Just write to it.
 
thanks for the answer. It is obvious, but it is just my first time using microcontrollers. i will try this right away.
thanks again.

Oh.. and one more thing. like i said before. can i use a port as an input and an output simultaneously? my mistake to mention timer 2 on port2. it is timer0 and timer1 that is on port3. can i use P3.4 and P3.5 as timers/counters while i use the other pins as input?
 
Last edited:
beluluk said:
Oh.. and one more thing. like i said before. can i use a port as an input and an output simultaneously? my mistake to mention timer 2 on port2. it is timer0 and timer1 that is on port3. can i use P3.4 and P3.5 as timers/counters while i use the other pins as input?
That generally depends on the microcontroller, so just read the datasheet and Programmer's Guide to find out. On most uCs, you an define port I/O directions on a pin-by-pin basis.