Перейти к содержанию

BT201 схема подключения и управление из под ATMEGA8


Рекомендуемые сообщения

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

Hongfa для различных применений в Компэл. Большой выбор в наличии!

Компания HONGFA - это не только крупнейший в мире производитель электромеханических реле, но также производитель конденсаторов, вакуумных прерывателей, трансформаторов и низковольтного коммутационного оборудования. На складе КОМПЭЛ регулярно поддерживаются около 100 самых популярных позиций электромеханических реле. Реле Hongfa могут заместить многие изделия производства недоступных брендов. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Вот в общем поставил резистор.

47618489_MP3PlayerBT201.JPG.664701164d6e12a341d2d9c6fef8fdba.JPG

Разъёмы программирования мне тут не нужны. Микроконтроллер будет вставать через DIP Panel. Это собственно для того и делается. Разьёмы программирования нужны только для SMD микросхем в корпусе типа SOIC вот там да легче будет уже на месте прошивать, а с такими можно и так в панельке зашить и переставить.

7 минут назад, ДядяВован сказал:

Так а где контрасность?

Исправил.

Ссылка на комментарий
Поделиться на другие сайты

Тренды и лучшие решения для разработки зарядных станций в России

К 2029 году в России прогнозируется увеличение числа зарядных станций до 40 000. При этом отечественный рынок электротранспорта имеет климатические, потребительские и географические особенности. Для успешной разработки и построения инфраструктуры станций заряда в России идеальным вариантом является использование решений и электронных компонентов китайских производителей – лидеров индустрии электротранспорта и возобновляемой энергетики, которые уже представлены в КОМПЭЛ. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

17 минут назад, tifaso сказал:

Разъёмы программирования мне тут не нужны. Микроконтроллер будет вставать через DIP Panel.

По тому как идет процесс часто тебе придется перепаивать панели как на модуле так и на программаторе.

Ссылка на комментарий
Поделиться на другие сайты

Секреты депассивации литиевых батареек FANSO EVE Energy

Самыми лучшими параметрами по энергоемкости, сроку хранения, температурному диапазону и номинальному напряжению обладают батарейки литий-тионилхлоридной электрохимической системы. Но при длительном хранении происходит процесс пассивации. Разберем в чем плюсы и минусы, как можно ее избежать или уменьшить последствия и как проводить депассивацию батареек на примере продукции и рекомендаций компании FANSO EVE Energy. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

29 минут назад, tifaso сказал:

Микроконтроллер будет вставать через DIP Panel. Это собственно для того и делается. Разьёмы программирования нужны только для SMD

Это большое заблуждение!!! Если бы ты делал по готовой схеме и готовой прошивке, тогда да. Вставил в панель и забыл. Будет доступна новая версия - вытащишь, прошьёшь и снова забудешь.
Но ты же планируешь что-то программировать. Имей ввиду, что придется вынуть и вставить контроллер не одну сотню раз.
Посмотри плату моего контроллера, там есть разъем внутрисхемного программирования. Без него никак. В описании я пометил, что при повторении этой конструкции можно убрать этот разъем и не трассировать к нему дорожки. Поставить прошитый контроллер и всё. Но если бы я при написании fw постоянно переставлял контроллер... Подумай о времени, потраченном на перестановку в программатор, да и о возможности вставить не той стороной (это очень вероятно, примерно так на 31 раз, под вечер, когда будешь править программу и тыкать контроллер туда-сюда, "ключ" на чипе окажет не стой стороны), будет грустно.

 

16 минут назад, donec сказал:

придется перепаивать панели как на модуле так и на программаторе

Даже возможно придется менять контроллер в процессе. Выводы могут не выдержать такой механической нагрузки.

С уважением, Владимир

Ссылка на комментарий
Поделиться на другие сайты

50 минут назад, tifaso сказал:

Разъёмы программирования мне тут не нужны.

Зачем я это всё пишу... Решение уже принято и оно как всегда неизменно.

2 минуты назад, korsaj сказал:

таком режиме

