Estoy usando un SoC TI CC1111 para leer / escribir un SD microSDHC tarjeta, con un conector de tarjeta Amphenol . El pin de detección de tarjeta (CD) de la toma se conecta a tierra cuando no hay ninguna tarjeta presente. Cuando se inserta una tarjeta, la conexión se interrumpe. (Esto parece contradecir la hoja de datos, pero es lo que me dice mi multímetro).
Una forma de detectar la inserción de la tarjeta sería conectar un pin GPIO al pin CD. Por defecto, los pines del CC1111 están configurados con una resistencia interna de pull-up. Si una tarjeta estuviera presente, leería la lógica alta y, de lo contrario, el pin se tiraría a tierra. Pero me preocupa que esto pueda generar una corriente excesiva, y por supuesto, advierte la hoja de datos (pág. 90):
Unused I/O pins should have a defined level and not be left floating. One way to do
this is to leave the pin unconnected and configure the pin as a general purpose I/O
input with pull-up resistor. This is the default state of all pins after reset except
for P1_0 and P1_1 ... Alternatively the pin can be configured as a general
purpose I/O output. In both cases the pin should not be connected directly to VDD or
GND in order to avoid excessive power consumption.
Pregunta 1 : ¿dónde se consume la energía? ¿Está solo en la resistencia interna de pull-up? La hoja de datos dice que los pull-ups internos son 20k, por lo que con 3.3 V eso es aproximadamente 0.17 mA. ¿De eso están hablando? ¿O quizás la advertencia de "consumo excesivo de energía" solo se aplica cuando el pin está configurado como salida?
Qustion 2 : ¿Cuál es la forma correcta de detectar la inserción / extracción de la tarjeta sin desperdiciar energía?
Y no, todavía no he medido el sorteo actual, pero lo haré.