Комментарии
16
Вопрос по питанию. Можно ли было просто взять линейный стабилизатор напряжения LM7803 и пару конденсаторов?
Не пробовал. Он дает 3V, а это нижняя граница для ESP8266 (судя по даташиту 3.0-3.6V).
Лучше LM7833, главное не 78_l_33.
А чем лучше? Для меня это актуально.
У меня на 3.12В барахлит, на форумах тоже пописывают что к питанию сильно чувствителен модуль. Мож и не в этом проблема…
Попробовать просто же, ничего не сгорит на 3В
Попробовать просто же, ничего не сгорит на 3В
Сложность заключается в том, что UART у ESP8266 всего один
Полтора (на втором доступен только TX), а если не использовать SPI-Flash то два.
Второй находится по адресу 0x60000F00 и его TX торчит из GPIO2.
А что делать вот с этим «находится по адресу»? А то мне тут надо было инвертнуть уарт, но так и не понял как к регистрам получить доступ, пришлось транзистором инвертировать.
так и не понял как к регистрам получить доступ
С SDK идут примеры, открываете какой-нибудь examples/IoT_Demo/driver/uart.c и видите что-то такое:
WRITE_PERI_REG(UART_CONF0(uart_no), UartDev.exist_parity
| UartDev.parity
| (UartDev.stop_bits << UART_STOP_BIT_NUM_S)
| (UartDev.data_bits << UART_BIT_NUM_S));
Определения этих макросов — в include/eahle_soc.h и examples/IoT_Demo/include/driver/uart_register.h, это обычная запись в MMIO.
Хо хо, работает
Только почему-то в uart_register.h ошибка, там бит инверсии прописан как 12-й. А вот тут как 22-й, и это правильно
Только почему-то в uart_register.h ошибка, там бит инверсии прописан как 12-й. А вот тут как 22-й, и это правильно
uart_init(BIT_RATE_9600, BIT_RATE_9600);
SET_PERI_REG_MASK(UART_CONF0(0), BIT(22));
Хо хо, работает
Поздравляю (:
Только почему-то в uart_register.h ошибка
Я не сильно удивлён; конечно лучше сверяться с документацией.
data = nil data = string.char(ow.read(pin)) for i = 1, 8 do data = data .. string.char(ow.read(pin)) end crc = ow.crc8(string.sub(data,1,8))
Все же лучше так:
local data = {}
for i = 1, 8 do
table.insert(data, ow.read(pin))
end
local crc = ow.crc8(table.concat(data))
Я как-то все не могу уловить смысл использования локальных переменных и функций.
Так быстрее? Или это в целях экономии памяти?
Так быстрее? Или это в целях экономии памяти?
harizanov.com/wiki/wiki-home/three-channel-wifi-relaythermostat-board
Воот это, вероятно, очень хороший проект. Всё реализовано на ESP8266.
Воот это, вероятно, очень хороший проект. Всё реализовано на ESP8266.
www.artik.io/developer — Однако, новое поколение. Можно сделать регистрацию себе и получить устройство.
Сколько мА потребляет вся эта конструкция? Я так понимаю, что датчик CO2 находится во включенном состоянии все время?
На всех измерителях тока для USB пишет 0 мA(до 10), иногда мигает 50 — 100 ма Получается что жрет только ESP8266.
Работает двое суток от PowerBank емкостью ~ 5000 mAh, сожрал пока 35%.
Работает двое суток от PowerBank емкостью ~ 5000 mAh, сожрал пока 35%.
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.
Wi-Fi измеритель CO2 на ESP8266 + K-30