En el post anterior vimos como controlar un LED y un switch en lenguaje assembler. Ahora veremos como hacerlo en C. Los detalles básicos del programa pueden encontrarse acá.
Primero creamos una función que genere un retardo de aproximadamente 100ms. El código es el siguiente:
| C | | copy code | | ? |
| 01 | void delay_100us(void) { //Retardo de aprox. 100ms |
| 02 | char cont; |
| 03 | cont=20; |
| 04 | |
| 05 | asm { |
| 06 | |
| 07 | loop: nop //1 ciclo |
| 08 | nop |
| 09 | nop |
| 10 | nop |
| 11 | dbnz cont,loop //7 ciclos |
| 12 | } |








