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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

攝像頭OV7620(stm32f407)源代碼

  [復制鏈接]
跳轉到指定樓層
樓主
ID:314647 發表于 2018-4-23 17:34 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
廢話少說,直接上代碼

實驗器材:
    F407開發板
   
ATK_QR.lib功能:
    1,支持QR二維碼識別。(包括常見的UTF8編碼格式和特殊的GBK編碼格式)。
    2,支持EAN碼、39碼、交叉25碼、UPC碼、128碼等編碼方式的條碼識別。
    3,支持UTF8-OEM轉換輸出(需要客戶自己提供轉換碼表,OEM一般指GBK編碼)。
    4,內存占用:6K(算法內存)+ bmp_heigh* bmp_width(字節,8位灰度圖像內存)。
   
硬件資源:
    1,DS0、DS1
    2,蜂鳴器
    3,按鍵KEY0/KEY1/KEY2/KEY_UP
    4,LCD模塊
    5,OV2640攝像頭
    6,外部SRAM
   
實驗現象:
    編譯下載代碼,LCD顯示當前識別圖像。將二維碼、條形碼圖像放在攝像頭面前(提示:可
    以網上百度搜索二維碼、一維碼生成器生成各種格式的碼制),手動旋轉調節OV2640模塊
    鏡頭直至圖像清晰,則系統會掃面圖像并識別,如果識別到了則蜂鳴器會“滴”一聲,并在
    LCD顯示識別結果及發送給串口。通過按鈕(KEY2)結束識別。同時DS1閃爍表示OV2640圖像幀
    中斷,DS0閃爍速度慢表示識別圖像模式,閃爍快則表示已結束識別。
   
注意事項:
    1,移植ATK_QR.lib需將堆棧(Stack_Size)設置為0X1000或以上,在startup_stm32f40_41xx.s中設置。
    2,LCD識別結果可打開串口助手XCOM查看。


單片機源程序如下:
  1. #include "sys.h"
  2. #include "delay.h"
  3. #include "usart.h"
  4. #include "led.h"
  5. #include "key.h"
  6. #include "lcd.h"
  7. #include "timer.h"
  8. #include "dcmi.h"
  9. #include "sccb.h"
  10. #include "sram.h"
  11. #include "malloc.h"
  12. #include "w25qxx.h"
  13. #include "fontupd.h"
  14. #include "text.h"
  15. #include "atk_qrdecode.h"
  16. #include "string.h"
  17. #include "ff.h"


  18. //圖像
  19. u8 * Data;
  20. //采集完一幀標志
  21. u8 Flag=0;

  22. int main(void)
  23. {
  24.         int i=0,j=0;
  25.         //設置系統中斷優先級分組2
  26.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
  27.         //初始化延時函數
  28.         delay_init(168);  
  29.         //初始化串口波特率為115200
  30.         uart_init(115200);                        
  31.         //初始化LED
  32.         LED_Init();                                       
  33.         //LCD初始化  
  34.          LCD_Init();                                       
  35.         //按鍵初始化
  36.          KEY_Init();
  37.         FSMC_SRAM_Init();                          
  38.         //初始化內部內存池
  39.         my_mem_init(SRAMIN);               
  40.          //初始化外部內存池  
  41.          my_mem_init(SRAMEX);
  42.         //初始化W25Q128
  43.         W25QXX_Init();                                 
  44.         //設置字體為黑色
  45.         POINT_COLOR=BLACK;
  46.         //清屏        
  47.         LCD_Clear(WHITE);
  48.         
  49.         //檢查字庫
  50.         while(font_init())
  51.         {            
  52.                 LCD_ShowString(60,50,lcddev.width,16,16,(u8*)"Font Error!");
  53.                 delay_ms(200);                                 
  54.                 //清除顯示
  55.                 LCD_Fill(60,50,lcddev.width,66,WHITE);
  56.                 delay_ms(200);
  57.         }
  58.         Show_Str_Mid(0,20,(u8*)"二維碼識別實驗",16,lcddev.width);        
  59.         Show_Str(0,(lcddev.height+240)/2+4,240,16,(u8*)"識別結果:",16,1);
  60.         
  61.         //初始化SCCB接口
  62.         SCCB_GPIO_Config();
  63.         //OV7620寄存器初始化
  64.         //復位
  65.         SCCB_Write_Reg(0x12,0xA4);
  66. //        //測試條紋
  67. //        SCCB_Write_Reg(0x12,0x26);
  68.         //設置輸出分辨率240*240的八位灰度數據
  69.         SCCB_Write_Reg(0x17,0x43);
  70.         SCCB_Write_Reg(0x18,0xBB);
  71.         SCCB_Write_Reg(0x19,0x42);
  72.         SCCB_Write_Reg(0x1A,0xB9);
  73.         //10Khz計數,1秒鐘中斷一次
  74.         //TIM3_Int_Init(10000-1,8400-1);
  75.         
  76.         //為灰度圖像申請內存
  77.         Data=mymalloc(SRAMEX,57600);
  78.         //初始化DCMI
  79.         My_DCMI_Init();
  80.         //開啟DMA
  81.         DCMI_DMA_Init((u32)Data,57600,DMA_MemoryDataSize_Byte,DMA_MemoryInc_Enable);
  82.         //設置顯示窗口
  83.         LCD_Set_Window(0,0,640,480);
  84.         //開始傳輸
  85.         DCMI_Start();
  86.         
  87.         //設置字體為紅色
  88.          POINT_COLOR=RED;

  89.          while(1)
  90.         {        
  91.                 if(Flag)
  92.                 {
  93.                         //清除標志
  94.                         Flag=0;
  95.                         LED0=!LED0;
  96.                         for(j=0;j<240;j++)
  97.                         {
  98.                                 //設置光標
  99.                                 LCD_SetCursor(0,j+100);
  100.                                 //開始寫入GRAM
  101.                                 LCD_WriteRAM_Prepare();
  102.                                 for(i=0;i<240;i++)
  103.                                 {
  104.                                         if(Data[j*240+i]>140)
  105.                                         {
  106.                                                 LCD->LCD_RAM=65535;
  107.                                         }
  108.                                         else
  109.                                         {
  110.                                                 LCD->LCD_RAM=0;
  111.                                         }
  112.                                 }
  113.                         }
  114.                         //開啟傳輸
  115.                         DCMI_Start();
  116.                 }
  117.         }
  118. }
