From d6932ae70cfe81516c261fb888f55f716ed063fc Mon Sep 17 00:00:00 2001 From: fruchti Date: Sun, 12 Mar 2023 13:22:53 +0100 Subject: [PATCH 1/5] Update picture for gitea size --- photo.jpg | Bin 60832 -> 66945 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/photo.jpg b/photo.jpg index 0f0ad928035b689c96437138716bbc672ca718c0..29f18b913eef2b5ec4e4fe18f297c552a5fd875a 100644 GIT binary patch delta 55358 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 Q@oEJ|r#B2N;s0*}020^UfdBvi delta 49197 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 AP5=M^ From e43202a1131a05e4122f4836cc96c3ca37a5a704 Mon Sep 17 00:00:00 2001 From: fruchti Date: Sat, 24 Aug 2024 20:46:00 +0200 Subject: [PATCH 2/5] Use separate configuration header --- src/config.h | 9 +++++++++ src/ov7670.c | 13 +++++++------ src/ov7670.h | 7 ------- 3 files changed, 16 insertions(+), 13 deletions(-) create mode 100644 src/config.h diff --git a/src/config.h b/src/config.h new file mode 100644 index 0000000..d7d5693 --- /dev/null +++ b/src/config.h @@ -0,0 +1,9 @@ +#pragma once + +// Use 2D Floyd-Steinberg dithering. Uncomment to use simple line-wise +// dithering. +#define CONFIG_USE_2D_DITHERING + +// Use a primitive autoexposure by shifting each frames luminosity based on the +// ratio of white to black pixels in the previous frames +// #define CONFIG_USE_EXPOSURE_CORRECTION \ No newline at end of file diff --git a/src/ov7670.c b/src/ov7670.c index 377c613..b63e49f 100644 --- a/src/ov7670.c +++ b/src/ov7670.c @@ -1,6 +1,7 @@ #include "ov7670.h" #include "pinning.h" #include "debug.h" +#include "config.h" #define REG_GAIN 0x00 #define REG_BLUE 0x01 @@ -156,7 +157,7 @@ static volatile int FrameCount = 0; volatile int Camera_Captured = 0; static unsigned int BlackPixels = 0; -#ifdef CAMERA_USE_EXPOSURE_CORRECTION +#ifdef CONFIG_USE_EXPOSURE_CORRECTION static volatile int ExposureCorrection = 0; #endif @@ -327,7 +328,7 @@ void TIM1_CC_IRQHandler(void) CurrentLine = 0; FrameCount++; -#ifdef CAMERA_USE_EXPOSURE_CORRECTION +#ifdef CONFIG_USE_EXPOSURE_CORRECTION // Correct exposure across frames ExposureCorrection += 32 * BlackPixels / CAMERA_PIXELS - 16; #endif @@ -361,7 +362,7 @@ void TIM3_IRQHandler(void) DMA1_Channel6->CCR = DMA_CCR_PL | DMA_CCR_MINC | DMA_CCR_EN; TIM3->DIER |= TIM_DIER_CC1DE; -#ifdef CAMERA_USE_2D_DITHERING +#ifdef CONFIG_USE_2D_DITHERING static int8_t y_errors[CAMERA_IMAGE_WIDTH + 2] = {0}; if(CurrentLine == 0) @@ -374,7 +375,7 @@ void TIM3_IRQHandler(void) && (CurrentLine / 2 < CAMERA_IMAGE_HEIGHT)) { -#ifdef CAMERA_USE_2D_DITHERING +#ifdef CONFIG_USE_2D_DITHERING // Apply errors propagated from the previous line. Since y_errors is // overwritten during x error diffusion, this is done now. for(int i = 0; i < CAMERA_IMAGE_WIDTH; i++) @@ -388,7 +389,7 @@ void TIM3_IRQHandler(void) for(int i = 0; i < CAMERA_IMAGE_WIDTH; i++) { int pixel = LineBuffer[i + 15] + x_error; -#ifdef CAMERA_USE_EXPOSURE_CORRECTION +#ifdef CONFIG_USE_EXPOSURE_CORRECTION if(ExposureCorrection < 0) { if(pixel < -ExposureCorrection) @@ -421,7 +422,7 @@ void TIM3_IRQHandler(void) ~(0x80 >> (i % 8)); } -#ifdef CAMERA_USE_2D_DITHERING +#ifdef CONFIG_USE_2D_DITHERING // Error propagated to the next pixel in the same line x_error = error * 7 / 16; diff --git a/src/ov7670.h b/src/ov7670.h index 8ffa57d..80f8f3b 100644 --- a/src/ov7670.h +++ b/src/ov7670.h @@ -7,13 +7,6 @@ #define CAMERA_IMAGE_HEIGHT 144 #define CAMERA_PIXELS (CAMERA_IMAGE_WIDTH * CAMERA_IMAGE_HEIGHT) -// Use 2D Floyd-Steinberg dithering. Uncomment to use simple line-wise -// dithering. -#define CAMERA_USE_2D_DITHERING - -// Use a primitive autoexposure by shifting each frames luminosity based on the -// ratio of white to black pixels in the previous frames -// #define CAMERA_USE_EXPOSURE_CORRECTION extern volatile int Camera_Captured; From 3f6016106b41560e5168f8740b8dda031f8757d4 Mon Sep 17 00:00:00 2001 From: fruchti Date: Sat, 24 Aug 2024 20:49:45 +0200 Subject: [PATCH 3/5] Make camera sensor auto-exposure faster, usable --- src/config.h | 11 ++++++++++- src/ov7670.c | 50 ++++++++++++++++++++++++++++++++++++++++++-------- src/ov7670.h | 4 ++++ 3 files changed, 56 insertions(+), 9 deletions(-) diff --git a/src/config.h b/src/config.h index d7d5693..61e22c4 100644 --- a/src/config.h +++ b/src/config.h @@ -6,4 +6,13 @@ // Use a primitive autoexposure by shifting each frames luminosity based on the // ratio of white to black pixels in the previous frames -// #define CONFIG_USE_EXPOSURE_CORRECTION \ No newline at end of file +// #define CONFIG_USE_EXPOSURE_CORRECTION + +// Capture a frame when it is within this tolerance of 50% black pixels +#define CONFIG_TOLERANCE 0.2 + +// Wait this number of frames before a frame is eligible for beaing captured +#define CONFIG_MIN_FRAMES 2 + +// Maximum number of frames to wait. Capture even if it is not within tolerance. +#define CONFIG_MAX_FRAMES 15 \ No newline at end of file diff --git a/src/ov7670.c b/src/ov7670.c index b63e49f..23c0c99 100644 --- a/src/ov7670.c +++ b/src/ov7670.c @@ -1,7 +1,6 @@ #include "ov7670.h" #include "pinning.h" #include "debug.h" -#include "config.h" #define REG_GAIN 0x00 #define REG_BLUE 0x01 @@ -127,12 +126,12 @@ #define REG_HAECC2 0xa0 #define REG_SCALING_PCLK_DELAY 0xa2 #define REG_NT_CTRL 0xa4 -#define REG_BD50MAX 0xa5 -#define REG_HAECC3 0xa6 -#define REG_HAECC4 0xa7 -#define REG_HAECC5 0xa8 -#define REG_HAECC6 0xa9 -#define REG_HAECC7 0xaa +#define REG_AECGMAX 0xa5 +#define REG_LPH 0xa6 +#define REG_UPL 0xa7 +#define REG_TPL 0xa8 +#define REG_TPH 0xa9 +#define REG_NALG 0xaa #define REG_BD60MAX 0xab #define REG_STR_OPT 0xac #define REG_STR_R 0xad @@ -161,6 +160,9 @@ static unsigned int BlackPixels = 0; static volatile int ExposureCorrection = 0; #endif +volatile unsigned int Camera_BlackPixelCounts[] = {0}; +volatile int Camera_FinalFrameCount = -1; + static uint8_t ReadRegister(uint8_t reg) { while(I2C1->SR2 & I2C_SR2_BUSY); @@ -302,6 +304,24 @@ void Camera_Init(void) WriteRegister(REG_COM14, 0x18 | 1); WriteRegister(REG_SCALING_PCLK_DIV, 1); + // Set maximum gain ceiling + WriteRegister(REG_COM9, 0xca); + + // Disable auto-exposure, enable auto-gain + WriteRegister(REG_COM8, 0xec); + + // // Disable auto-gain, enable auto-exposure + // WriteRegister(REG_COM8, 0xe9); + + // Use histogram-based auto-exposure + WriteRegister(REG_NALG, 0x94); + + // Increase AEC speed: + // ‘Decrease TPL but not less than UPL [default 0xc1] and increase TPH but + // not bigger than LPH [default 0xf0]’ + WriteRegister(REG_TPL, 0xc1); + WriteRegister(REG_TPH, 0xf0); + // Enable VSYNC interrupts. TIM3 is enabled at the first VSYNC. FrameCount = 0; Camera_Captured = 0; @@ -334,14 +354,28 @@ void TIM1_CC_IRQHandler(void) #endif // Check if the last frame's exposure is reasonable - if(FrameCount >= 5) + if(!Camera_Captured && FrameCount >= CONFIG_MIN_FRAMES + && ( + (BlackPixels > (int)(CAMERA_PIXELS / 2 + - CAMERA_PIXELS * CONFIG_TOLERANCE) + && BlackPixels < (int)(CAMERA_PIXELS / 2 + + CAMERA_PIXELS * CONFIG_TOLERANCE)) + || FrameCount >= CONFIG_MAX_FRAMES + )) { Camera_Captured = 1; + Camera_FinalFrameCount = FrameCount; // Disable everything TIM3->CR1 = 0; TIM1->CR1 = 0; } + if(FrameCount < (int)(sizeof(Camera_BlackPixelCounts) + / sizeof(Camera_BlackPixelCounts[0]))) + { + Camera_BlackPixelCounts[FrameCount] = BlackPixels; + } + // Reset black pixel counter BlackPixels = 0; diff --git a/src/ov7670.h b/src/ov7670.h index 80f8f3b..1f3666c 100644 --- a/src/ov7670.h +++ b/src/ov7670.h @@ -2,6 +2,7 @@ #include #include "stm32f1xx.h" +#include "config.h" #define CAMERA_IMAGE_WIDTH 160 #define CAMERA_IMAGE_HEIGHT 144 @@ -10,4 +11,7 @@ extern volatile int Camera_Captured; +extern volatile unsigned int Camera_BlackPixelCounts[CONFIG_MAX_FRAMES]; +extern volatile int Camera_FinalFrameCount; + void Camera_Init(void); \ No newline at end of file From dc61ac7f85e6f3788bce240f6a1a7f89fea02184 Mon Sep 17 00:00:00 2001 From: fruchti Date: Sat, 24 Aug 2024 20:51:17 +0200 Subject: [PATCH 4/5] Optionally print debug information --- build-number.txt | 2 +- src/config.h | 5 ++++- src/main.c | 18 ++++++++++++++++++ src/main.h | 1 + 4 files changed, 24 insertions(+), 2 deletions(-) diff --git a/build-number.txt b/build-number.txt index 3bfc51a..11a42ac 100644 --- a/build-number.txt +++ b/build-number.txt @@ -1 +1 @@ -562 +615 diff --git a/src/config.h b/src/config.h index 61e22c4..7a9b0db 100644 --- a/src/config.h +++ b/src/config.h @@ -15,4 +15,7 @@ #define CONFIG_MIN_FRAMES 2 // Maximum number of frames to wait. Capture even if it is not within tolerance. -#define CONFIG_MAX_FRAMES 15 \ No newline at end of file +#define CONFIG_MAX_FRAMES 15 + +// Print number of black pixels per captured frame +// #define CONFIG_PRINT_EXPOSURE_DEBUG_INFORMATION \ No newline at end of file diff --git a/src/main.c b/src/main.c index 2085066..108a766 100644 --- a/src/main.c +++ b/src/main.c @@ -22,6 +22,24 @@ int main(void) extern uint8_t ImageBuffer[CAMERA_IMAGE_WIDTH * CAMERA_IMAGE_HEIGHT / 8]; Print_Image(ImageBuffer, CAMERA_IMAGE_WIDTH, CAMERA_IMAGE_HEIGHT, 2); +#ifdef CONFIG_PRINT_EXPOSURE_DEBUG_INFORMATION + char buffer[32] = "Finished after lines: "; + itoa(Camera_FinalFrameCount, buffer + strlen(buffer), 10); + + Print_Text(buffer, &Arpegius_32); + Print_Text("Black pixel counts:", &Arpegius_32); + for(int i = 0; i < Camera_FinalFrameCount; i++) + { + if(i >= (int)(sizeof(Camera_BlackPixelCounts) + / sizeof(Camera_BlackPixelCounts[0]))) + { + break; + } + itoa(Camera_BlackPixelCounts[i], buffer, 10); + Print_Text(buffer, &Arpegius_32); + } +#endif + LTP1245_FeedPaper(100); BMP_Save(ImageBuffer, CAMERA_IMAGE_WIDTH, CAMERA_IMAGE_HEIGHT); diff --git a/src/main.h b/src/main.h index fd56361..532c2d3 100644 --- a/src/main.h +++ b/src/main.h @@ -16,6 +16,7 @@ #include "font_arpegius_16.h" #include "font_arpegius_32.h" #include "bmp.h" +#include "config.h" int main(void); From 59b2022e4817f42784c1156e6bf92d33d5695aa1 Mon Sep 17 00:00:00 2001 From: fruchti Date: Wed, 18 Dec 2024 22:01:04 +0100 Subject: [PATCH 5/5] Print file number of stored image --- build-number.txt | 2 +- src/bmp.c | 20 +++++++++++--------- src/bmp.h | 2 +- src/config.h | 5 ++++- src/main.c | 26 +++++++++++++++++++------- src/print.c | 35 ++++++++++++++++++++++++++++++++++- src/print.h | 10 +++++++++- 7 files changed, 79 insertions(+), 21 deletions(-) diff --git a/build-number.txt b/build-number.txt index 11a42ac..02a6b26 100644 --- a/build-number.txt +++ b/build-number.txt @@ -1 +1 @@ -615 +641 diff --git a/src/bmp.c b/src/bmp.c index 0603975..5524ae0 100644 --- a/src/bmp.c +++ b/src/bmp.c @@ -64,7 +64,7 @@ void BMP_ConstructFilename(int number, char *buffer, unsigned int size) memcpy(buffer + size - 5, ".BMP", 5); } -void BMP_Save(uint8_t *data, int width, int height) +int BMP_Save(uint8_t *data, int width, int height) { FATFS fs; FIL fp; @@ -74,19 +74,19 @@ void BMP_Save(uint8_t *data, int width, int height) rc = f_mount(&fs, "", 0); if(rc) { - return; + return -1; } int file_number = BMP_PickFileNumber(); if(file_number == -1) - return; + return -2; char filename[13]; BMP_ConstructFilename(file_number, filename, sizeof(filename)); rc = f_open(&fp, filename, FA_WRITE | FA_CREATE_NEW); if(rc) { - return; + return -3; } // Rows must be padded to a multiple of 4 bytes @@ -121,24 +121,26 @@ void BMP_Save(uint8_t *data, int width, int height) }; if(f_write(&fp, &file_header, sizeof(file_header), &bw) != FR_OK) - return; + return -4; if(f_write(&fp, &core_header, sizeof(core_header), &bw) != FR_OK) - return; + return -4; if(f_write(&fp, &colour_table, sizeof(colour_table), &bw) != FR_OK) - return; + return -4; // BMPs are stored with their rows from the bottom upwards for(int y = height - 1; y >= 0; y--) { uint8_t *row = data + y * (width / 8); if(f_write(&fp, row, width / 8, &bw) != FR_OK) - return; + return -4; if(padding_length != 0) { if(f_write(&fp, padding_bytes, padding_length, &bw) != FR_OK) - return; + return -4; } } f_close(&fp); + + return file_number; } diff --git a/src/bmp.h b/src/bmp.h index 117d3aa..758db22 100644 --- a/src/bmp.h +++ b/src/bmp.h @@ -4,4 +4,4 @@ #include #include -void BMP_Save(uint8_t *data, int width, int height); +int BMP_Save(uint8_t *data, int width, int height); diff --git a/src/config.h b/src/config.h index 7a9b0db..2e255fb 100644 --- a/src/config.h +++ b/src/config.h @@ -18,4 +18,7 @@ #define CONFIG_MAX_FRAMES 15 // Print number of black pixels per captured frame -// #define CONFIG_PRINT_EXPOSURE_DEBUG_INFORMATION \ No newline at end of file +// #define CONFIG_PRINT_EXPOSURE_DEBUG_INFORMATION + +// Print file number if a file was saved to SD card +#define CONFIG_PRINT_FILE_NUMBER \ No newline at end of file diff --git a/src/main.c b/src/main.c index 108a766..cdffd8f 100644 --- a/src/main.c +++ b/src/main.c @@ -14,8 +14,7 @@ int main(void) Camera_Init(); LTP1245_Init(); - LTP1245_FeedPaper(100); - LTP1245_FeedPaper(10); + LTP1245_FeedPaper(50); while(!Camera_Captured); @@ -26,8 +25,9 @@ int main(void) char buffer[32] = "Finished after lines: "; itoa(Camera_FinalFrameCount, buffer + strlen(buffer), 10); - Print_Text(buffer, &Arpegius_32); - Print_Text("Black pixel counts:", &Arpegius_32); + Print_Text(buffer, &Hannover_Messe_Serif_26, Print_LeftAligned); + Print_Text("Black pixel counts:", &Hannover_Messe_Serif_26, + Print_LeftAligned); for(int i = 0; i < Camera_FinalFrameCount; i++) { if(i >= (int)(sizeof(Camera_BlackPixelCounts) @@ -36,14 +36,26 @@ int main(void) break; } itoa(Camera_BlackPixelCounts[i], buffer, 10); - Print_Text(buffer, &Arpegius_32); + Print_Text(buffer, &Hannover_Messe_Serif_26, Print_LeftAligned); } #endif - LTP1245_FeedPaper(100); + int file_number = BMP_Save(ImageBuffer, CAMERA_IMAGE_WIDTH, + CAMERA_IMAGE_HEIGHT); + (void)file_number; - BMP_Save(ImageBuffer, CAMERA_IMAGE_WIDTH, CAMERA_IMAGE_HEIGHT); +#ifdef CONFIG_PRINT_FILE_NUMBER + LTP1245_FeedPaper(10); + char buffer[32] = "- "; + if(file_number >= 0) + { + itoa(file_number, buffer + strlen(buffer), 10); + strcpy(buffer + strlen(buffer), " -"); + Print_Text(buffer, &Hannover_Messe_Serif_26, Print_Centred); + } +#endif + LTP1245_FeedPaper(80); LTP1245_FeedPaper(10); GPIOC->BRR = (1 << PIN_SUPPLY); diff --git a/src/print.c b/src/print.c index 82ad27a..9147d05 100644 --- a/src/print.c +++ b/src/print.c @@ -3,12 +3,45 @@ static uint8_t Print_Buffer[PRINT_BUFFER_LINES * LTP1245_LINE_BYTES]; -void Print_Text(const char *text, const Font_t *font) +int Print_MeasureTextWidth(const char *text, const Font_t *font) +{ + char c; + int width = 0; + while((c = *text++) != 0) + { + if(c > font->glyphcount + font->charoffset + || c < font->charoffset) + { + continue; + } + + width += font->glyphs[c - font->charoffset].width; + } + return width; +} + +void Print_Text(const char *text, const Font_t *font, + Print_TextAlignment_t alignment) { int height = font->height; memset(Print_Buffer, 0, LTP1245_LINE_BYTES * height); char c; int xpos = 0; + if(alignment != Print_LeftAligned) + { + int width = Print_MeasureTextWidth(text, font); + if(width < LTP1245_LINEWIDTH) + { + if(alignment == Print_Centred) + { + xpos = LTP1245_LINEWIDTH / 2 - width / 2; + } + else + { + xpos = LTP1245_LINEWIDTH - width; + } + } + } while((c = *text++) != 0) { if(c > font->glyphcount + font->charoffset diff --git a/src/print.h b/src/print.h index 168594d..d21b5f1 100644 --- a/src/print.h +++ b/src/print.h @@ -7,5 +7,13 @@ #define PRINT_BUFFER_LINES 64 -void Print_Text(const char *text, const Font_t *font); +typedef enum +{ + Print_LeftAligned, + Print_Centred, + Print_RightAligned, +} Print_TextAlignment_t; + +void Print_Text(const char *text, const Font_t *font, + Print_TextAlignment_t alignment); void Print_Image(const uint8_t *data, int width, int height, int scale); \ No newline at end of file