Настройка STM32F407+OV7670 Друзья, если несложно подскажите мне по следующей проблеме:
Замысел такой: хочу гнать видео не толко на экран(возможно даже что на экран и вовсе не надо будет), а например на флешку или на ЮСБ, ну для начала решил выводить картинку на экран, но, не по DMA как в примере(пример постараюсь выложить ниже), а по прерыванию от DMA, чтобы можно было "щупать" реальные байты.
Так вот, настроил DMA от DCMI к буферу, но затем понял, что не хватает мне памяти на буфер, даже если оставить как в примере настройки камеры 320*240(компилятор ругался, когда я выделял 320*240*2 байт, как я не игрался с кучей и стэком), решил сделать проще, дабы 153К мне все равно нельзя выделять, тк на этом МК еще кое что будет крутиться, решил попробовать :
1)выводить на экран по половинке буферов, т.е. приходит прерывание , что буфер на 76800байт заполнен, я рисую, затем рисую вторую порцию по 2му прерыванию, перед 3м чищу экран и все заново. Все бы ничего, но на экране 2 идентичные картинки(по вертикали разделенные пополам), такое ощущение что после прерывания от половинки буфера камера рисует заново... Что это может быть? И в эту тему еще вопрос, такая концепция правильная, чтобы записать видео(делать это по прерыванию DMA)?
2)Решил уменьшить разрешение камеры и экрана, ну тут вообще тьма началась:
начал с экрана, посмотрел его регистры, игрался с ними, остановился на варианте когда я сделал задействованным 1/4 экрана, т.е. 160*120, для этого сделал ограничение по пикселям на 160*120 и на память экрана так же. Это верно, или можно чтобы картинка растянулась на весь экран но с др разрешением(или так реально только интерполируя пиксели соседи)?
Затем эту 1/4 экрана проверил, просто забивая в 2х циклах массив туда. Затем перешел к камере, ну тут пришло разочарование.
Сначала нашел регистр куда пишется down scaling , в примере стояло 1/2, что и понятно, дабы на выходе нам надо 320*240.
поставил 1/4, картинка стала как будто через строчной по горизонтали причем, с какими то пятнами непонятными вокруг объектов. Затем решил сделат, как в даташите пишут для QQVGA(даташит тоже выкладываю, дабы оттуда нельзя копировать, стр 9). Ну на экране таже каша, что и была. Регистров там много очень, просматривать все поочередно уже сил нет. а в примере вообще 168 строк записи значений по разным регистрам, более того пишут и в RESERVED. Пробовал оставить только настройки QQVGA, он 0-ли шлет, как будто не вкл. а где его включать не понял.
Вообщем по камере оснговной вопрос, как его настроить на разрешение 160*120! И где она включается!
P.S.:В архиве даташит и пример