復制代碼

所有資料51hei提供下載:
攝像頭OV7620(stm32f407)代碼.rar (1.11 MB, 下載次數: 126)


評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

沙發
ID:354134 發表于 2018-6-19 11:06 | 只看該作者
學習一下,感謝分享
回復

使用道具 舉報

板凳
ID:365987 發表于 2018-8-15 20:55 | 只看該作者
代碼下載后編譯有一個錯誤,
main.c(15): error:  #5: cannot open source input file "atk_qrdecode.h": No such file or directory
把#include "atk_qrdecode.h"屏了之后好了。。。可以屏嗎
回復

使用道具 舉報

地板
ID:292503 發表于 2018-8-16 15:28 | 只看該作者

學習一下,感謝分享,很實用
回復

使用道具 舉報

5#
ID:398629 發表于 2018-9-16 13:55 | 只看該作者
感謝分享,很實用
回復

使用道具 舉報

6#
ID:600674 發表于 2019-8-16 17:16 | 只看該作者
能不能搞個圖像顯示的程序,能檢測出人的外形
回復

使用道具 舉報

7#
ID:100713 發表于 2020-1-14 15:20 | 只看該作者
學習一下,感謝分享
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久精品国产99国产精品 | 亚洲欧美综合 | 人人人艹 | 天天综合操 | 亚洲 精品 综合 精品 自拍 | 欧美精品一区二区三区在线播放 | 色本道 | 精品久久久久久久久久久久久久 | 91人人看 | 国产精品18hdxxxⅹ在线 | 亚洲精彩免费视频 | 看片91| 国产激情精品视频 | 亚洲免费人成在线视频观看 | 国产传媒在线播放 | 欧美日韩一区二区在线 | 亚洲高清在线观看 | 成人三级在线播放 | 高清亚洲 | 亚洲欧美日韩电影 | 久久久久久久夜 | 久久伦理电影 | 欧美成人精品 | 国产一级大片 | 日本成人一区二区 | 国产精品欧美精品 | 国产高清视频 | 亚洲一区二区三区视频 | 欧美精品网 | 国产在线精品一区二区 | 国产一级一级 | 免费超碰| 99爱国产 | 日本在线视频不卡 | 精品国产一区二区三区久久狼黑人 | 欧美亚洲国语精品一区二区 | 亚洲综合在线一区二区 | 色婷婷综合久久久中字幕精品久久 | 国产精品视频久久 | 成人av一区二区三区 | 91久色 |