一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

雅特力AT32 MCU基于Zbar解碼庫的QR Decode應用程序

雅特力 AT32 MCU ? 2023-10-10 09:50 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

二維碼(2-dimensional bar code)是用某種特定的幾何圖形按一定規(guī)律在平面(二維方向上)分布的黑白相間的圖形記錄數據符號信息的;在代碼編制上巧妙地利用構成計算機內部邏輯基礎的“0”、“1”比特流的概念,使用若干個與二進制相對應的幾何形體來表示文字數值信息,通過圖象輸入設備或光電掃描設備自動識讀以實現信息自動處理。二維碼由于自身設計特點,可包含更多的信息量,編碼信息范圍更廣,并且由于二維碼具有一定的校驗功能等。同時還具有對不同行的信息自動識別功能、以及處理圖形旋轉變化點,二維碼譯碼更加準確,其誤碼率為千萬分之一。下圖為QR二維碼構造框圖。圖1. QR碼符號的結構671212c2-670f-11ee-9788-92fbcf53809c.png1) 位置探測圖形、位置探測圖形分隔符:用于對二維碼的定位,對每個QR碼來說,位置都是固定存在的,只是大小規(guī)格會有所差異;這些黑白間隔的矩形塊很容易進行圖像處理的檢測。2) 定位圖形:這些小的黑白相間的格子就好像坐標軸,在二維碼上定義了網格。3) 格式信息:表示該二維碼的糾錯級別,分為L、M、Q、H。4) 數據區(qū)域:使用黑白的二進制網格編碼內容。8個格子可以編碼一個字節(jié)。5) 版本信息:即二維碼的規(guī)格,QR碼符號共有40種規(guī)格的矩陣(一般為黑白色),從21x21(版本1),到177x177(版本40),每一版本符號比前一版本每邊增加4個模塊。6) 糾錯碼字:用于修正二維碼損壞帶來的錯誤。

二維碼解碼流程

了解了QR二維碼的構造,下面我們來了解解碼流程,QR二維碼的解碼流程如下圖2所示。圖2. QR碼譯碼步驟67276b22-670f-11ee-9788-92fbcf53809c.png1) 定位并獲取符號圖像。深色與淺色模塊識別為“0”與“1”的陣列。2) 識讀格式信息(如果需要,去除掩模圖形并完成對格式信息模塊的糾錯,識別糾錯等級與掩模圖形參考)。3) 識讀版本信息,確定符號的版本。4) 用掩模圖形參考,從格式信息中得出對編碼區(qū)的位圖進行異或處理消除掩模。5) 根據模塊排列規(guī)則,識讀符號字符,恢復信息的數據與糾錯碼字。6) 用與糾錯級別信息相對應的糾錯碼字檢測錯誤,如果發(fā)現錯誤,立即糾錯。7) 根據模式指示符和字符計數指示符將數據碼字劃分成多個部分。8) 最后,按照使用的模式譯碼得出數據字符并輸出結果。二維碼的解碼流程具體實現的步驟和方法是比較復雜,涉及到了QR二維碼的標準規(guī)則及相對應的算法,知識點很多,網絡上相關資料充足,這里就不再贅述。

QR decode快速使用方法

硬件資源

1) USB2) LCD 93413) Sensor OV5640 or OV26404) Buzzer(PE3)5) USER Key6) AT32F435_DVP_EVB_V1.0實驗板圖3. 硬件資源圖67443900-670f-11ee-9788-92fbcf53809c.png

硬件連接及數據流

本例程中主要使用到的外設包括:DVP、I2C、XMC、DMA和USB,其中DVP用于攝像頭數據接收,I2C用于初始化攝像頭,XMC用于發(fā)送LCD顯示數據至LCD設備,DMA用于DVP至buffer和buffer至XMC的數據傳輸,USB用于將數據發(fā)送至PC端。攝像頭數據會以Y8的格式用DVP進行采集,通過DMA傳輸至內存buffer,此buffer會用于LCD顯示和Zbar解碼。在LCD顯示部分,由于LCD無法直接顯示Y8格式數據,所以首先會將Y8格式轉換為RGB格式,然后通過DMA將數據傳輸到XMC用于LCD顯示攝像頭畫面;在Zbar解碼部分,解碼成功后會將解析結果通過USB傳輸至PC端,并通過XMC將結果顯示到LCD上。硬件連接以及數據流如下圖所示:圖4. 硬件連接及數據流圖676d6e56-670f-11ee-9788-92fbcf53809c.png

QR decode demo使用

