Quantek QT1010: Difference between revisions
Jump to navigation
Jump to search
m (→Features) |
(How to init the QT1010) |
||
Line 8: | Line 8: | ||
==External Links== |
==External Links== |
||
[http://www.quantek-inc.com/qt1010.html QT1010 Product page at qantek-inc.com] |
[http://www.quantek-inc.com/qt1010.html QT1010 Product page at qantek-inc.com] |
||
==Description of how to program the chip== |
|||
===Tuner context=== |
|||
The tuner has a global context for some variables. They can be used anytime in the init and set methods. |
|||
* reg31 |
|||
* reg32 |
|||
* reg34 |
|||
* reg34_1 |
|||
* reg34_2 |
|||
* reg34_3 |
|||
* reg34_4 |
|||
* reg34_5 |
|||
* reg34_6 |
|||
* reg34_7 |
|||
* reg34_8 |
|||
* reg37 |
|||
* reg38 |
|||
===Tuner Init=== |
|||
* write 0x80 to tuner register 1 |
|||
* write 0x84 to tuner register 13 |
|||
* write 0xB4 to tuner register 14* |
|||
* write 0x23 to tuner register 42 |
|||
* write 0xDC to tuner register 44 |
|||
* write 0x40 to tuner register 37 |
|||
* write 0x00 to tuner register 30 |
|||
* write 0x81 to tuner register 30 |
|||
* loop 30 times |
|||
** read tuner register 37 into reg37 |
|||
** if reg37 bit 8 is set |
|||
*** break out of loop |
|||
* read tuner register 37 into reg37 |
|||
* write 0x00 to tuner register 30 |
|||
* write 0x23 to tuner register 42 |
|||
* write 0x70 to tuner register 43 |
|||
* write 0x08 to tuner register 38 |
|||
* write 0x00 to tuner register 30 |
|||
* write 0x82 to tuner register 30 |
|||
* loop 30 times |
|||
** read tuner register 38 into reg38 |
|||
** if reg38 bit 5 is set |
|||
*** break out of loop |
|||
* read tuner register 38 into reg38 |
|||
* write 0x00 to tuner register 30 |
|||
* write 0x14 to tuner register 5 |
|||
* write 0x44 to tuner register 6 |
|||
* write 0x28 to tuner register 7 |
|||
* write 0x0B to tuner register 8 |
|||
* write 0xFD to tuner register 17* |
|||
* write 0x80 to tuner register 1 |
|||
* write 0x80 to tuner register 1 |
|||
* write 0x80 to tuner register 1 |
|||
* write 0x80 to tuner register 1 |
|||
* write 0x80 to tuner register 1 |
|||
* write 0x80 to tuner register 1 |
|||
* write 0x80 to tuner register 1 |
|||
* write 0x80 to tuner register 1 |
|||
* write 0x80 to tuner register 1 |
|||
* write 0x80 to tuner register 1 |
|||
* write 0x0D to tuner register 34 |
|||
* write 0x00 to tuner register 30 |
|||
* write 0xD0 to tuner register 30 |
|||
* loop 30 times |
|||
** read tuner register 34 |
|||
** if register 34 bit 6 is set |
|||
*** break out of loop |
|||
* write 0x00 to tuner register 30 |
|||
* write 0x40 to tuner register 6 |
|||
* write 0xF0 to tuner register 22 |
|||
* write 0x38 to tuner register 2 |
|||
* write 0x19 to tuner register 3 |
|||
* write 0x20 to tuner register 31 |
|||
* write 0xE0 to tuner register 32 |
|||
* write 0x00 to tuner register 30 |
|||
* write 0x84 to tuner register 30 |
|||
* loop 30 times |
|||
** read tuner register 31 into reg31 |
|||
** if register 31 bit 7 is set |
|||
*** break out of loop |
|||
* read tuner register 31 into reg31 |
|||
* read tuner register 32 into reg32 |
|||
* write 0x00 to tuner register 30 |
|||
* write 0x3F to tuner register 2 |
|||
* write 0x53 to tuner register 33 |
|||
* read tuner register 33 into reg33 |
|||
* write 0xFD to tuner register 17* |
|||
* write 0x34 to tuner register 5 |
|||
* write 0x44 to tuner register 6 |
|||
* write 0x31 to tuner register 7 |
|||
* write 0x08 to tuner register 8 |
|||
* write 0xD0 to tuner register 34 |
|||
* write 0x00 to tuner register 30 |
|||
* write 0xD0 to tuner register 30 |
|||
* loop 30 times |
|||
** read tuner register 34 |
|||
** if register 34 bit 6 is set |
|||
*** break out of loop |
|||
* write 0x00 to tuner register 30 |
|||
* read tuner register 34 into reg34_1 |
|||
* write 0x32 to tuner register 7 |
|||
* write 0xD0 to tuner register 34 |
|||
* write 0x00 to tuner register 30 |
|||
* write 0xD0 to tuner register 30 |
|||
* loop 30 times |
|||
** read tuner register 34 |
|||
** if register 34 bit 6 is set |
|||
*** break out of loop |
|||
* write 0x00 to tuner register 30 |
|||
* read tuner register 34 into reg34_2 |
|||
* write 0x33 to tuner register 7 |
|||
* write 0xD0 to tuner register 34 |
|||
* write 0x00 to tuner register 30 |
|||
* write 0xD0 to tuner register 30 |
|||
* loop 30 times |
|||
** read tuner register 34 |
|||
** if register 34 bit 6 is set |
|||
*** break out of loop |
|||
* write 0x00 to tuner register 30 |
|||
* read tuner register 34 into reg34_3 |
|||
* write 0x34 to tuner register 7 |
|||
* write 0xD0 to tuner register 34 |
|||
* write 0x00 to tuner register 30 |
|||
* write 0xD0 to tuner register 30 |
|||
* loop 30 times |
|||
** read tuner register 34 |
|||
** if register 34 bit 6 is set |
|||
*** break out of loop |
|||
* write 0x00 to tuner register 30 |
|||
* read tuner register 34 into reg34_4 |
|||
* write 0x35 to tuner register 7 |
|||
* write 0xD0 to tuner register 34 |
|||
* write 0x00 to tuner register 30 |
|||
* write 0xD0 to tuner register 30 |
|||
* loop 30 times |
|||
** read tuner register 34 |
|||
** if register 34 bit 6 is set |
|||
*** break out of loop |
|||
* write 0x00 to tuner register 30 |
|||
* read tuner register 34 into reg34_5 |
|||
* write 0x36 to tuner register 7 |
|||
* write 0xD0 to tuner register 34 |
|||
* write 0x00 to tuner register 30 |
|||
* write 0xD0 to tuner register 30 |
|||
* loop 30 times |
|||
** read tuner register 34 |
|||
** if register 34 bit 6 is set |
|||
*** break out of loop |
|||
* write 0x00 to tuner register 30 |
|||
* read tuner register 34 into reg34_6 |
|||
* write 0x37 to tuner register 7 |
|||
* write 0xD0 to tuner register 34 |
|||
* write 0x00 to tuner register 30 |
|||
* write 0xD0 to tuner register 30 |
|||
* loop 30 times |
|||
** read tuner register 34 |
|||
** if register 34 bit 6 is set |
|||
*** break out of loop |
|||
* write 0x00 to tuner register 30 |
|||
* read tuner register 34 into reg34_7 |
|||
* write 0x38 to tuner register 7 |
|||
* write 0xD0 to tuner register 34 |
|||
* write 0x00 to tuner register 30 |
|||
* write 0xD0 to tuner register 30 |
|||
* loop 30 times |
|||
** read tuner register 34 |
|||
** if register 34 bit 6 is set |
|||
*** break out of loop |
|||
* write 0x00 to tuner register 30 |
|||
* read tuner register 34 into reg34_8 |
|||
* write 0x39 to tuner register 7 |
|||
* write 0xD0 to tuner register 34 |
|||
* write 0x00 to tuner register 30 |
|||
* write 0xD0 to tuner register 30 |
|||
* loop 30 times |
|||
** read tuner register 34 |
|||
** if register 34 bit 6 is set |
|||
*** break out of loop |
|||
* write 0xD0 to tuner register 30 |
|||
* read tuner register 34 into reg34 |
|||
[[Category:Tuners]] |
[[Category:Tuners]] |
Revision as of 18:11, 27 December 2009
The Quantek QT1010 is a wideband tuner chip.
Features
- 48MHz-860MHz frequency range (bands I, II, III, IV).
- 30MHz-60MHz IF output range.
- NTSC, PAL, SECAM broadcast formats.
- DVB-C, DVB-T, ATSC and ISDB-T support.
External Links
QT1010 Product page at qantek-inc.com
Description of how to program the chip
Tuner context
The tuner has a global context for some variables. They can be used anytime in the init and set methods.
- reg31
- reg32
- reg34
- reg34_1
- reg34_2
- reg34_3
- reg34_4
- reg34_5
- reg34_6
- reg34_7
- reg34_8
- reg37
- reg38
Tuner Init
- write 0x80 to tuner register 1
- write 0x84 to tuner register 13
- write 0xB4 to tuner register 14*
- write 0x23 to tuner register 42
- write 0xDC to tuner register 44
- write 0x40 to tuner register 37
- write 0x00 to tuner register 30
- write 0x81 to tuner register 30
- loop 30 times
- read tuner register 37 into reg37
- if reg37 bit 8 is set
- break out of loop
- read tuner register 37 into reg37
- write 0x00 to tuner register 30
- write 0x23 to tuner register 42
- write 0x70 to tuner register 43
- write 0x08 to tuner register 38
- write 0x00 to tuner register 30
- write 0x82 to tuner register 30
- loop 30 times
- read tuner register 38 into reg38
- if reg38 bit 5 is set
- break out of loop
- read tuner register 38 into reg38
- write 0x00 to tuner register 30
- write 0x14 to tuner register 5
- write 0x44 to tuner register 6
- write 0x28 to tuner register 7
- write 0x0B to tuner register 8
- write 0xFD to tuner register 17*
- write 0x80 to tuner register 1
- write 0x80 to tuner register 1
- write 0x80 to tuner register 1
- write 0x80 to tuner register 1
- write 0x80 to tuner register 1
- write 0x80 to tuner register 1
- write 0x80 to tuner register 1
- write 0x80 to tuner register 1
- write 0x80 to tuner register 1
- write 0x80 to tuner register 1
- write 0x0D to tuner register 34
- write 0x00 to tuner register 30
- write 0xD0 to tuner register 30
- loop 30 times
- read tuner register 34
- if register 34 bit 6 is set
- break out of loop
- write 0x00 to tuner register 30
- write 0x40 to tuner register 6
- write 0xF0 to tuner register 22
- write 0x38 to tuner register 2
- write 0x19 to tuner register 3
- write 0x20 to tuner register 31
- write 0xE0 to tuner register 32
- write 0x00 to tuner register 30
- write 0x84 to tuner register 30
- loop 30 times
- read tuner register 31 into reg31
- if register 31 bit 7 is set
- break out of loop
- read tuner register 31 into reg31
- read tuner register 32 into reg32
- write 0x00 to tuner register 30
- write 0x3F to tuner register 2
- write 0x53 to tuner register 33
- read tuner register 33 into reg33
- write 0xFD to tuner register 17*
- write 0x34 to tuner register 5
- write 0x44 to tuner register 6
- write 0x31 to tuner register 7
- write 0x08 to tuner register 8
- write 0xD0 to tuner register 34
- write 0x00 to tuner register 30
- write 0xD0 to tuner register 30
- loop 30 times
- read tuner register 34
- if register 34 bit 6 is set
- break out of loop
- write 0x00 to tuner register 30
- read tuner register 34 into reg34_1
- write 0x32 to tuner register 7
- write 0xD0 to tuner register 34
- write 0x00 to tuner register 30
- write 0xD0 to tuner register 30
- loop 30 times
- read tuner register 34
- if register 34 bit 6 is set
- break out of loop
- write 0x00 to tuner register 30
- read tuner register 34 into reg34_2
- write 0x33 to tuner register 7
- write 0xD0 to tuner register 34
- write 0x00 to tuner register 30
- write 0xD0 to tuner register 30
- loop 30 times
- read tuner register 34
- if register 34 bit 6 is set
- break out of loop
- write 0x00 to tuner register 30
- read tuner register 34 into reg34_3
- write 0x34 to tuner register 7
- write 0xD0 to tuner register 34
- write 0x00 to tuner register 30
- write 0xD0 to tuner register 30
- loop 30 times
- read tuner register 34
- if register 34 bit 6 is set
- break out of loop
- write 0x00 to tuner register 30
- read tuner register 34 into reg34_4
- write 0x35 to tuner register 7
- write 0xD0 to tuner register 34
- write 0x00 to tuner register 30
- write 0xD0 to tuner register 30
- loop 30 times
- read tuner register 34
- if register 34 bit 6 is set
- break out of loop
- write 0x00 to tuner register 30
- read tuner register 34 into reg34_5
- write 0x36 to tuner register 7
- write 0xD0 to tuner register 34
- write 0x00 to tuner register 30
- write 0xD0 to tuner register 30
- loop 30 times
- read tuner register 34
- if register 34 bit 6 is set
- break out of loop
- write 0x00 to tuner register 30
- read tuner register 34 into reg34_6
- write 0x37 to tuner register 7
- write 0xD0 to tuner register 34
- write 0x00 to tuner register 30
- write 0xD0 to tuner register 30
- loop 30 times
- read tuner register 34
- if register 34 bit 6 is set
- break out of loop
- write 0x00 to tuner register 30
- read tuner register 34 into reg34_7
- write 0x38 to tuner register 7
- write 0xD0 to tuner register 34
- write 0x00 to tuner register 30
- write 0xD0 to tuner register 30
- loop 30 times
- read tuner register 34
- if register 34 bit 6 is set
- break out of loop
- write 0x00 to tuner register 30
- read tuner register 34 into reg34_8
- write 0x39 to tuner register 7
- write 0xD0 to tuner register 34
- write 0x00 to tuner register 30
- write 0xD0 to tuner register 30
- loop 30 times
- read tuner register 34
- if register 34 bit 6 is set
- break out of loop
- write 0xD0 to tuner register 30
- read tuner register 34 into reg34