Каком режиме? Он что, использует пин сброса?
Тогда только HVProg, ну или fuse-доктора постоянно "посещать".

С уважением, Владимир

Ссылка на комментарий
Поделиться на другие сайты

7 минут назад, oleg korotkov сказал:

На контрастность лучше поставить номинал побольше 20к или даже 50к

Хорошо учту замечание.

24240753_MP3PlayerBT201.JPG.92cba0f8d7ef7fb807d15c3f14e303e4.JPG

Изменено пользователем tifaso
Ссылка на комментарий
Поделиться на другие сайты

В 09.03.2024 в 01:52, bulat943 сказал:

изменил скорость модуля на 9600,проверки наличия sd-карты не делал,добавить не сложно,управление штатными кнопками

#include <SoftwareSerial.h>

#define MP3_TX_PIN (A1) // artuinio TX mp3 player RX (D5)
#define MP3_RX_PIN (A0) // artuinio RX mp3 player TX (D6)

SoftwareSerial mp3(MP3_RX_PIN, MP3_TX_PIN); // RX, TX
#include <LiquidCrystal.h>

// initialize the library by associating any needed LCD interface pin
// with the arduino pin number it is connected to
const int rs = 12, en = 11, d4 = 2, d5 = 3, d6 = 4, d7 = 5;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);
String str,trekname;
int a,usb,trek,trek_time,trek_all,trek_off,blu_sos,vol;
uint32_t tmr1;

void setup()
{
lcd.begin(20, 4);
Serial.begin(9600);
Serial.println();
mp3.begin(9600);
delay(500);
}

void loop()
{
if (millis() - tmr1 >= 1000) {tmr1=millis();mp3.print("AT+MK\r\n");}
if (Serial.available() > 0) {
str = Serial.readString();
Serial.println(str);
mp3.print(str+"\r\n");
lcd.setCursor(0, 1);
lcd.print(str+"\r\n");
}
if (mp3.available() > 0) {
str = mp3.readString();
Serial.println(str);//https://alexgyver.ru/lessons/strings/ работа со строками

  a = str.indexOf("M1+");if(a>=0){str.setCharAt(a+4, 'x');trek = strtol(str.substring(a+3,a+11).c_str(),NULL,0);}
  a = str.indexOf("M2+");if(a>=0){str.setCharAt(a+4, 'x');trek_all = strtol(str.substring(a+3,a+11).c_str(),NULL,0);}
  a = str.indexOf("MT+");if(a>=0){str.setCharAt(a+4, 'x');trek_time = strtol(str.substring(a+3,a+11).c_str(),NULL,0);}
  a = str.indexOf("MK+");if(a>=0){str.setCharAt(a+4, 'x');trek_off = strtol(str.substring(a+3,a+11).c_str(),NULL,0);}
  a = str.indexOf("MF+");if(a>=0){trekname = str.substring(a+4,a+15);}//
//lcd.clear();
lcd.setCursor(0, 0);lcd.print("Trek ");lcd.print(trek);lcd.print("(");lcd.print(trek_all);lcd.print(")");lcd.print("   ");
int minut = trek_time / 60;int secon = trek_time - (minut * 60);
int minut_off = trek_off / 60;int secon_off = trek_off - (minut_off * 60);
lcd.setCursor(0, 1);lcd.print("Time ");lcd.print(minut_off);lcd.print(":");
if(secon_off<10) lcd.print("0");
lcd.print(secon_off);lcd.print("(");lcd.print(minut);lcd.print(":");
if(secon<10) lcd.print("0");
lcd.print(secon);lcd.print(")");lcd.print("   ");
lcd.setCursor(0, 2);
lcd.print(trekname);
}

}

 

Выводится на дисплей WH2004 номер трека,в скобках количество треков,текущее время исполнения,в скобках общее время

Это всё конечно хорошо, но это всё чисто ардуино. Поэтому оно так работать на 8 меге работать не будет. Тем более что я пишу код в Atmel Studio 6. Библиотеки которые используются в этом коде в студии не работают, но оно и понятно. Ведь у меня же не ардуино. Так что тут нужен совсем другой подход к написанию прошивки.

