标题:
STM32F407+LWIP+OV2640摄像头+DCMI+SRAM源码
[打印本页]
作者:
cchit001
时间:
2018-1-11 22:15
标题:
STM32F407+LWIP+OV2640摄像头+DCMI+SRAM源码
采用STM407实现摄像头OV2640获取图片数据,通过TCP网络上传显示。图片最大分辨率1600*1200,这个分辨率下大概能实现每秒1~2帧左右的传输,速度还可以.原始工程文件,配合BOOTLOAD应用,如果不用BOOTLOAD,可以修改起始地址,直接下载应用。
单片机源程序如下:
/* Includes ------------------------------------------------------------------*/
#include "main.h"
/** @addtogroup Template_Project
* @{
*/
/* Private typedef -----------------------------------------------------------*/
/* Private define ------------------------------------------------------------*/
/* Private macro -------------------------------------------------------------*/
/* Private variables ---------------------------------------------------------*/
extern void vTestUartSend(void);
extern void LwIP_Periodic_Handle(__IO uint32_t localtime);
u32 u32_mark_debug = 0;
extern __IO uint32_t LocalTime;
extern unsigned char gu8NetRecMark;
extern void fudp_init(void);
extern void LwIP_Init(void);
extern void vDcmiDataInit(void);
extern void frame_deal(void);
extern void LwIP_Periodic_Handle(__IO uint32_t localtime);
extern void vDcmi_Set_Start(void);
extern void init_sysparameter_set(void);
extern void vNetTimeTask(void);
//extern static void SystemInit_ExtMemCtl(void);
/* Private functions ---------------------------------------------------------*/
/**
* @brief Main program
* @param None
* @retval None
*/
int main(void)
{
System_Setup();
init_sysparameter_set();
while(OV2640_Init())
{
Delay(200);
}
LwIP_Init();
fudp_init();
//vDcmiDataInit();
/* Infinite loop */
//vDcmi_Set_Start();//STM32F40_41xxx1
//SystemInit_ExtMemCtl();
while (1)
{
vPictureEndDeal();
vCmdUartDeal();
Led_Status_Handle();
vNetTimeTask();
frame_deal();
LwIP_Periodic_Handle(LocalTime);
}
}
/**
* @brief Inserts a delay time.
* @param nTime: specifies the delay time length, in milliseconds.
* @retval None
*/
void Delay(uint32_t nTime)
{
uint32_t u32TimePara = LocalTime + nTime;
while(u32TimePara>LocalTime);
}
void Led_Status_Handle(void)
{
u32_mark_debug++;
if((u32_mark_debug>1000000)&&(u32_mark_debug<2000000))
{
GPIO_SetBits(GPIOB,GPIO_Pin_12);//
GPIO_ResetBits(GPIOB,GPIO_Pin_13);//
u32_mark_debug = 3000000;
//delay_us(500);
//vTestUartSend();
}
else if((u32_mark_debug>4000000)&&(u32_mark_debug<5000000)){
GPIO_SetBits(GPIOB,GPIO_Pin_13);//复位结束
GPIO_ResetBits(GPIOB,GPIO_Pin_12);//
u32_mark_debug = 0;
/* Write the descriptor through the endpoint */
//USB_SIL_Write(EP1_IN, (uint8_t*) u8_lin, 2);
}
}
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
复制代码
所有资料51hei提供下载:
LIWP DCMI.rar
(12.04 MB, 下载次数: 166)
2018-1-11 22:15 上传
点击文件名下载附件
下载积分: 黑币 -5
作者:
lzts88
时间:
2018-7-7 15:31
谢谢分享,下载备用
作者:
easyming
时间:
2019-1-26 14:14
赞,下载学习一下!!!
作者:
yb1988001
时间:
2019-1-27 10:52
解压不了
作者:
ljw22676739
时间:
2019-3-3 00:44
根本就没使用到SRAM
作者:
jinniuxing88888
时间:
2020-5-28 09:13
谢谢分享!
作者:
hei8888
时间:
2020-11-4 14:30
用到内部SRAM?
作者:
xikree
时间:
2023-10-16 09:06
我用的udp,刚好可以参考下
作者:
王向来
时间:
2023-10-16 09:58
代码清楚
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1