mirror of
https://github.com/g4klx/MMDVM_HS.git
synced 2026-01-17 14:00:16 +01:00
Adding CE pin control, for ADF7021 reset.
This commit is contained in:
parent
9d292fa809
commit
932f5e244e
|
|
@ -142,6 +142,12 @@ void CIO::ifConf()
|
|||
uint32_t ADF7021_REG4 = 0;
|
||||
uint32_t ADF7021_REG13 = 0;
|
||||
|
||||
// Toggle CE pin for ADF7021 reset
|
||||
CE_pin(LOW);
|
||||
delay_rx();
|
||||
CE_pin(HIGH);
|
||||
delay_rx();
|
||||
|
||||
// Check frequency band
|
||||
if( (m_frequency_tx >= VHF1_MIN) && (m_frequency_tx < VHF1_MAX) ) {
|
||||
ADF7021_REG1 = ADF7021_REG1_VHF1; // VHF1, external VCO
|
||||
|
|
|
|||
1
IO.cpp
1
IO.cpp
|
|
@ -39,6 +39,7 @@ m_watchdog(0U)
|
|||
{
|
||||
Init();
|
||||
|
||||
CE_pin(HIGH);
|
||||
LED_pin(HIGH);
|
||||
PTT_pin(LOW);
|
||||
DSTAR_pin(LOW);
|
||||
|
|
|
|||
1
IO.h
1
IO.h
|
|
@ -50,6 +50,7 @@ public:
|
|||
void SDATA_pin(bool on);
|
||||
bool SREAD_pin(void);
|
||||
void SLE_pin(bool on);
|
||||
void CE_pin(bool on);
|
||||
bool RXD_pin(void);
|
||||
|
||||
#if defined(BIDIR_DATA_PIN)
|
||||
|
|
|
|||
|
|
@ -30,6 +30,7 @@
|
|||
#define PIN_SREAD PB7
|
||||
#define PIN_SDATA PB6
|
||||
#define PIN_SLE PB8
|
||||
#define PIN_CE PC14
|
||||
#define PIN_RXD PB4
|
||||
#define PIN_TXD PB3
|
||||
#define PIN_CLKOUT PA15
|
||||
|
|
@ -49,6 +50,7 @@
|
|||
#define PIN_SDATA 4 // 2 in Arduino Zero Pro
|
||||
#define PIN_SREAD 5
|
||||
#define PIN_SLE 6
|
||||
#define PIN_CE 12
|
||||
#define PIN_RXD 7
|
||||
#define PIN_TXD 8
|
||||
#define PIN_CLKOUT 2 // 4 in Arduino Zero Pro
|
||||
|
|
@ -92,6 +94,7 @@ void CIO::Init()
|
|||
pinMode(PIN_SDATA, OUTPUT);
|
||||
pinMode(PIN_SREAD, INPUT);
|
||||
pinMode(PIN_SLE, OUTPUT);
|
||||
pinMode(PIN_CE, OUTPUT);
|
||||
pinMode(PIN_RXD, INPUT);
|
||||
pinMode(PIN_CLKOUT, INPUT);
|
||||
pinMode(PIN_LED, OUTPUT);
|
||||
|
|
@ -164,6 +167,11 @@ void CIO::SLE_pin(bool on)
|
|||
digitalWrite(PIN_SLE, on ? HIGH : LOW);
|
||||
}
|
||||
|
||||
void CIO::CE_pin(bool on)
|
||||
{
|
||||
digitalWrite(PIN_CE, on ? HIGH : LOW);
|
||||
}
|
||||
|
||||
bool CIO::RXD_pin()
|
||||
{
|
||||
return digitalRead(PIN_RXD) == HIGH;
|
||||
|
|
|
|||
14
IOSTM.cpp
14
IOSTM.cpp
|
|
@ -36,6 +36,9 @@
|
|||
#define PIN_SLE GPIO_Pin_8
|
||||
#define PORT_SLE GPIOB
|
||||
|
||||
#define PIN_CE GPIO_Pin_14
|
||||
#define PORT_CE GPIOC
|
||||
|
||||
#define PIN_RXD GPIO_Pin_4
|
||||
#define PORT_RXD GPIOB
|
||||
|
||||
|
|
@ -180,6 +183,12 @@ void CIO::Init()
|
|||
GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP;
|
||||
GPIO_Init(PORT_SLE, &GPIO_InitStruct);
|
||||
|
||||
// Pin CE
|
||||
GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz;
|
||||
GPIO_InitStruct.GPIO_Pin = PIN_CE;
|
||||
GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP;
|
||||
GPIO_Init(PORT_CE, &GPIO_InitStruct);
|
||||
|
||||
// Pin RXD
|
||||
GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz;
|
||||
GPIO_InitStruct.GPIO_Pin = PIN_RXD;
|
||||
|
|
@ -327,6 +336,11 @@ void CIO::SLE_pin(bool on)
|
|||
GPIO_WriteBit(PORT_SLE, PIN_SLE, on ? Bit_SET : Bit_RESET);
|
||||
}
|
||||
|
||||
void CIO::CE_pin(bool on)
|
||||
{
|
||||
GPIO_WriteBit(PORT_CE, PIN_CE, on ? Bit_SET : Bit_RESET);
|
||||
}
|
||||
|
||||
bool CIO::RXD_pin()
|
||||
{
|
||||
return GPIO_ReadInputDataBit(PORT_RXD, PIN_RXD) == Bit_SET;
|
||||
|
|
|
|||
Loading…
Reference in a new issue