由于該demo運行占用了256KB的SRAM,而AT32F435/437的SRAM大小是可配置的(SRAM默認大小為384KB),為了方便使用,demo已經在啟動文件中將SRAM修改為了默認大小,亦可自行在extend_sram()函數中進行SRAM大小的配置。圖5. 修改SRAM大小67756f7a-670f-11ee-9788-92fbcf53809c.png1) 連接USB線到PC,通過上位機可以識別到該設備:Artery Virtual COM Port,注意需要安裝USB驅動:Artery_VirtualCOM_DriverInstall.exe。2) 根據LCD顯示信息,查看攝像頭初始化是否成功,demo提供的初始化代碼可自動識別OV5640或OV2640兩種攝像頭,若想更換其他攝像頭請自行修改攝像頭初始化代碼。3) 初始化成功后,將攝像頭對準二維碼,LCD顯示當前抓取的攝像頭圖像,此時芯片一直在通過Zbar進行二維碼解碼。4) 若芯片解析到數據,蜂鳴器會進行提示并將解析次數及解析結果顯示在LCD底部,如圖6所示。同時如果連接了USB至PC端并識別到了Artery Virtual COM Port,還會將解析到的數據通過USB傳輸到PC端,如圖7所示。當解析到新的圖碼數據時會將解析次數清零,并更新解析結果。5) 若芯片未解析到圖碼數據,LCD將無結果顯示,或保留上次解析的結果及次數。6) 蜂鳴器提示音可以通過USER Key進行開關。7) 可通過以下宏定義來對攝像頭輸出數據大小進行設置,為了兼顧成像效果和資源占用,建議輸出大小設置為160至240(pixel)之間:#define CAMERA_SIZE 2408) 可通過以下宏定義來選擇是否開啟LCD顯示:#define LCD_DISPLAY9) 應用效果展示視頻鏈接如下:https://b23.tv/Y4nhMNR圖6. LCD顯示解析數據67905632-670f-11ee-9788-92fbcf53809c.png圖7. USB傳到上位機數據67a6af4a-670f-11ee-9788-92fbcf53809c.png

