Jump to content

Сохранение изображения - Raspberry Pi Pico


Recommended Posts

Здравствуйте. Подключаю камеру OV7670 к микроконтроллеру Raspberry Pi Pico.
Использую библиотеку https://github.com/adafruit/Adafruit_CircuitPython_OV7670

import board
from adafruit_ov7670 import OV7670
import time
import digitalio

cam = OV7670(
    bus,
    data_pins=[board.PCC_D0, board.PCC_D1, board.PCC_D2, board.PCC_D3, board.PCC_D4, board.PCC_D5, board.PCC_D6, board.PCC_D7],
    clock=board.PCC_CLK,
    vsync=board.PCC_DEN1,
    href=board.PCC_DEN2,
    mclk=board.D29,
    shutdown=board.D39,
    reset=board.D38,
)
cam.size = OV7670_SIZE_DIV16

buf = bytearray(2 * cam.width * cam.height)

try:
    with open("photobin.txt", "wb") as photo:
        while True:
            temp = cam.capture(buf)
            photo.write(temp)
            photo.flush()
            time.sleep(1)
except OSError as e:
    print("error")

Хочу записать в файл данные изображения, но файл пустой. Пожалуйста, подскажите, что я делаю не правильно?
 

Link to comment
Share on other sites

Поменял ПИНы под мк Raspberry Pi Pico. Также добавил светодиод для проверки работоспособности и он не мигает.

Инстанс не проходит, не могу создать экземпляр класса камеры.

Пожалуйста, подскажите, где я ошибся?

import sys
import time
import digitalio
import busio
import board
from adafruit_ov7670 import OV7670

cam = OV7670(
    bus,
    data_pins=[board.GP12, board.GP13, board.GP14, board.GP15, board.GP16, board.GP17, board.GP18, board.GP19],
    clock=board.GP11,
    vsync=board.GP7,
    href=board.GP21,
    mclk=board.GP20,
    shutdown=None,
    reset=board.GP10
) 

led = digitalio.DigitalInOut(board.LED)
led.direction = digitalio.Direction.OUTPUT
led.value = True
time.sleep(1000)

cam.size = OV7670_SIZE_DIV16

buf = bytearray(2 * cam.width * cam.height)
            
try:
    with open("photobin.txt", "wb") as photo:
        while True:
            temp = cam.capture(buf)
            photo.write(temp)
            photo.flush()
            time.sleep(1)

except OSError as e:
    print("error")

 

Link to comment
Share on other sites

Реле, разъемы, вентиляторы, корпуса, микросхемы, конденсаторы и много другое!

Скидки до 20% на сайте электронного дискаунтера ТМ Электроникс.

Бесплатная доставка в любую точку России + кэшбэк 15%.

Всем кто сделает заказ в сентябре, начислим 3000 баллов на аккаунт. 1 балл = 1 рублю!

Подробнее

Posted (edited)

@Антон Приймак  При создании камеры используется переменная bus, которая нигде не объявлена и встречается в первый раз, это ошибка.

Сначала надо создать объект bus, потом уже его можно пользовать.

bus = busio.I2C(board.GP9, board.GP8)

 

Edited by Yurkin2015
Link to comment
Share on other sites

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Сообщения

    • Все на схеме. Смотрите номера выводов на ЛЕ5 и даташит от неё и поймете. Со схемой Псурцева или схемой sulphur сравните. Сами ответите на свой же вопрос.
    • напишет Мастер в Квитанции за ремонт!  ставь гранитный .... во весь рост ... 
    • Нет спасибо. Я не собираюсь путать между собой модули. У меня всё строится так что всё что касается плеера находится на плате плеера, то что касается радио находится на плате радио и так далее. Чтоб в случае чего модуль можно было снять и починить или заменить не затрагивая другие узлы. А тут вот я скажу так я делаю всё таким образом как вижу в своём представлении. И с такими возможностями какие хочется чтобы было в моём устройстве. Ну исполнение всего задуманного я делаю так какие решения нахожу, то и использую. Разбираясь во всех этих деталях схемы.
    • artem4y87, я даже фразу не понял в представленной записи. Куда уж услышать посторонний шум. Марку микрофона и усилителя, и схему куда подключаются Ваши колонки, пож. в стидию. Есть подозрение, что в этих 2-х местах их подключали правильно, а у Вас может быть отличие в подключении.Микрофон всегда использовался Ваш? И ещё. Какое активное сопротивление Ваших колонок? Если в одно место возили усилитель и всё ОК, то в другое нужно было везти и колонки.
    • На ней и одну фазу сделать нельзя. Какое она вообще имеет отношение к ПЧ? Вот что мешает пойти и прочесть теорию по ПЧ? Хотя бы в части формирования псевдосинуса на выходе. Изучить вот такие веселые картинки:   На какой? Этот?   Ну так первая страница даташита:
    • @Obergan Alexey Только вот jlc перестали отправлять платы в РФ и РБ, приходится заказывать на алике через посредника. Сам недели две назад заказал платы 100х137,  5 штук обошлись в ~25$ вместе с доставкой. Думаю, если заказывать непосредственно на производстве, то стоило бы еще чуть дешевле.
    • А вы  так и не ответили .На мой вопрос. Восьмикрут  для информации можно и не больше. Я не сказал что AD9833 можно сделать 3 фазы.
×
×
  • Create New...