Skip to content

Commit 29c6838

Browse files
author
Ricardo Lima Caratti
committedJul 12, 2020
KT0915 Arduino Library
1 parent 4d75638 commit 29c6838

File tree

3 files changed

+52
-45
lines changed

3 files changed

+52
-45
lines changed
 

‎KT0915.cpp

+11-2
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@ void KT0915::setI2CBusAddress(int deviceAddress)
3737
*/
3838
void KT0915::setRegister(int reg, uint16_t parameter)
3939
{
40-
4140
word16_to_bytes param;
4241

4342
param.raw = parameter;
@@ -686,6 +685,7 @@ uint8_t KT0915::getAmBandwidth()
686685
void KT0915::setFM(uint32_t minimum_frequency, uint32_t maximum_frequency, uint32_t default_frequency, uint16_t step)
687686
{
688687
kt09xx_amsyscfg reg;
688+
kt09xx_locfgc fm32;
689689

690690
this->currentStep = step;
691691
this->currentFrequency = default_frequency;
@@ -700,12 +700,21 @@ void KT0915::setFM(uint32_t minimum_frequency, uint32_t maximum_frequency, uint3
700700
reg.refined.RCLK_EN = this->currentRefClockEnabled;
701701
setRegister(REG_AMSYSCFG, reg.raw); // Stores the new value in the register
702702

703+
// Select the right FM band (Campus Band or regular band)
704+
fm32.raw = getRegister(REG_LOCFGC);
705+
fm32.refined.CAMPUSBAND_EN = (maximum_frequency <= 64000)? 1:0;
706+
setRegister(REG_LOCFGC, fm32.raw);
707+
703708
if (this->currentDialMode == DIAL_MODE_ON)
704-
setTuneDialModeOn(minimum_frequency, maximum_frequency);
709+
setTuneDialModeOn(minimum_frequency, maximum_frequency);
705710
else
706711
setFrequency(default_frequency);
707712
};
708713

714+
715+
716+
717+
709718
/**
710719
* @todo Adjust setTuneDialOn()
711720
* @ingroup GA04

‎examples/KT0915_03_TFT_DISPLAY/KT0915_03_TFT_DISPLAY.ino

+6-9
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,8 @@ akc_band band[] = {
137137
{MODE_AM, (char *) "16m", 17400, 17900, 17600, 5},
138138
{MODE_AM, (char *) "13m", 21400, 21900, 21525, 5},
139139
{MODE_AM, (char *) "11m", 27000, 28000, 27500, 1},
140-
{MODE_FM, (char *) "VHF/2m", 144000, 148000, 145000, 50}
140+
{MODE_AM, (char *) "10m", 28000, 30000, 28400, 1},
141+
{MODE_FM, (char *) "VHF/6m", 50000, 55000, 50125, 10}
141142
};
142143

143144
const int lastBand = (sizeof band / sizeof(akc_band)) - 1;
@@ -155,7 +156,6 @@ Adafruit_ST7735 tft = Adafruit_ST7735(TFT_CS, TFT_DC, TFT_RST);
155156

156157
KT0915 rx;
157158

158-
159159
void setup()
160160
{
161161
// Serial.begin(9600);
@@ -181,15 +181,17 @@ void setup()
181181
attachInterrupt(digitalPinToInterrupt(ENCODER_PIN_A), rotaryEncoder, CHANGE);
182182
attachInterrupt(digitalPinToInterrupt(ENCODER_PIN_B), rotaryEncoder, CHANGE);
183183

184-
185184
rx.setup(ENABLE_PIN); // You can control the enable or disable the device. If ENABLE_PIN is high, the device is enable
186185

187186
rx.setTuneDialModeOff(); // Sets the KT0915 device to Digital control
188187
rx.setVolumeDialModeOff();
189188

190189
rx.setVolume(20);
191-
rx.setAudioGain(2); // -2dB;
190+
rx.setAudioGain(0); // 0dB
192191
rx.setAudioAntiPop(3); // Anti-pop Configuration (10uF capacitor).
192+
rx.setAmAfc(true);
193+
rx.setLeftChannelInverseControl(ENABLE_OFF);
194+
rx.setSoftMute(false);
193195

194196
rx.setFM(band[bandIdx].minimum_frequency, band[bandIdx].maximum_frequency, band[bandIdx].default_frequency, band[bandIdx].step);
195197
showTemplate();
@@ -583,11 +585,6 @@ void volumeButton(byte d)
583585
}
584586

585587

586-
587-
void doFilter() {
588-
589-
}
590-
591588
void loop()
592589
{
593590

‎keywords.txt

+35-34
Original file line numberDiff line numberDiff line change
@@ -6,41 +6,42 @@ KT0915 KEYWORD1
66

77
# Methods (KEYWORD2)
88

9-
KT0915 KEYWORD2
10-
setup KEYWORD2
11-
reset KEYWORD2
12-
setRegister KEYWORD2
13-
getRegister KEYWORD2
14-
setFM KEYWORD2
15-
setAM KEYWORD2
16-
setStep KEYWORD2
17-
setFrequency KEYWORD2
18-
frequencyUp KEYWORD2
19-
frequencyDown KEYWORD2
9+
KT0915 KEYWORD2
10+
setup KEYWORD2
11+
reset KEYWORD2
12+
setRegister KEYWORD2
13+
getRegister KEYWORD2
14+
setFM KEYWORD2
15+
setAM KEYWORD2
16+
setStep KEYWORD2
17+
setFrequency KEYWORD2
18+
frequencyUp KEYWORD2
19+
frequencyDown KEYWORD2
2020
setAntennaTuneCapacitor KEYWORD2
21-
setStep KEYWORD2
22-
setVolumeDialModeOff KEYWORD2
23-
setVolumeDialModeOn KEYWORD2
24-
setTuneDialModeOff KEYWORD2
25-
setTuneDialModeOn KEYWORD2
26-
isCrystalReady KEYWORD2
27-
setReferenceClockType KEYWORD2
28-
setI2CBusAddress KEYWORD2
29-
getDeviceId KEYWORD2
30-
setAudioBass KEYWORD2
31-
setAudioGain KEYWORD2
32-
isFmStereo KEYWORD2
33-
getAmRssi KEYWORD2
34-
getFmRssi KEYWORD2
35-
setDeEmphasis KEYWORD2
36-
setAmAfc KEYWORD2
37-
setAmSpace KEYWORD2
38-
setAmBandwidth KEYWORD2
39-
setFrequencyUp KEYWORD2
40-
setFrequencyDown KEYWORD2
41-
getAmCurrentChannel KEYWORD2
42-
getFmCurrentChannel KEYWORD2
43-
getFrequency KEYWORD2
21+
setStep KEYWORD2
22+
setVolumeDialModeOff KEYWORD2
23+
setVolumeDialModeOn KEYWORD2
24+
setTuneDialModeOff KEYWORD2
25+
setTuneDialModeOn KEYWORD2
26+
isCrystalReady KEYWORD2
27+
setReferenceClockType KEYWORD2
28+
setI2CBusAddress KEYWORD2
29+
getDeviceId KEYWORD2
30+
setAudioBass KEYWORD2
31+
setAudioGain KEYWORD2
32+
isFmStereo KEYWORD2
33+
getAmRssi KEYWORD2
34+
getFmRssi KEYWORD2
35+
setDeEmphasis KEYWORD2
36+
setAmAfc KEYWORD2
37+
setAmSpace KEYWORD2
38+
setAmBandwidth KEYWORD2
39+
setFrequencyUp KEYWORD2
40+
setFrequencyDown KEYWORD2
41+
getAmCurrentChannel KEYWORD2
42+
getFmCurrentChannel KEYWORD2
43+
getFrequency KEYWORD2
44+
setLeftChannelInverseControl KEYWORD2
4445

4546

4647
#Literals

0 commit comments

Comments
 (0)
Please sign in to comment.