Test Code for TEA5767 radio module
Dependencies: MODSERIAL TEA5767 mbed
main.h@3:7371a6837350, 2013-10-05 (annotated)
- Committer:
- edodm85
- Date:
- Sat Oct 05 11:49:03 2013 +0000
- Revision:
- 3:7371a6837350
- Parent:
- 0:de2102ba3121
Added header
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
edodm85 | 0:de2102ba3121 | 1 | #pragma once |
edodm85 | 0:de2102ba3121 | 2 | #include "mbed.h" |
edodm85 | 0:de2102ba3121 | 3 | #include "TEA5767.h" |
edodm85 | 0:de2102ba3121 | 4 | #include "MODSERIAL.h" |
edodm85 | 0:de2102ba3121 | 5 | |
edodm85 | 0:de2102ba3121 | 6 | DigitalOut led2(LED2); |
edodm85 | 0:de2102ba3121 | 7 | DigitalOut led4(LED4); |
edodm85 | 0:de2102ba3121 | 8 | |
edodm85 | 0:de2102ba3121 | 9 | //WATCHDOG |
edodm85 | 0:de2102ba3121 | 10 | class Watchdog |
edodm85 | 0:de2102ba3121 | 11 | { |
edodm85 | 0:de2102ba3121 | 12 | public: |
edodm85 | 0:de2102ba3121 | 13 | void kick(float s) |
edodm85 | 0:de2102ba3121 | 14 | { |
edodm85 | 0:de2102ba3121 | 15 | LPC_WDT->WDCLKSEL = 0x1; // Set CLK src to PCLK |
edodm85 | 0:de2102ba3121 | 16 | uint32_t clk = SystemCoreClock / 16; // WD has a fixed /4 prescaler, PCLK default is /4 |
edodm85 | 0:de2102ba3121 | 17 | LPC_WDT->WDTC = s * (float)clk; |
edodm85 | 0:de2102ba3121 | 18 | LPC_WDT->WDMOD = 0x3; // Enabled and Reset |
edodm85 | 0:de2102ba3121 | 19 | kick(); |
edodm85 | 0:de2102ba3121 | 20 | } |
edodm85 | 0:de2102ba3121 | 21 | |
edodm85 | 0:de2102ba3121 | 22 | void kick() |
edodm85 | 0:de2102ba3121 | 23 | { |
edodm85 | 0:de2102ba3121 | 24 | LPC_WDT->WDFEED = 0xAA; |
edodm85 | 0:de2102ba3121 | 25 | LPC_WDT->WDFEED = 0x55; |
edodm85 | 0:de2102ba3121 | 26 | } |
edodm85 | 0:de2102ba3121 | 27 | }; |
edodm85 | 0:de2102ba3121 | 28 | |
edodm85 | 0:de2102ba3121 | 29 | Watchdog w; |
edodm85 | 0:de2102ba3121 | 30 | |
edodm85 | 0:de2102ba3121 | 31 | |
edodm85 | 0:de2102ba3121 | 32 | |
edodm85 | 0:de2102ba3121 | 33 | // TEA5767 IC2 address is 0x60, reading is 0x61 |
edodm85 | 0:de2102ba3121 | 34 | #define W_ADDR 0xC0 |
edodm85 | 0:de2102ba3121 | 35 | |
edodm85 | 0:de2102ba3121 | 36 | MODSERIAL pc(USBTX,USBRX); |
edodm85 | 0:de2102ba3121 | 37 | |
edodm85 | 0:de2102ba3121 | 38 | TEA5767 radio(p28, p27, W_ADDR); // sda - scl |
edodm85 | 0:de2102ba3121 | 39 | bool new_send = false; |
edodm85 | 0:de2102ba3121 | 40 | char word[25]; |
edodm85 | 0:de2102ba3121 | 41 | float n = 0; |
edodm85 | 0:de2102ba3121 | 42 | char reg[5]; |
edodm85 | 0:de2102ba3121 | 43 | float StartFreq = 87.5; |
edodm85 | 0:de2102ba3121 | 44 | float EndFreq = 108; |
edodm85 | 0:de2102ba3121 | 45 | |
edodm85 | 0:de2102ba3121 | 46 | //RESET |
edodm85 | 0:de2102ba3121 | 47 | extern "C" void mbed_reset(); |
edodm85 | 0:de2102ba3121 | 48 | |
edodm85 | 0:de2102ba3121 | 49 | |
edodm85 | 0:de2102ba3121 | 50 | |
edodm85 | 0:de2102ba3121 | 51 | void parse_cmd(); |