Práctica de Módulos Contadores y Aplicaciones de Circuitos
El método
usa cálculos binarios para lograr obtener el valor que fue generado por Eq. 5.
NcoFrqReg
También sería posible usar la librería FloatMath para desarrollar estos cálculos. Sin embargo el
método
necesita mucho menos espacio de código que la librería FloatMath. También toma
NcoFrqReg
menos tiempo completar los cálculos, así que lo hace buen candidato para un objeto contador
matemático.
Cargue TerminalFrequencies.spin en EEPROM (F11) a inmediatamente después presione el
botón Enable de la Terminal Serial Parallax. (Recuerde, no necesita esperar a que termine de
cargar el programa)
Cuando muestre el cursor ingrese la porción integra de cada valor de frecuencia (no los
valores de registro FRQ) de la Tabla 7-1 en la pagina 139 en la ventana de transmisión de la
Terminal Serial Parallax mostrada en la Figura 7-11.
Verifique que los cálculos del método
en la Tabla
Recuerde presionar el botón Disable de la Terminal Serial Parallax antes de cargar el
siguiente programa.
''TerminalFrequencies.spin
''Ingresa frecuencias para tocar en el piezospeaker y mostrar los valores ''de registro
frq con la Terminal Serial Parallax
CON
_clkmode = xtal1 + pll16x
_xinfreq = 5_000_000
CLS = 16, CR = 13
OBJ
Debug
: "FullDuplexSerialPlus"
PUB Init
'Configure ctra module.
ctra[30..26] := %00100
ctra[5..0] := 27
frqa := 0
dira[27]~~
'Inicia FullDuplexSerialPlus y limpia la Terminal Serial Parallax.
Debug.start(31, 30, 0, 57600)
waitcnt(clkfreq * 2 + cnt)
Debug.tx(CLS)
Main
PUB Main | frequency, temp
repeat
Debug.Str(String("Enter a frequency: "))
frequency := Debug.getDec
temp := NcoFrqReg(frequency)
Debug.Str(String("frqa = "))
Debug.Dec(temp)
Debug.tx(CR)
Pagina 148 · Kit Educativo de Prácticas Propeller: Fundamentos
coinciden con los valores de registro FRQ
NcoFrqReg
' Reloj de sistema → 80 MHz
' Caracteres de control
' Terminal Serial Parallax
' Terminal Serial Parallax
' muestra objeto
' Activa ctra para "NCO terminación sencilla"
' Activa APIN a P27
' No envía tono aun.
' pin E/S a salida