To write to the current /start of the Delay SRAM , we use the WRA instruction.
To read a sample from a particular location and output to ADCL, we do something like the below,
SOF 0,0
WRAX ADDR_PTR, 0
ADDR_PTR can be represented in either $8000 to $7FFF or -2 to 1.998...
or MEM which is 1 to 32768
Now, how do I read a sample for and what ADDR_PTR or ME- should I use for the following,
1) Current Sample - 1 Sample
2) Sample at 0.25 secs
3) Sample at 0.5 secs
4) Last sample in the Delay SRAM, i.e. 1 s
How does the FV-1 convert between integers, hex and float?
For example, I'm trying to undestand the below code for a 3 tap delay.
Code: Select all
RDAX ADCR,0.5000000000
MULX POT2
RDAX ADCL,1.0000000000
WRA 0,0.0
CLR
OR $007FFF00
MULX POT0
SOF 0.8074753571,0.0425292206
WRAX ADDR_PTR,0.0000000000
RMPA 1.0
WRAX REG0,0.0000000000
CLR
OR $007FFF00
MULX POT1
SOF 0.5699826050,0.0300296021
WRAX ADDR_PTR,0.0000000000
RMPA 1.0
WRAX REG1,0.0000000000
;------ Output
RDAX REG0,1.0000000000
WRAX DACL,0.0000000000
RDAX REG1,1.0000000000
WRAX DACR,0.0000000000
Based on the below coefficients, which delay sample will it be reading?
SOF 0.8074753571,0.0425292206
SOF 0.5699826050,0.0300296021