Paso 3: Cómo uno trabaja de alambre
Las imágenes muestran los tiempos y los niveles que deben respetar para poder comunicarse. Ajuste de un perno a la entrada se realiza estableciendo la TRIS correspondiente bit a '1', convirtiéndose en medios de salida a '0' en esa posición de bit.
Poner un '0' en el pin se realiza simplemente diciendo GPx = 0; donde x es el número de pin GPIO que conectado el socket a.
Para hacer este instructable que tan completo como puede ser, yo te daré el código completo (aunque realmente no me gusta la idea de no dar en todo para hacer cosas de trabajo). No soy sensible sobre cualquier persona que utilice este código para completar sus proyectos, usted mencionar (o no) de donde vino el código es para que usted pueda decidir.
El propio código es auto explicativo, los tiempos se hicieron con temporizador 1, en el modo de votación. No quería overcomplicate el proyecto con las rutinas de servicio de interrupción. Yo sólo borrar la bandera, configurar el temporizador para darme la correcta sincronización y espere hasta que la bandera se establece otra vez. Esto sucede cuando TMR1 EMBASE del 65535 al 0.
El más pequeño el valor en él, cuanto más tiempo llevará la bandera establecer. Eso es todo allí está a él!
Tiempos más cortos realmente no vale la pena hacerse de esta manera, he usado inline asm comandos para hacerlo. Una operación nop solo toma ciclo exactamente una instrucción para completar, que - en nuestro caso - es de 1 microsegundo.
Las macros fueron utilizadas para mantener el código limpio.