Microcontroladores PIC, preguntas ambiguas

5

Estoy tomando un curso de microcontroladores (PIC). Hace poco contesté un cuestionario, pero me cuesta trabajo convencer a mi asistente de enseñanza de que el cuestionario que hizo es ambiguo. ¿Cuáles serían tus elecciones? ¿Y podrías comentar las preguntas en sí?

Un poco de contexto: se suponía que la prueba se basaba en los temporizadores, se tomó después de una conferencia sobre los temporizadores y justo antes del laboratorio en los temporizadores.

Ni siquiera estoy seguro de poder hacer este tipo de preguntas en este foro. Pero estoy seguro de que este es el único lugar en el que obtendré las respuestas, así que aquí va, sea amable

 1. The clock circuit (oscillator circuit) and reset circuit are internal circuits.

    True/False

 2. What is the roll over value of Timer1 when operating in normal mode?

 (a)0x10000  
 (b)0xFFFF  
 (c)255  
 (d)none of the above

Tenga en cuenta que Timer1 es un temporizador de 16 bits. Edición: TYPO EN PREGUNTAS 2 OPCIONES.

La foto que usamos en nuestros laboratorios es 16F877A. No tiene un oscilador interno.

Las respuestas de acuerdo con TA fueron verdaderas y (b) 0xFFFF

Mis opciones fueron Falsas, porque podría "sincronizar" el ucontroller con un cristal externo, una fuente de reloj externa, un oscilador RC externo, no importaba si la segunda mitad de la pregunta era cierta (0 & & 1 = 1) . Tenga en cuenta que no se nos enseñó formalmente sobre todas las diferentes fuentes de microcontroladores del reloj.

0x10000 porque 255 estaba obviamente mal, el temporizador 1 era de 16 bits y debido al hecho de que el temporizador se desplaza después de 0xFFFF.

    
pregunta Hassan Nadeem

3 respuestas

4

Estoy de acuerdo en que ambas preguntas son ambiguas. No es solo que ellos mismos no sean completamente inequívocos. Hay muchas personas por ahí que hacen preguntas descuidadas, que suenan como si estuvieran preguntando una cosa, pero significan algo ligeramente diferente. Estas preguntas no son claramente diferentes de una pregunta descuidada.

Pregunta 1: El circuito del reloj (circuito del oscilador) y el circuito de reinicio son circuitos internos.

Escenario A

  • Estudiante: Son circuitos internos. Vea, el circuito del oscilador es el amplificador dentro del chip, y el circuito de reinicio es esta bestia:

  • Profesor:No,sonexternos.ElPIC16F877Anotieneosciladorinterno,ycuandodije'reiniciarcircuito',quisedecircircuitoMCLR,queesexterno:

Escenario B:

  • Estudiante: Son circuitos externos.
  • Profesor: No, son circuitos internos.

Ambos de estos escenarios, aunque no son igualmente probables, son totalmente plausibles. El profesor no deja claro que no está haciendo una pregunta descuidada.

Pregunta 2: ¿Cuál es el valor de reinversión del Timer1 cuando se opera en modo normal?

Mi problema con esta pregunta es que está mal formado en primer lugar, lo que significa que la respuesta que está buscando no está clara. Las preguntas de opción múltiple como esta son molestas porque no tienes la oportunidad de explicar tu respuesta. Esta pregunta podría ser respondida de tres maneras (todas las cuales demostrarían que el estudiante entendió completamente el temporizador):

Respuesta 1: ninguna de las anteriores. El temporizador se desplaza sobre entre 0xFFFF y 0x10000. No tiene sentido hablar de el valor de renovación.

Respuesta 2: 0xFFFF es el valor de reinversión porque es el valor más alto que puede almacenar el temporizador de 16 bits. Después de esto, se da vuelta.

Respuesta 3: 0x10000. Porque este es el valor que realmente activa el rollover.

