source: svn/trunk/zas_dstar/devices/Tuner/Oren_Cascade2B/SN761662Tuner.h

Last change on this file was 2, checked in by phkim, 11 years ago

1.phkim

  1. revision copy newcon3sk r27
File size: 3.5 KB
Line 
1#ifndef TUNER_SN761662TUNER_H
2#define TUNER_SN761662TUNER_H
3
4#include "Cas2BGeneralDefinitions.h"
5
6
7
8#define SN761662_DEVICE_ADDRESS_WRITE  0xC2
9
10#define SN761662_N_MAX 32768 //15 bits
11
12#define SN761662_SUCCESS 0
13#define SN761662_FREQUENCY_VALUE_OUT_OF_RANGE 1
14#define SN761662_BEFORE_SEND_BYTES_FAILED 2
15#define SN761662_AFTER_SEND_BYTES_FAILED 3
16#define SN761662_SEND_CONTROL_DATA_FAILED 4
17#define SN761662_CHANNEL_OUT_OF_RANGE 5
18#define SN761662_INCORRECT_REF_DIVIDER_RATIO 6
19#define SN761662_INCORRECT_ATC 7
20#define SN761662_INCORRECT_IFOSW 8
21#define SN761662_INCORRECT_RFAGC_SHIFT_XTALOUT_CONTROL 9
22#define SN761662_CHANNEL_DOES_NOT_FIT_ANY_FREQUENCY 10
23
24typedef enum EN_TYPE_SN761662TUNER_REF_DIVIDER_RATIO{
25        SN761662TUNER_REF_DIVIDER_RATIO_24 = 0,
26        SN761662TUNER_REF_DIVIDER_RATIO_28,
27        SN761662TUNER_REF_DIVIDER_RATIO_50,
28        SN761662TUNER_REF_DIVIDER_RATIO_64,
29        SN761662TUNER_REF_DIVIDER_RATIO_128,
30        SN761662TUNER_REF_DIVIDER_RATIO_80
31}TYPE_SN761662TUNER_REF_DIVIDER_RATIO;
32
33
34typedef enum EN_TYPE_SN761662TUNER_ATC{
35        SN761662TUNER_ATC_900NS = 0,
36        SN761662TUNER_ATC_9MS
37}TYPE_SN761662TUNER_ATC;
38
39
40typedef enum EN_TYPE_SN761662TUNER_CP{
41        SN761662TUNER_CP_50 = 0,
42        SN761662TUNER_CP_150,
43        SN761662TUNER_CP_350,
44        SN761662TUNER_CP_650,
45}TYPE_SN761662TUNER_CP;
46
47typedef enum EN_TYPE_SN761662TUNER_AGC_TOP_LEVEL_0_LEVEL_1{
48        EN_TYPE_SN761662TUNER_AGC_TOP_LEVEL_0_117_LEVEL_1_112 = 0,
49        EN_TYPE_SN761662TUNER_AGC_TOP_LEVEL_0_114_LEVEL_1_109,
50        EN_TYPE_SN761662TUNER_AGC_TOP_LEVEL_0_111_LEVEL_1_106,
51        EN_TYPE_SN761662TUNER_AGC_TOP_LEVEL_0_108_LEVEL_1_103,
52        EN_TYPE_SN761662TUNER_AGC_TOP_LEVEL_0_105_LEVEL_1_100,
53        EN_TYPE_SN761662TUNER_AGC_TOP_LEVEL_0_102_LEVEL_1_97,
54        EN_TYPE_SN761662TUNER_AGC_TOP_LEVEL_0_99_LEVEL_1_94,
55        EN_TYPE_SN761662TUNER_AGC_TOP_LEVEL_0_1_DISABLE
56}TYPE_SN761662TUNER_AGC_TOP_LEVEL_0_LEVEL_1;
57
58
59
60typedef enum EN_TYPE_SN761662TUNER_IFOSW{
61        TYPE_SN761662TUNER_IFOSW_IFOUT1_ENABLE_IFOUT2_DISABLE = 0,
62        TYPE_SN761662TUNER_IFOSW_IFOUT1_DISABLE_IFOUT2_ENABLE
63}TYPE_SN761662TUNER_IFOSW;
64
65typedef enum EN_TYPE_SN761662TUNER_RFAGC_SHIFT_XTALOUT_CONTROL{
66        TYPE_SN761662TUNER_RFAGC_SHIFT_XTALOUT_CONTROL_IFOUT_0_OUTPUT_ENABLE = 0,
67        TYPE_SN761662TUNER_RFAGC_SHIFT_XTALOUT_CONTROL_IFOUT_0_OUTPUT_DISABLE,
68        TYPE_SN761662TUNER_RFAGC_SHIFT_XTALOUT_CONTROL_IFOUT_1_OUTPUT_ENABLE,
69        TYPE_SN761662TUNER_RFAGC_SHIFT_XTALOUT_CONTROL_IFOUT_1_OUTPUT_DISABLE,
70}TYPE_SN761662TUNER_RFAGC_SHIFT_XTALOUT_CONTROL;
71
72
73
74
75int TunerSN761662SendChannel(unsigned int uiChannel, CHANNEL_TABLE_TYPE iChannelTable, TYPE_SN761662TUNER_REF_DIVIDER_RATIO iRefDividerRatio,TYPE_SN761662TUNER_ATC iATC, TYPE_SN761662TUNER_CP iCP,TYPE_SN761662TUNER_IFOSW iIFOSW,TYPE_SN761662TUNER_AGC_TOP_LEVEL_0_LEVEL_1 iAGCTop, TYPE_SN761662TUNER_RFAGC_SHIFT_XTALOUT_CONTROL iRFAGCShiftXtalOut);
76int TunerSN761662SendFreq(unsigned long ulFrequency, TYPE_SN761662TUNER_REF_DIVIDER_RATIO iRefDividerRatio,TYPE_SN761662TUNER_ATC iATC, TYPE_SN761662TUNER_CP iCP,TYPE_SN761662TUNER_IFOSW iIFOSW,TYPE_SN761662TUNER_AGC_TOP_LEVEL_0_LEVEL_1 iAGCTop, TYPE_SN761662TUNER_RFAGC_SHIFT_XTALOUT_CONTROL iRFAGCShiftXtalOut);
77int TunerSN761662SendPicCarrier(unsigned long ulFrequency, TYPE_SN761662TUNER_REF_DIVIDER_RATIO iRefDividerRatio,TYPE_SN761662TUNER_ATC iATC, TYPE_SN761662TUNER_CP iCP,TYPE_SN761662TUNER_IFOSW iIFOSW,TYPE_SN761662TUNER_AGC_TOP_LEVEL_0_LEVEL_1 iAGCTop, TYPE_SN761662TUNER_RFAGC_SHIFT_XTALOUT_CONTROL iRFAGCShiftXtalOut);
78
79BOOLEAN TunerSN761662BeforeSendBytes(void);
80BOOLEAN TunerSN761662AfterSendBytes(void);
81unsigned long TunerSN761662GetFrequency(unsigned int uiChannelNumber,CHANNEL_TABLE_TYPE iChannelTable);
82       
83
84#endif
Note: See TracBrowser for help on using the repository browser.