Ссылка на комментарий
Поделиться на другие сайты

51 минуту назад, tifaso сказал:

Поэтому оно так работать на 8 меге работать не будет

И где ты раньше был? А я то об этом не знал и оно как-то работает

111.jpg.af0d6f295b2dab1c701afbd74518cdce.jpg

 

добавил в код только вывод на экран для демонстрации. А, и еще использовал аппаратный uart вместо программного

Теперь даже не знаю как быть. Будет работать код для ардуино на 8 меге или нет :unknw:

Изменено пользователем г0сть
Ссылка на комментарий
Поделиться на другие сайты

5 минут назад, г0сть сказал:

111.jpg.af0d6f295b2dab1c701afbd74518cdce.jpg

 

добавил в код только вывод на экран для демонстрации.

Теперь даже не знаю как быть. Будет работать код для ардуино на 8 меге или нет

Ну на картинке то что угодно можно нарисовать. Но в коде написать так просто не получится. Мне бы понять  как оно правильно записывается. 

Ссылка на комментарий
Поделиться на другие сайты

1 час назад, tifaso сказал:

Это всё конечно хорошо, но это всё чисто ардуино. Поэтому оно так работать на 8 меге работать не будет

Можно подробнее-почему не будет работать?

1 час назад, tifaso сказал:

Библиотеки которые используются в этом коде в студии не работают

Какие конкретно библиотеки в этом коде не работают в студии? Там одна-единственная библиотека если использовать аппаратный UART-работа с жки,все! Неужто студия не умеет управлять дисплеем?

Я все таки за то чтоб использовать софтовый UART,так как вы даже опыта с BT201 не имеете,тогда весь процесс обмена информации можно контролировать через аппаратный UART,как и сделано в изученной вами статье,а так вы будете как котенок,который ничего не видит-как вы узнаете что выдает модуль на ту или иную комманду

Но хозяин-барин! Выбор за вами,только не просите типа "что выдает модуль при подаче питания",ведь там много чего полезного приходит (наличие подключения флешки,сд-карты и прочее)

Ссылка на комментарий
Поделиться на другие сайты

1 минуту назад, bulat943 сказал:

подробнее-почему не будет работать?

Потому как библиотеки используемые в вашем коде не работают в Atmel Studio 6. Да и собственно оно не будет работать потому как Ардуино у меня здесь нет. А код и эти библиотеки чисто для Ардуино и без него оно работать не будет.

Ссылка на комментарий
Поделиться на другие сайты

Какая именно библиотека не работает у вас в атмел студии ?вывод на дисплей? В атмел студии свои библиотеки,кто вам запрещает использовать их?

Управление по UART сделано без библиотек,на чистом си,наверно ваша атмел студия особенная и си просто не понимает :)

 

Не пишите этот бред-атмеге8 вообще по барабано в какой среде написана программа,главное чтоб все было толково

Изменено пользователем bulat943
Ссылка на комментарий
Поделиться на другие сайты

16 минут назад, bulat943 сказал:

Какая именно библиотека не работает у вас в атмел студии ?вывод на дисплей?

Обе библиотеки используемые в вашем коде не работают.

Главное для дисплея библиотеку запустить. Потому как без неё дисплей не запустить. Без ардуины то ещё можно как то будет написать через UART, а вот дисплей без библиотеки не подключишь.

Изменено пользователем tifaso
Ссылка на комментарий
Поделиться на другие сайты

8 минут назад, tifaso сказал:

Обе библиотеки используемые в вашем коде не работают.

Так используйте библиотеки которые работают в студии,что вам мешает?

в любом случае что в ардуино,что в студии комманды управления плеером одинаковые

Со студией не работаю,это для меня темный лес!

Ссылка на комментарий
Поделиться на другие сайты

@bulat943 Ну я по тихоньку разберусь. Так что это я по маленьку сделаю. Нужно только разобраться с дисплеем. Ведь он же без библиотеки не запустится.

Ссылка на комментарий
Поделиться на другие сайты

Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...