0x0000  - not rolled over
0x0001  - not rolled over
...
0xFFFD  - not rolled over
0xFFFE  - not rolled over
0xFFFF  - roll over happens after this
0x10000  - roll over has happened!  -> 0x0000

Puedo escuchar a alguien gritar que un temporizador de 16 bits no puede contener 0x10000 porque es un valor de 17 bits. Lo que no se dan cuenta es que el temporizador es un contador de 17 bits. El bit 17 es el bit TMR1IF, que está pegajoso.

bit:  IFEDCBA9876543210    (bit I is TMR1IF)
      00000000000000000  - not rolled over
      00000000000000001  - not rolled over
      00000000000000010  - not rolled over
      00000000000000011  - not rolled over
      ...
      01111111111111100  - not rolled over
      01111111111111101  - not rolled over
      01111111111111110  - not rolled over
      01111111111111111  - rollover happens after this
      10000000000000000  - rollover has happened!

Así es como habría hecho las preguntas:

Pregunta 1: (En realidad, no estoy seguro de cuál es el punto de esta pregunta. El oscilador y los circuitos de reinicio se implementan en parte dentro y en parte fuera del dispositivo.)

Pregunta 2: cuando el temporizador 1 funciona en modo normal, ¿cuál es su último valor antes de que se desplace?

P.S. lo siento si hay más errores tipográficos u oraciones sin sentido en esta respuesta. Al parecer, todavía estoy sufriendo los efectos de la anestesia general esta mañana.

    
respondido por el Rocketmagnet
5
  1. Esto es ambiguo a menos que haya un contexto de un modelo PIC particular. En algunos casos, incluso eso no es lo suficientemente bueno y el circuito debe ser conocido. Algunos PIC tienen solo osciladores internos (10Fxxx), la mayoría de los PIC más nuevos tienen osciladores internos, pero no lo obligan a usarlos. Se pueden sincronizar externamente o pueden conducir un cristal externo o un R-C externo. Algunos PIC más antiguos requieren al menos algunos circuitos osciladores externos (16F877).
  2. Esta pregunta está bien si hay un contexto claro de qué familia de PIC se trata la pregunta. El temporizador 1 se fija en 16 bits en algunas familias, por lo que es válido (dentro del contexto de dicha familia).

Añadido:

Ahora dice que estas preguntas asumían el contexto de un PIC 16F877A. En ese caso, creo que la pregunta 1 es un poco ambigua, ya que al menos parte del circuito del oscilador debe ser externo al PIC. Este PIC puede funcionar con un reloj externo directamente aplicado, puede impulsar un cristal externo o puede activar una resistencia y un capacitor externos. El controlador para el cristal y el oscilador R-C son internos, pero no todo el "circuito del reloj". Creo que no es demasiado difícil adivinar que el instructor pretendía que la respuesta fuera "verdadera", pero se podría argumentar un caso a favor de "falso".

En cuanto a la pregunta 2, eso está perfectamente bien en el contexto de un 16F877A y la respuesta es claramente FFFFh (opción B). No veo motivos para argumentar que fue ambiguo o que la respuesta no es claramente la opción B.

    
respondido por el Olin Lathrop
0

Una buena prueba producirá una distribución de puntajes que refleje qué tan bien los estudiantes han aprendido e integrado el material. Preguntas que podrías llamar "ambiguo" es a menudo una parte importante de un buen cuestionario.

No enseño con PIC, uso procesadores ARM Cortex-M, así que no sé cómo se espera que respondas la primera pregunta. En mi curso la respuesta sería verdadera. ¿Está seguro de que la respuesta no se incluyó en una conferencia o en la lectura asignada?

La segunda pregunta no es en absoluto ambigua. Hay tres opciones completamente diferentes y una opción para indicar que ninguna de las opciones disponibles es correcta. Esta debería ser una pregunta fácil si sabes la respuesta. Ahora, si puede demostrar que la respuesta nunca se incluyó en el material de la conferencia o en la lectura asignada, entonces tiene un argumento razonable.

    
respondido por el Joe Hass

Lea otras preguntas en las etiquetas