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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 5862|回復(fù): 6
打印 上一主題 下一主題
收起左側(cè)

STM32 Camera二維碼識(shí)別源碼

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:255911 發(fā)表于 2017-11-30 22:06 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
可以進(jìn)來看看?下面有我自己的例程下載。

單片機(jī)源程序如下:
  1. /**
  2.   * @file    main.c
  3.   * @author  WB R&D Team - openmcu666
  4.   * @version V0.1
  5.   * @date    2016.08.24
  6.   * @brief   Main Program body
  7.   */

  8. #include "stm32f4xx.h"
  9. #include "Gpio.h"
  10. #include "usart.h"
  11. #include "delay.h"
  12. #include "stm32f429i_lcd.h"
  13. #include "ov7670.h"
  14. #include "ov2640.h"
  15. #include "ov5642.h"
  16. #include "mt9d111.h"
  17. #include "CamConfig.h"
  18. #include "sccb_bus.h"
  19. #include "RTC.h"
  20. #include "string.h"
  21. #include "QR_Decoder.h"

  22. //only for OV5642

  23. /*****************************************************************************
  24. **   Main Function  main()
  25. ******************************************************************************/
  26. int main(void)
  27. {
  28.         uint16_t temper;
  29.         char  qr_type_len=0;
  30.   short qr_data_len=0;
  31.   char qr_type_buf[10];
  32.   char qr_data_buf[512];
  33.   int addr=0;
  34.   int i=0,j=0;
  35.   char qr_num=0;
  36.        
  37.        
  38.         USART1_Init();
  39.         //LED_Init();
  40.   Key_Init();
  41.         BEEP_Init();
  42.         printf("\r\n");
  43.         printf("Hello Welcome.\r\n");
  44.         printf("Thank You For Choosing Our Products.\r\n");
  45.         printf("Thank You Very Much.\r\n");
  46.         printf("This Example Camera.\r\n");
  47.         printf("\r\n");
  48.         printf("DCMI Initialization...\r\n");
  49.         LCD_Init();
  50.         LCD_LayerInit();
  51.   LTDC_Cmd(ENABLE);
  52.   LCD_SetLayer(LCD_BACKGROUND_LAYER);  
  53.         LCD_SetTransparency(0xFF);
  54.         LCD_Clear(BLACK);
  55.         LCD_SetLayer(LCD_FOREGROUND_LAYER); //使用前景層
  56.   LCD_SetTransparency(0xFF);          //設(shè)置透明度
  57.   LCD_Clear_ARGB8888(0x40000000);
  58.    
  59.   LCD_SetTextColor_ARGB8888(0xFFFFFFFF);
  60.   LCD_DrawFullRect_ARGB8888(Frame_Width,Frame_Width);                              //繪制透明框
  61.   
  62.   LCD_DrawBox_ARGB8888(Frame_Width,Frame_Line_Length,Frame_Line_Size,0xD05CBDE7);  //繪制掃描框
  63.        
  64.         printf("Ok,Let's Go...\r\n");
  65.        
  66.         temper = ov7670_check();         //Camera是否為OV7670
  67.          
  68.         if (temper == 0x7673)
  69.         {
  70.                 printf("Cam ID : [0x%02x]\r\n",temper);
  71.                 if (ov7670_init())
  72.                 {
  73.                         printf("Init OV7670 reg Fail...\r\n");
  74.                   while (1)
  75.                   {
  76.                                
  77.                   }
  78.                 }
  79.                 else
  80.                 {
  81.                         printf("Init OV7670 reg OK...\r\n");
  82.                         printf("Show Camer Data...\r\n");

  83.                 }               
  84.                
  85.         }
  86.         else                                       
  87.         {
  88.     temper=ov2640_check();
  89.           
  90.                 if(temper==0x2642)                        //OV2640
  91.                 {
  92.                         if (ov2640_init())
  93.                   {
  94.                         printf("Init OV2640 reg Fail...\r\n");
  95.                         while (1)
  96.                         {}
  97.                   }
  98.                   else
  99.                  {
  100.                         printf("Cam ID : [0x%02x]\r\n",temper);
  101.                         printf("Init OV2640 reg OK...\r\n");
  102.                         printf("Show Camer Data...\r\n");

  103.                  }
  104.         
  105.          }
  106.                 else                                        //ov5642 or mt9d111
  107.     {
  108.                         temper=ov5642_check();
  109.                         printf("Cam ID : [0x%02x]\r\n",temper);
  110.                   if (temper==0x5642)//mt9d111_init
  111.                   {
  112.                           ov5642_init();
  113.                           printf("Init ov5642 reg OK...\r\n");
  114.                           printf("Show Camer Data...\r\n");       
  115.                   }
  116.                  else
  117.                  {
  118.                           printf("Init ov5642 reg Fail...\r\n");                               
  119.                                 while (1){}
  120.                  }
  121.     }
  122.         }
  123. //        if(RTC_Config())                                                           //初始化RTC
  124. //        {
  125. //          printf("\r\nLSE start failed\r\n");
  126. //        }
  127. //        RTC_Set_WakeUp(RTC_WakeUpClock_CK_SPRE_16bits,0);                //配置WAKE UP中斷,1秒鐘中斷一次,用于統(tǒng)計(jì)幀率
  128.   systick_delay_ms(100);
  129.         ov5642_auto_focus();
  130.         cam_start();
  131.        
  132.         while (1)
  133.   {
  134.     qr_num = QR_decoder();
  135.                  if(qr_num)
  136.       {
  137.          GPIO_SetBits(BEEP_GPIO_PORT,BEEP_GPIO_PIN);
  138.                                  systick_delay_ms(100);
  139.                                  GPIO_ResetBits(BEEP_GPIO_PORT,BEEP_GPIO_PIN);
  140.          //解碼的數(shù)據(jù)是按照識(shí)別條碼的個(gè)數(shù)封裝好的二維數(shù)組,這些數(shù)據(jù)需要
  141.          //根據(jù)識(shí)別條碼的個(gè)數(shù),按組解包并通過串口發(fā)送到上位機(jī)串口終端
  142.          for(i=0;i < qr_num;i++)
  143.          {
  144.            qr_type_len = decoded_buf[i][addr++];//獲取解碼類型長度
  145.                
  146. ……………………

  147. …………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼

所有資料51hei提供下載:
【02】紅龍429_Camera二維碼識(shí)別().rar (1.15 MB, 下載次數(shù): 62)


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

使用道具 舉報(bào)

沙發(fā)
ID:113953 發(fā)表于 2017-12-5 11:12 | 只看該作者
這可是旺寶電子的代碼。你是旺寶電子的?
回復(fù)

使用道具 舉報(bào)

板凳
ID:300493 發(fā)表于 2018-4-1 19:29 | 只看該作者
可不可以用到51單片機(jī)里
回復(fù)

使用道具 舉報(bào)

地板
ID:300858 發(fā)表于 2018-4-2 14:50 | 只看該作者
非常感謝 支持啊 多謝樓主
回復(fù)

使用道具 舉報(bào)

5#
ID:166329 發(fā)表于 2018-8-18 00:25 | 只看該作者
好東西下載學(xué)習(xí)下
回復(fù)

使用道具 舉報(bào)

6#
ID:166329 發(fā)表于 2018-8-18 00:25 | 只看該作者
不錯(cuò),學(xué)習(xí)了
回復(fù)

使用道具 舉報(bào)

7#
ID:488243 發(fā)表于 2019-7-23 11:01 | 只看該作者
很好,正好可以學(xué)習(xí)如何用STM32 來實(shí)現(xiàn)二維碼掃描,謝謝
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 欧美黄色网络 | 性色视频在线观看 | 国产成人高清在线观看 | 精品视频在线观看 | 91 在线| 91成人免费看 | 国产aaaaav久久久一区二区 | 中文字幕第十五页 | 2019精品手机国产品在线 | 91精品国产91久久综合桃花 | 亚洲综合伊人 | 992tv人人草 久久精品超碰 | 日韩成人精品在线 | 精品国产一区久久 | 精品国产91乱码一区二区三区 | 亚洲精品在线看 | 成人三区四区 | 亚洲精品av在线 | 91精品国产综合久久久动漫日韩 | 精品亚洲一区二区三区 | 日本精品一区二区三区视频 | 欧美日韩久久 | 国产精品一区二区三区四区 | 国产成人小视频 | av日韩精品| 午夜一级大片 | 国产精品久久久久久久久久免费 | 亚洲视频免费一区 | 国产精品免费视频一区 | 国产精品久久久久久福利一牛影视 | 一级在线观看 | 免费国产视频在线观看 | 国产日韩欧美综合 | 99久久99| 午夜免费观看网站 | av大全在线 | 一区二区播放 | 中文字幕亚洲视频 | 国产精品久久精品 | 久久精品国产免费 | 成人精品鲁一区一区二区 |