https://teknokoodiradio.vuodatus.net/lue/2020/08/cc1120-generate-custom-frequency-modulation
Uncomment this in setup code
// Burst address increment disable
// writeExtAddrSPI(EXT_CTRL, EXT_CTRL_SETTTING);
// Burst address increment disable
writeExtAddrSPI(EXT_CTRL, EXT_CTRL_SETTTING);
modify in setup code
// add burst variable in globals
uint8_t chipStatus = 0;
volatile int8_t t = 0;
volatile bool burst = true;
v = readExtAddrSPI(MARCSTATE);
Serial.print(F("MARCSTATE "));
Serial.println(v, BIN);
// add flush
Serial.flush();
// add digitalWrite(SS_PIN, LOW)
digitalWrite(SS_PIN, LOW);
attachInterrupt(digitalPinToInterrupt(CFM_TX_DATA_CLK_PIN), isr, RISING);
// Terminate extended register burst access by setting SS_PIN HIGH
modify isr routine code
void isr() {
// Foffset = (Fdev x value) / 64 [Hz]
if (burst) {
SPI.transfer(W_BURST_BIT | EXT_ADDR);
SPI.transfer(CFM_TX_DATA_IN);
burst = false;
}
SPI.transfer(t);
t++;
if (t > 39) {
t = 0;
}
}
Kommentit
Tämän blogin kommentit tarkistetaan ennen julkaisua.