• 大小: 12KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-12
  • 语言: 其他
  • 标签: QN8035  FM  RDS  

资源简介

QN8035 FM 单芯片驱动,在STM32下运行成功,模拟I2C控制

资源截图

代码片段和文件信息

#include “8035.h“

extern UINT8 QND_ReadReg(UINT8 adr);
extern UINT8 QND_WriteReg(UINT8 adr UINT8 value);


#define R_TXRX_MASK    0x30
uint32_t   qnd_Crystal = QND_CRYSTAL_DEFAULT;
UINT8   qnd_PrevMode;
UINT8   qnd_Country  = COUNTRY_CHINA ;
UINT16  qnd_CH_START = 7600;
UINT16  qnd_CH_STOP  = 10800;
UINT8   qnd_CH_STEP  = 1;

UINT8  qnd_AutoScanAll = 0;
UINT8  qnd_IsStereo;
UINT8  qnd_ChCount;
UINT8  qnd_R16; 
UINT8  qnd_R17;
UINT8  qnd_R46;
UINT16 qnd_ChList[QN_CCA_MAX_CH];
UINT8   qnd_StepTbl[3]={51020};
QND_SeekCallBack qnd_CallBackFunc = 0;



/**********************************************************************
void QNF_RXInit()
**********************************************************************
Description: set to SNR based MPX control. Call this function before 
             tune to one specific channel

Parameters:
None
Return Value:
None
**********************************************************************/
void QNF_RXInit()
{
    QNF_SetRegBit(0x1B0x080x00); //Let NFILT adjust freely
    QNF_SetRegBit(0x2C0x3F0x12); //When SNR    QNF_SetRegBit(0x1D0x400x00);//Let ccfilter3 adjust freely
    QNF_SetRegBit(0x410x0F0x0A);//Set a hcc index to trig ccfilter3‘s adjust
    QND_WriteReg(0x450x50);//Set aud_thrd will affect ccfilter3‘s tap number
    QNF_SetRegBit(0x400x700x70); //snc/hcc/sm snr_rssi_sel; snc_start=0x40; hcc_start=0x30; sm_start=0x20
    QNF_SetRegBit(0x190x800x80); //Use SNR for ccfilter selection criterion
    QNF_SetRegBit(0x3E0x800x80); //it is decided by programming this register
    QNF_SetRegBit(0x410xE00xC0);//DC notching High pass filter bandwidth; remove low freqency dc signals        
    QNF_SetRegBit(0x420x100x10);//disable the vtune monitor
    QNF_SetRegBit(0x34 0x7FSMSTART_VAL); //set SNCSTART
    QNF_SetRegBit(0x350x7FSNCSTART_VAL); //set SNCSTART
    QNF_SetRegBit(0x360x7FHCCSTART_VAL); //set HCCSTART
}

/**********************************************************************
void QNF_SetMute(UINT8 On)
**********************************************************************
Description: set register specified bit

Parameters:
On:        1: mute 0: unmute
Return Value:
None
**********************************************************************/
void QNF_SetMute(UINT8 On)
{
if(On)
{
        QNF_SetRegBit(0x4C 0x0B 0x0B);
}
else
{
        QND_Delay(QND_DELAY_BEFORE_UNMUTE);
        QNF_SetRegBit(0x4C 0x0B 0x00);
}
}

/**********************************************************************
void QNF_SetRegBit(UINT8 reg UINT8 bitMask UINT8 data_val)
**********************************************************************
Description: set register specified bit

Parameters:
    reg:        register that will be set
    bitMask:    mask specified bit of register
    data_val:    data will be set for specified bit
Return Value:
    None
*****************************

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      27588  2012-08-08 10:39  QN8035驱动\8035.c

     文件      12822  2012-07-31 14:07  QN8035驱动\8035.h

     文件       8343  2012-08-08 11:49  QN8035驱动\qnio.c

     文件       2572  2012-08-09 15:37  QN8035驱动\qnio.h

     目录          0  2012-08-16 12:08  QN8035驱动

----------- ---------  ---------- -----  ----

                51325                    5


评论

共有 条评论