Está en la página 1de 2

CALCULO Y USO DE LA LIBRERIA DELAY.

H
librera delays.h.
En ella tens 4 funciones:
Delay10TCYx(i)
-> 10.Tcy.i
nes * i
Delay100TCYx(i) -> 100.Tcy.i
ones * i
Delay1KTCYx(i)
-> 1000.Tcy.i
iones * i
Delay10KTCYx(i) -> 10000.Tcy.i
ciones * i

genera una demora de 10 ciclos de instruccio


genera una demora de 100 ciclos de instrucci
genera una demora de 1000 ciclos de instrucc
genera una demora de 10000 ciclos de instruc

i puede tomar un valor de 1 a 255. (ojo Si se toma valor 0 i es 256)


Para calcular el tiempo debs tener en cuenta la frecuencia a la que trabaja el pi
c
TCY se calcula como 4/fosc
donde fosc = frecuencia de oscilador
Ejemplo de 4mhz
En este caso 4*10^6(4MHz),
por lo tanto TCY 4/4000000 = 1/10^6 = 0,000001sec
1 TCY = 0,000001seg
1.000.000 TCY= 1 seg
para calcular un segundo
1seg * 1 TCY
------------------- = 1.000.000 TCYs
0,000001seg
calculo del valor de i usando la funcin Delay10KTCYx(i)= i equivale a 10000 TCYs
1.000.000 TCYs
------------------- = 100i
10.000 TCY
Delay10KTCYx(100); //dura 1 seg
ejemplo con frecuencia de 20mhz
TCY se calcula como 4/fosc
En este caso 20*10^6(20MHz), por lo tanto TCY = 4/20*10^6 = 0,0000002
1 TCY = = 0,0000002seg
para calcular un segundo
1seg * 1 TCY
------------------- = 5.000.000 TCYs
0,0000002seg
calculo del valor de i usando la funcin Delay10KTCYx(i)= i equivale a 10000 TCYs

5.000.000 TCYs
------------------- = 500i
10.000 TCY
divido 500 entre 255 para separar el tiempo en n Delay10KTCYx(i) ya que i solo p
uede tomar valores de 1 a 255
Delay10KTCYx(255); // usando los dos delay llego al segundo
Delay10KTCYx(245); //

También podría gustarte