Нужна помощь с arduino nano

tzd
Offline
Зарегистрирован: 15.08.2020

Я решил сделать часы на ардуино. Купил адуино нано, модуль часов реального времени и дисплей. С питанием уже разобрался, но вот с кодом совсем всё сложно. Помогите, пожалуйста, переделать код (я нашел только для ардуино уно, а мне надо для нано) или исправить другой код. Вот первый код http://arduinolab.pw/index.php/2015/12/04/modul-chasov-realnogo-vremeni-..., а вот тот, который склеен из двух https://yadi.sk/d/7omCGZ8WBFJJ6g

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

tzd пишет:
я нашел только для ардуино уно, а мне надо для нано
Нет такого проекта на Uno, который бы не заработал на Нано безо всяких переделок (наоборот - возможно).

Так что можете смело считать, что никакой разницы между уно и нано  нет, и они одинаковые.

tzd
Offline
Зарегистрирован: 15.08.2020

Спасибо, но как теперь разобраться, что куда подключать?

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

tzd пишет:

Спасибо, но как теперь разобраться, что куда подключать?

Спросить у аффтара

b707
Offline
Зарегистрирован: 26.05.2017

Говорят тебе, уно и нано одинаковые, значит если написано подключить к пину3 на уно - на нано будет ровно так же пин 3

tzd
Offline
Зарегистрирован: 15.08.2020

Спасибо, но как найти, где это написано? 

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

tzd пишет:

Спасибо, но как найти, где это написано? 

Так, давайте разберёмся. Вы сказали, что для УНО у Вас нет проблем. Так или нет? Так вот с Нано ВСЁ ТОЧНО ТАКЖЕ. Нет никакой разницы!

Если же Вы и с УНО не можете сделать, то ... не понимаю, чего Вы от нас хотите. Кода Вы не дали, схему не дали, чем мы Вам можем помочь?

SieOK
Offline
Зарегистрирован: 29.03.2018

tzd пишет:

Спасибо, но как теперь разобраться, что куда подключать?

В библе wire.h которая в ардуине по умолчанию используют вывод на А4 и А5. А4 это SDA на часы, А5 это SCL часов. Ну и питание соответственно.

У меня лежит модуль Tiny RTC I2C module, память 24С32N и проц DS1307Z.

Распиновка та же. Через 4 дня готов протестить.

Для совсем танкистов:

1- Запускаем ардуино иде, подключаем плату arduino к юсб-порту

2- смотрим в диспетчере устройств на каком порту она висит (COM5, COM10...)

3- загружаем в плату скетч сканирования шины I2C:

#include <Wire.h>
 
void setup(){
    Wire.begin();
 
    Serial.begin(9600);
    while (!Serial);
    Serial.println("\nI2C Scanner");
} 

void loop(){
    byte error, address;
    int nDevices;
 
    Serial.println("Scanning...");
 
    nDevices = 0;
    for(address = 8; address < 127; address++ ){
        Wire.beginTransmission(address);
        error = Wire.endTransmission();
 
        if (error == 0){
            Serial.print("I2C device found at address 0x");
            if (address<16)
                Serial.print("0");
            Serial.print(address,HEX);
            Serial.println(" !");
 
            nDevices++;
        }
        else if (error==4) {
            Serial.print("Unknow error at address 0x");
            if (address<16)
                Serial.print("0");
            Serial.println(address,HEX);
        } 
    }
    if (nDevices == 0)
        Serial.println("No I2C devices found\n");
    else
        Serial.println("done\n");
 
    delay(5000);
}

4- смотрим адрес своей платы часов (вызываем монитор COM-порта - справа вверху перевернутый треугольник)

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

Там в скетче идет вывод на дисплей, лучше его закомментировать, вывести в монитор порта, тогда дисплей можно не покупать для тестирования