Відповісти

Введіть повідомлення і натисніть Надіслати
Параметри

Назад

Огляд теми (нові повідомленні вгорі)

Wavgat
2019-08-27 07:35:40

Всем огромное спасибо за помощь.

Смена аддона решила проблему вывода в консоль.

Watchdog
2019-08-24 16:59:17

Я бы столько кофе не выпил.  smile

renoshnik
2019-08-24 12:26:19

lgt_nano  -  аддон по ссылке в описании

Wavgat
2019-08-24 12:25:34

Про мини остался на работе. К нему подключена плата передней панели от спутникового тюнера. На фотографии аналогичная плата, только подключена к другому МК (ну не фотографировал я свою поделку).

Фотографию прикрепил, чтобы понятнее было на какой ноге что висит.

Wavgat
2019-08-24 12:22:49

RX, TX, 6 и 7 пины выведены на те же ноги, что и у меня (специально прозванивал).
А какой аддон Вы используете? Какой процессор выбираете?

renoshnik
2019-08-24 12:20:11

Я уже запутался...
1 - пишите, что не выводит инфу в порт...
2 - пишите, что Про Мини

а присылаете, что-то не то ....

Wavgat
2019-08-24 11:52:08

Плату использовал такую: плата

Примерная схема платы: схема

Wavgat
2019-08-24 11:46:27
#define LED_DELAY 4 // Время показа каждого разряда (при увеличении будет заметно мерцание)
#define LED_FA     6 //PWM - Пин FA на плате: первый символ (разряд единиц)
#define LED_FB     9 //PWM - Пин FB на плате: второй символ (разряд десятков)
#define LED_FC    10 //PWM - Пин FC на плате: третий символ (разряд сотен)
#define LED_FD    11 //PWM - Пин FD на плате: четвертый символ (разряд тысяч)
#define LED_DATA   2 // - Пин DA на плате
#define LED_CLCK   3 //PWM - Пин CK на плате
#define BUTTON_K0    7 // - Пин K0 на плате
#define BUTTON_K1    8 // - Пин K1 на плате

void setup() {
// В COM-порт будем записывать 
  Serial.begin(115200); // Скорость работы COM-порта
  Serial.print("void setup - start");
  Serial.println();
// Установим нужные порты на выход
  pinMode(LED_FA, OUTPUT); // для красного светодиода
  pinMode(LED_FB, OUTPUT); // для красного светодиода
  pinMode(LED_FC, OUTPUT); // для красного светодиода
  pinMode(LED_FD, OUTPUT); // для красного светодиода
  analogWrite(LED_FA,LOW); // в отличии от 9,10 и 11 - нужно инвертировать сигнал и использовать analogWrite
  digitalWrite(LED_FB,HIGH);
  digitalWrite(LED_FC,HIGH);
  digitalWrite(LED_FD,HIGH);
  pinMode(LED_DATA, OUTPUT);
  pinMode(LED_CLCK, OUTPUT);
  pinMode(BUTTON_K0, INPUT); // для считывания кнопок на линии К0
  pinMode(BUTTON_K1, INPUT); // для считывания кнопок на линии К1
}

void loop() {

  Serial.print("void loop");
  Serial.println();

  analogWrite(LED_FA,HIGH);//включим индикатор на 6-ом пине
  byte buttonsLine0 = digitalRead(BUTTON_K0);
  byte buttonsLine1 = digitalRead(BUTTON_K1);
  Cur_digit1 = 0b11000000;
  if ( buttonsLine0 == LOW ) {
    Serial.print("Button FA-K0");
    Cur_digit1 = 0b11111001;
    if ( buttonsLine1 == LOW ) {
      Serial.print(" FA-K1");
      Cur_digit1 = 0b10100100;
    }
    Serial.println();
  } else
  if ( buttonsLine1 == LOW ) {
    Serial.print("Button FA-K1");
    Serial.println();
    Cur_digit1 = 0b10110000;
  }
  shiftOut(LED_DATA, LED_CLCK, MSBFIRST, Cur_digit1);
  delay(LED_DELAY);
  analogWrite(LED_FA,LOW);

  digitalWrite(LED_FB,LOW);
  Cur_digit1 = 0b11000000;
  buttonsLine0 = digitalRead(BUTTON_K0);
  buttonsLine1 = digitalRead(BUTTON_K1);
  if ( buttonsLine0 == LOW ) {
    Serial.print("Button FB-K0");
    Cur_digit1 = 0b11111001;
    if ( buttonsLine1 == LOW ) {
      Serial.print(" FB-K1");
      Cur_digit1 = 0b10100100;
    }
    Serial.println();
  } else
  if ( buttonsLine1 == LOW ) {
    Serial.print("Button FB-K1");
    Serial.println();
    Cur_digit1 = 0b10110000;
  }
  shiftOut(LED_DATA, LED_CLCK, MSBFIRST, Cur_digit1);
  delay(LED_DELAY);
  digitalWrite(LED_FB,HIGH);//выключим индикатор на 9-ом пине

//=========
//  По аналогии для FC и FD
//=========

}

Так же пробовал оставить только FB и FC (второй и третий разряды индикатора)
И, как оказалось, порядок разрядов я попутал, т.е. вместо 0001 (для единицы) у меня выводилось 1000. В рабочем скетче уже поправил, а в тестовом осталось так как есть.

renoshnik
2019-08-24 11:32:47
Wavgat пише:
renoshnik пише:

Прочитал я внимательно.

Просты Вы писали про нано, а у меня про мини.

я писал про микроконтроллер на плате, а реализация в железе это второстепенно.


Wavgat пише:
renoshnik пише:

Интересная у вас плата...

Могу дать поиграться

Скиньте пример кода для проверки на моей плате.

Wavgat
2019-08-24 11:30:10
renoshnik пише:

Прочитал я внимательно.

Просты Вы писали про нано, а у меня про мини.

renoshnik пише:

Интересная у вас плата...

Могу дать поиграться

renoshnik
2019-08-24 09:59:08

" Вам скинуть весь мой скетч? Или достаточно того, что я использовал стандартные конструкции: "
давайте какой-то свой кусок кода для проверки, который у вас не работает, а я попробую его запустить у себя.

renoshnik
2019-08-24 09:57:34

Интересная у вас плата...
У меня платы с МК LGT8F328P все БЕЗ кварца, т.к. они работают на 32МГц...
Возможно бутлоадер настраивает внутренний ген. на 32МГц с делителем 2, так получают 16МГц... и это влияет на синхронизацию с монитором...

renoshnik
2019-08-24 09:47:58

" Вы наверно невнимательно прочитали первый пост. У меня WavGat Pro Mini. Подкупила низкая цена. Тот факт, что это не совсем аналог, я осознал уже после того, как заказал и оплатил, когда начал изучать литературу по нему. Плата пришла и сегодня я все-таки закончил писать скетч под нее (нашел все ошибки). Просто из-за отсутствия монитора, отлаживать пришлось на ощупь. "

Прочитал я внимательно.
про МК спросил т.к. есть варианты с LGT8F328P и с LGT8F328D .
В первом случае МК более продвинутый и некоторые библиотеки с ним не работают т.к. более навороченная в плане настройки таймеров.
Второй вариант больше совместим со стандартной ардуинкой.

renoshnik
2019-08-24 09:42:21
Wavgat пише:

И еще вопрос. Кто-нибудь может объяснить мне, почему на всех картинках Arduino Pro Mini 6 пин подписан как PWM, если он может работать только как аналоговый вход? Может я чего-то не знаю?

Может я чего-то не знаю ?

По моим данным пин 6 "привязан" к нулевому таймеру ...

Підвал форуму