钟楼网站建设,请打开123720的网站百度,网站建设企业服务商,网页设计与制作教程ps简易照相机 1、代码获取2、代码修改3、API简介3.1 图片转化保存3.2 内存释放4 、代码修改4.1 主函数代码5 、照片展示使用Maix Bit的摄像头、SD卡、文件系统和LCD实现一个简易的照相机。使用BOOT按键进行拍照,之后将照片存储在SD卡上面。 SPI and DMAC usage: SPI0 - LCD SPI1… 简易照相机 1、代码获取2、代码修改3、API简介3.1 图片转化保存3.2 内存释放 4 、代码修改4.1 主函数代码 5 、照片展示 使用Maix Bit的摄像头、SD卡、文件系统和LCD实现一个简易的照相机。使用BOOT按键进行拍照,之后将照片存储在SD卡上面。 SPI and DMAC usage: SPI0 - LCD SPI1 - SD card SPI2 - unused SPI3 - Flash DMAC Channel 0 - LCD DMAC Channel 1 - SD card 1、代码获取
在我前面一篇博客里面简述了代码如何下载以及使用。https://blog.csdn.net/weixin_45488643/article/details/109990336如有需要自行查看。
2、代码修改
首先自己先创建一个新的工程文件,然后将dvp2sdcard文件夹下面的代码复制到自己创建的文件夹下面: 安装依赖库文件: 比较重要的一点,开启控制: 打开board_config.h 我自己使用的是Maix bit 开发板,所以选择如下配置文件,根据需要选择自己的开发板硬件配置。
3、API简介 LCD、SD和文件系统的常用API前面的博客已经介绍过了,如有兴趣,自行查看。
3.1 图片转化保存
int rgb565tobmp(uint8_t *buf,int width,int height, const char *filename)*buf 保存的数据; width、height图片大小;*filename图片保存路径 3.2 内存释放
void iomem_free(void *paddr)*paddr 空间地址 4 、代码修改 使用标志来保存数据。
static uint32_t NUM = 0;
char buf[80];目前可以保存9999张照片,保存更多自行修改。
4.1 主函数代码
#include stdio.h
#include string.h#include "board_config.h"
#include "dvp.h"
#include "ff.h"
#include "fpioa.h"
#include "gpiohs.h"
#include "iomem.h"
#include "lcd.h"
#include "nt35310.h"
#include "ov2640.h"
#include "ov5640.h"
#include "plic.h"
#include "rgb2bmp.h"
#include "sdcard.h"
#include "sysctl.h"
#include "uarths.h"/* SPI and DMAC usage** SPI0 - LCD* SPI1 - SD card* SPI2 - unused* SPI3 - Flash** DMAC Channel 0 - LCD* DMAC Channel 1 - SD card**/#define KEY_GPIONUM 0uint32_t *g_lcd_gram0;
uint32_t *g_lcd_gram1;volatile uint8_t g_dvp_finish_flag;
volatile uint8_t g_ram_mux;
volatile uint8_t g_save_flag;void irq_key(void *gp) { g_save_flag = 1; }static int on_irq_dvp(void *ctx) {if (dvp_get_interrupt(DVP_STS_FRAME_FINISH)) {/* switch gram */dvp_set_display_addr(g_ram_mux ? (uint32_t)g_lcd_gram0: (uint32_t)g_lcd_gram1);dvp_clear_interrupt(DVP_STS_FRAME_FINISH