關于雅特力雅特力科技于2016年成立,是一家致力于推動全球市場32位微控制器(MCU)創(chuàng)新趨勢的芯片設計公司,專注于ARM Cortex-M4/M0+的32位微控制器研發(fā)與創(chuàng)新,全系列采用55nm先進工藝及ARM Cortex-M4高效能或M0+低功耗內核,締造M4業(yè)界最高主頻288MHz運算效能,并支持工業(yè)級別芯片工作溫度范圍(-40°~105°)。雅特力目前已累積相當多元的終端產品成功案例:如微型打印機、掃地機、光流無人機、熱成像儀、激光雷達、工業(yè)縫紉機、伺服驅控、電競周邊市場、斷路器、ADAS、T-BOX、數字電源、電動工具等終端設備應用,廣泛地覆蓋5G、物聯(lián)網、消費、商務及工控等領域。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • mcu
    mcu
    +關注

    關注

    146

    文章

    17984

    瀏覽量

    366990
  • 雅特力
    +關注

    關注

    0

    文章

    179

    瀏覽量

    8575
  • AT32
    +關注

    關注

    1

    文章

    121

    瀏覽量

    2707
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    AT32 IAP using the USART

    對于AT32 MCU,除了出廠固化的bootloader,用戶也可以在應用程序中編寫自己的bootloader程序,用于最終產品的固件更新。此功能稱為
    發(fā)表于 07-11 10:51

    首日速遞 | 閃耀2025慕尼黑上海電子展,全方位展現智能“芯”實力

    4月15日,慕尼黑上海電子展(electronicaChina2025)在上海新國際博覽中心盛大啟幕。攜多款AT32系列MCU新品及完
    的頭像 發(fā)表于 04-16 00:15 ?423次閱讀
    首日速遞 | <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>閃耀2025慕尼黑上海電子展,全方位展現智能“芯”實力

    AT32 OTGHS應用筆記

    OTGHS介紹本章將描述OTGHS支持的一些基本功能。圖1.OTGHS框圖OTGHS特性OTGHS通用特性:支持USB2.0協(xié)議內置獨立4096字節(jié)SRAM內置USB2.0高速PHY內置上下拉電阻SOF信號輸出低功耗模式支持忽略VBUS狀態(tài)支持ID檢測以切換主機設備模式不支持HNP/SRP協(xié)議(PHY不支持,不能動態(tài)切換模式,只能根據ID狀態(tài)切換模式)AHB
    的頭像 發(fā)表于 03-28 18:59 ?360次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b><b class='flag-5'>AT32</b> OTGHS應用筆記

    喜訊!榮獲21ic“技術先鋒成就獎”

    近日,21ic電子網2024年度獎項評選結果正式揭曉!這些獎項旨在表彰在芯片研發(fā)、市場拓展、生態(tài)協(xié)作等領域表現卓越的企業(yè)與團隊。科技憑借深厚的技術實力與銳意進取的創(chuàng)新精神,榮獲21ic電子網
    的頭像 發(fā)表于 03-07 18:46 ?462次閱讀
    喜訊!<b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>榮獲21ic“技術先鋒成就獎”

    AT32 Workbench煥“芯”升級!引入Middleware助力開發(fā)高效提速

    近日,AT32Workbench開發(fā)工具完成重大更新升級,新增對MiddlewareFreeRTOS,以及MiddlewaresUSB_DEVICE和USB_HOST的支持。此次升級致力于深度
    的頭像 發(fā)表于 03-07 18:46 ?472次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b><b class='flag-5'>AT32</b> Workbench煥“芯”升級!引入Middleware助力開發(fā)高效提速

    AT32F402/F405時鐘配置

    電子發(fā)燒友網站提供《AT32F402/F405時鐘配置.pdf》資料免費下載
    發(fā)表于 01-15 15:24 ?0次下載
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>AT32F402/F405時鐘配置

    林金海:創(chuàng)新技術突圍芯片內卷,把握AI、汽車新動能

    網策劃了《2025年半導體產業(yè)展望》專題,收到數十位國內外半導體創(chuàng)新領袖企業(yè)高管的前瞻觀點。其中,電子發(fā)燒友特別采訪了產品市場總監(jiān)林金海,以下是他對2025年半導體市場的分析與展望。 ?
    發(fā)表于 12-30 09:13 ?935次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>林金海:創(chuàng)新技術突圍芯片內卷,把握AI、汽車新動能

    發(fā)布高性能電機控制專用MCU

    近日,科技正式推出了其首款高性能電機控制專用MCU——AT32M412/M416。這款MCU專為出行工具、家電及工業(yè)控制等應用而設計,
    的頭像 發(fā)表于 11-01 18:11 ?1330次閱讀

    發(fā)布AT32M412/M416電機控制專用MCU,180MHz主頻打造高效能電機應用

    近日,科技宣布推出AT32M412/M416首款高性能電機控制專用MCU,為出行工具、家電及工業(yè)控制等應用提供理想選擇。隨著全球工業(yè)自動化、智能家居及電動工具市場的迅速增長,市場
    的頭像 發(fā)表于 10-26 08:02 ?818次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>發(fā)布AT32M412/M416電機控制專用<b class='flag-5'>MCU</b>,180MHz主頻打造高效能電機應用

    AT32講堂088 | AT32F402/F405時鐘配置

    介紹如何結合提供的V2.x.x的板級支持包(BSP)來配置時鐘。以下介紹時鐘配置的方法主要分兩種:1、以手動編寫代碼調用BSP中提供的驅動函數接口來進行時鐘配
    的頭像 發(fā)表于 09-15 08:08 ?1025次閱讀
    <b class='flag-5'>AT32</b>講堂088 | <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>AT32F402/F405時鐘配置

    AT32講堂087 | AT32 IDE快速入門指南

    新建項目新項目向導AT32ID提供支持MCU的C語言項目模板,方便用戶快速創(chuàng)建項目。菜單欄【File】>【New】>【CProject】。新建項目向導的對話框將出現。在對
    的頭像 發(fā)表于 09-15 08:08 ?1411次閱讀
    <b class='flag-5'>AT32</b>講堂087 | <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b><b class='flag-5'>AT32</b> IDE快速入門指南

    基于AT32 MCU的洗衣機電機控制驅動方案,解鎖智能家居新體驗

    配置、超薄嵌入、極致靜音體驗以及衣物護理功能作為產品競爭的核心要素,同步響應行業(yè)政策對能效要求的提升,這一系列要求無疑對電機控制技術提出了更高的挑戰(zhàn)。MCU作為
    的頭像 發(fā)表于 09-15 08:07 ?1034次閱讀
    基于<b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b><b class='flag-5'>AT32</b> <b class='flag-5'>MCU</b>的洗衣機電機控制驅動方案,解鎖智能家居新體驗

    STM32CUBEMX(7)--移植AT32F403AVGT(兼容STM32F103VGT6),DAC輸出電壓

    概述 本篇文章主要介紹如何使用STM32CubeMX移植到AT32F403AVGT7,并通過DAC輸出電壓,在芯片中有2個12位的DAC口可以供選擇。 硬件準備 首先需要準備一個開發(fā)板,這里
    發(fā)表于 09-06 16:40

    AT32 MCU的隨機數生成

    概述產品和生態(tài)系統(tǒng)安全性的需求比以往任何時候都更加重要。真隨機數是所有安全系統(tǒng)的核心,其質量會影響設計的安全性。因此在沒有內置硬件TRNG的AT32的微控制器系列中,如何提高隨機數的有效,來符合
    的頭像 發(fā)表于 08-30 12:26 ?1294次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b><b class='flag-5'>AT32</b> <b class='flag-5'>MCU</b>的隨機數生成

    AT32講堂085 | AT32 MCU HICK時鐘校準

    簡介AT32系列MCU內部都有提供適合運行的內部高速時鐘(HICK),其本質就是內置于芯片的RC振蕩器。在25℃下,其典型值頻率8MHz的精度由工廠校準到±1%,在-40到105℃,該內部高速時鐘
    的頭像 發(fā)表于 08-30 12:26 ?1258次閱讀
    <b class='flag-5'>AT32</b>講堂085 | <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b><b class='flag-5'>AT32</b> <b class='flag-5'>MCU</b> HICK時鐘校準