久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1447|回復: 1
打印 上一主題 下一主題
收起左側

求問stm32f4打開攝像頭會阻塞我下面的程序

[復制鏈接]
跳轉到指定樓層
樓主
ID:757274 發表于 2020-8-18 10:59 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
我打開攝像頭后能實時顯示圖像,但是不能運行下面的循環(比如我下面程序led燈閃爍),我看很多大佬程序都行,請問我這情況一般是什么問題

下面是主程序
#include "sys.h"
#include "delay.h"
#include "usart.h"
#include "led.h"
#include "key.h"
#include "lcd.h"

#include "timer.h"
#include "ov7670.h"
#include "dcmi.h"
#include "key.h"
#include "spi.h"
#include "touch.h"
#include "w25q128xx.h"

/**************************************************************************************
項目:
STm32F407簡易攝像機
                               
功能要求:
                1、基本拍照功能
                                                驅動OV7670攝像頭捕獲圖像 并在按下快門(某個按鍵)的同時
                                                將當前的圖像保存(不保存 顯示屏只是暫時定格當前畫面)
                                                拓展(將照片能通過SPI Flash--16MByte)
                       
                2、屏幕顯示功能
                                                開啟相機但未按下快門拍照時
                                                屏幕能實時顯示當前的畫面
                       
                拓展3、如果買到的屏幕是帶觸摸屏  驅動觸摸屏
                                                添加拍照后照片編輯功能(涂鴉 畫筆....)
                                       
                拓展4、加入無線傳輸模塊(WIfi)
                                                能將指定的照片數據上傳到上位機
                               
                拓展5、添加陀螺儀  對拍攝的照片進行簡易的矯正(圖像處理)                                                       
1 2要求是基本   3 4 5能做多少做多少(4要買額外的模塊)

探索者STM32F407開發板
作者:李欣
創建時間:2020.8.7
版本1.0
參考:正點原子,秉火
lcdid:9341
分辨率:320*240
電阻式觸摸屏
玻璃式觸摸屏
ov7670標準SCCB,兼容IIC
DCMI DMA SCCB FSMC
步驟:
1.初始化
2.開啟攝像頭捕獲
3.使能DMA,開啟搬運數據
4.lcd顯示圖像
************************************************************************************/

//清空屏幕并在右上角顯示"RST"
void Load_Drow_Dialog(void)
{
        LCD_Clear(WHITE);//清屏   
        POINT_COLOR=BLUE;//設置字體為藍色
        LCD_ShowString(lcddev.width-24,0,200,16,16,"RST");//顯示清屏區域
          POINT_COLOR=RED;//設置畫筆藍色
}

void ov7670_test(void)
{
        //u8 key=0;
        //DCMI_Start();         //開啟cam
        u8 key;
        u8 i=0;          
        while(1)
        {
                 key=KEY_Scan(0);
                tp_dev.scan(0);                  
                if(tp_dev.sta&TP_PRES_DOWN)                        //觸摸屏被按下
                {       
                         if(tp_dev.x[0]<lcddev.width&&tp_dev.y[0]<lcddev.height)
                        {       
                                if(tp_dev.x[0]>(lcddev.width-24)&&tp_dev.y[0]<16)Load_Drow_Dialog();//清除
                                else TP_Draw_Big_Point(tp_dev.x[0],tp_dev.y[0],RED);                //畫圖                                    
                        }
                }else delay_ms(10);        //沒有按鍵按下的時候             
                if(key==KEY0_PRES)        //KEY0按下,則執行校準程序
                {
                        LCD_Clear(WHITE);        //清屏
                    TP_Adjust();                  //屏幕校準
                        TP_Save_Adjdata();         
                        Load_Drow_Dialog();
                }
                i++;
                //if(i%20==0)LED0=!LED0;
        }
       
}
int main(void)
{
        //u32 a1;
        NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//設置系統中斷優先級分組2
        SystemInit();
        delay_Init();//初始化延時函數       
        usart1_init(115200);//串口1初始化                       
        LED_Init();//初始化LED
        LCD_Init();//LCD初始化         
        TIM1_PWM_Init();//定時器1初始化
        KEY_Initxx();//初始化按鍵
        EXTI_Initxx();//初始化按鍵中斷
        SPI_GPIOInit();//SPI模式0
        tp_dev.init();        //觸摸屏阻塞
        printf("OV7670初始化開啟");
        int ret=OV7670_Init();
        if(ret){
                LCD_ShowString(30,130,240,16,16,"OV7670 ERROR!!");
        }
        POINT_COLOR=RED;//設置字體為紅色
        //if(tp_dev.touchtype!=0XFF)LCD_ShowString(30,130,200,16,16,"Press KEY0 to Adjust");//電阻屏才顯示       
        /*
        if(tp_dev.touchtype!=0XFF)LCD_ShowString(30,130,200,16,16,"Press KEY0 to Adjust");//電阻屏才顯示
        //delay_ms(500);
        Load_Drow_Dialog();         //清屏        */
        /*while()//初始化OV7670
        {
                LCD_ShowString(30,130,240,16,16,"OV7670 ERROR!!");
                //LED0=0;
                delay_ms(200);
                LCD_Fill(30,130,239,170,WHITE);
                //LED0=1;
                delay_ms(200);
               
        }
        LCD_ShowString(40,150,200,20,20,"OV7670 OK!!!!!!");
        delay_ms(300);        //延時一
       
        //OV7670_Window_Set(12,176,240,320);//OV7670設置輸出窗口*/
        DCMI_Initxx();        //DCMI初始化
        DCMI_DMA_Init();//初始化DMA
        DCMI_Start();         //開啟cam
        //ov7670_test();
       
        while(1)
        {       
                //LCD_ShowString(30,60,210,20,20,"INIT SUCCESS!!!!");       
                //a1=DCMI_ReadData();
                printf("0x\r\n");
               
                LED1(0);
               
                delay_ms(300);
                LED1(1);
                delay_ms(300);
        }
       
}


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:757274 發表于 2020-8-18 11:11 | 只看該作者
有沒有大佬啊
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 免费观看成人性生生活片 | 日批日韩在线观看 | 久久精品亚洲精品 | 欧美在线视频网 | www.99re5.com | 国产精品视频一区二区三区四蜜臂 | 91久久久久 | 久久久国产一区二区三区 | 亚洲精品一区二区在线观看 | 亚洲精品片 | 亚洲精品一区二区在线观看 | 91色站 | 色999日韩| 18gay男同69亚洲网站 | 国内91在线 | 精品熟人一区二区三区四区 | 精品成人 | 黄色网址在线播放 | 操操日| 国产免费观看久久黄av片涩av | 亚洲免费一 | 中文字幕一区二区三区四区 | 成人网av | 日本成人一区二区 | 国产成人一区二区三区久久久 | 黄色精品视频网站 | 美女黄色在线观看 | 国产精品久久久久久久7电影 | 日韩精品一区二区三区中文在线 | 日韩一区二区三区av | 91视频中文 | 91精品国产麻豆 | 精品亚洲一区二区三区 | 91丨九色丨国产在线 | 成人精品一区亚洲午夜久久久 | 国产精品精品视频一区二区三区 | 成人乱人乱一区二区三区软件 | 成人免费看片又大又黄 | 亚洲一区视频在线 | 一级黄色毛片 | 精品在线一区 |