ИМС TEA5767 производимая компанией NXP применяется для конструирования низковольтных FM-радио тюнеров. В составеTEA5767 имеются внутренние цепи выделения промежуточной частоты и демодуляции принимаемого сигнала, что позволяет обходиться минимальным набором внешних компонентов.
Технические параметры TEA5767:
- Напряжение питания от 2,5 до 5 В
- Потребляемый ток при Uпит = 5 В 12,8 мА
- Чувствительность 2 мкВ
- Отношение сигнал/шум 54 дБ
- Разделение между стереоканалами 24 дБ
- Коэффициент гармоник 0,4 %
- Диапазон принимаемых частот от 76 МГц до 108 МГц
- Шины управления: I2C или 3-х проводная
- Функция автоматической настройки на принимаемые радиостанции
- Автоматическое стереодекодирование принятого сигнала
Радио модуль TEA5767 управляется всего двумя кнопками «+» и «-«, которые используются для поиска необходимой станции. Через 10 секунд после не активности кнопок, частота выбранного канала сохраняется в энергонезависимой памяти.
Библиотека — TEA5767.zip
#include <TEA5767.h> #include <Wire.h> #include <LiquidCrystal.h> #include <EEPROM.h> TEA5767 Radio; LiquidCrystal lcd(7, 6, 2, 3, 4, 5); unsigned long last_pressed,time; unsigned char buf[5]; int stereo,signal_level,search_mode = 0,search_direction,i,f_h,f_l,f,w; double current_freq; float f_new = (EEPROM.read(0)*256 + EEPROM.read(1)); byte a1[8]={0b00000,0b00000,0b00000,0b00000,0b00000,0b00000,0b00000,0b11111}; byte a2[8]={0b00000,0b00000,0b00000,0b00000,0b00000,0b00000,0b11111,0b11111}; byte a3[8]={0b00000,0b00000,0b00000,0b00000,0b00000,0b11111,0b11111,0b11111}; byte a4[8]={0b00000,0b00000,0b00000,0b00000,0b11111,0b11111,0b11111,0b11111}; byte a5[8]={0b00000,0b00000,0b00000,0b11111,0b11111,0b11111,0b11111,0b11111}; byte a6[8]={0b00000,0b00000,0b11111,0b11111,0b11111,0b11111,0b11111,0b11111}; byte a7[8]={0b00000,0b11111,0b11111,0b11111,0b11111,0b11111,0b11111,0b11111}; byte a8[8]={0b11111,0b11111,0b11111,0b11111,0b11111,0b11111,0b11111,0b11111}; void setup() { Serial.begin(9600); Wire.begin(); Radio.init(); Radio.set_frequency(f_new/10); Serial.begin(9600); lcd.begin(16,2); lcd.clear(); pinMode(12,INPUT); pinMode(11,INPUT); lcd.createChar(0,a1);lcd.createChar(1,a2);lcd.createChar(2,a3);lcd.createChar(3,a4);lcd.createChar(4,a5);lcd.createChar(5,a6);lcd.createChar(6,a7);lcd.createChar(7,a8); } void loop() { if (Radio.read_status(buf) == 1) { current_freq = floor (Radio.frequency_available (buf) / 100000 + .5) / 10; stereo = Radio.stereo(buf); signal_level = Radio.signal_level(buf); lcd.setCursor(0,0); lcd.print("FM "); lcd.print(current_freq);lcd.print(" MHz "); lcd.setCursor(0,1); if (stereo) lcd.print("STEREO "); else lcd.print("MONO "); for(i=0;i<8;i++){if(signal_level>=8+i){lcd.setCursor(8+i,1);lcd.write((uint8_t)i);}} } if (search_mode==1){if(Radio.process_search(buf, search_direction)==1){search_mode = 0;}} if (digitalRead(11)==HIGH) { search_mode = 1;time=millis();w=1; search_direction = TEA5767_SEARCH_DIR_UP; Radio.search_up(buf); delay(200); } if (digitalRead(12)==HIGH) { search_mode = 1;time=millis();w=1; search_direction = TEA5767_SEARCH_DIR_DOWN; Radio.search_down(buf); delay(200); } f = current_freq*10; f_h = highByte(f);f_l = lowByte(f); if(millis()-time>10000&&w==1){w=0; EEPROM.update(0,f_h);EEPROM.update(1,f_l);} delay(50);if(search_mode==1){lcd.clear();} }
Чем может быть вызвано Button btn_backward(2, PULLUP);’PULLUP’ was not declared in this scope
Что то не то с библиотекой.
Решил подготовить скетч к беседующей загрузке и вот.
Сейчас на другом компе,все прошло.В личку напишу для индивидуальной консультации. ок ??
Привет. Что надо изменить для подключения индикатора по 2 проводам ?
http://forum.rcl-radio.ru/misc.php?action=pan_download&item=45&download=1
#include «LiquidCrystal.h»
заменить на
#include «LiquidCrystal_I2C»
LiquidCrystal lcd(7, 6, 2, 3, 4, 5);
заменить на
LiquidCrystal_I2C lcd(0x27,16,2);
lcd.begin(16,2);
заменить на
lcd.init();
lcd.backlight();
Спасибо.
#include «LiquidCrystal.h» или #include
Ковычек сколько? << или <
<
А почему примеры в библиотеке с расширением pde ?
Это для старых версий IDE до 1.0
LiquidCrystal.h —в этой библиотеке.