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

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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

AT32講堂015 | AT32 MCU實(shí)現(xiàn)QR Decode的應(yīng)用程序

雅特力 AT32 MCU ? 2022-07-24 14:48 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

概述

二維碼、條形碼相信大家都非常熟悉了,條碼技術(shù)已經(jīng)廣泛應(yīng)用于我們生活當(dāng)中。微信掃二維碼、支付寶二維碼付款、商品條形碼、超市儲(chǔ)物柜條形碼等。但是由于二維碼復(fù)雜度,目前識(shí)別二維碼的設(shè)備還不夠豐富。對(duì)此本文檔利用帶浮點(diǎn)運(yùn)算的、大容量SRAM、高主頻芯片AT32F403A,調(diào)用雅特力提供的Artery_QR二維碼解碼庫(kù)在AT-START-F403A開發(fā)板上來(lái)實(shí)現(xiàn)二維碼、CODE128\CODE39\I25\EAN13條碼掃描識(shí)別。

一維條形碼、二維碼簡(jiǎn)介

一維條形碼

一維條碼是由一組規(guī)則排列的條、空以及對(duì)應(yīng)的字符組成的標(biāo)記,“條”指對(duì)光線反射率較低的部分,“空”指對(duì)光線反射率較高的部分,這些條和空組成的數(shù)據(jù)表達(dá)一定的信息,并能夠用特定的設(shè)備識(shí)讀,轉(zhuǎn)換成與計(jì)算機(jī)兼容的二進(jìn)制和十進(jìn)制信息。條形碼可以標(biāo)出物品的生產(chǎn)國(guó)、制造廠家、商品名稱、生產(chǎn)日期、圖書分類號(hào)、郵件起止地點(diǎn)、類別、日期等許多信息,因而在商品流通、圖書管理、郵政管理、銀行系統(tǒng)等許多領(lǐng)域都得到廣泛的應(yīng)用。一維條碼只是在一個(gè)方向(一般是水平方向)表達(dá)信息,而在垂直方向則不表達(dá)任何信息,雖然提高信息錄入的速度,減少差錯(cuò)率,但是其空間利用率較低,數(shù)據(jù)容量較小。

二維碼

二維碼(2-dimensional bar code)是用某種特定的幾何圖形按一定規(guī)律在平面(二維方向上)分布的黑白相間的圖形記錄數(shù)據(jù)符號(hào)信息的;在代碼編制上巧妙地利用構(gòu)成計(jì)算機(jī)內(nèi)部邏輯基礎(chǔ)的“0”、“1”比特流的概念,使用若干個(gè)與二進(jìn)制相對(duì)應(yīng)的幾何形體來(lái)表示文字?jǐn)?shù)值信息,通過(guò)圖象輸入設(shè)備或光電掃描設(shè)備自動(dòng)識(shí)讀以實(shí)現(xiàn)信息自動(dòng)處理。

二維碼由于自身設(shè)計(jì)特點(diǎn),可包含更多的信息量,編碼信息范圍更廣,并且由于二維碼具有一定的校 驗(yàn)功能等。同時(shí)還具有對(duì)不同行的信息自動(dòng)識(shí)別功能、以及處理圖形旋轉(zhuǎn)變化點(diǎn),二維碼譯碼更加準(zhǔn)確,其誤碼率為千萬(wàn)分之一。下圖為QR二維碼構(gòu)造框圖。

圖1. QR碼符號(hào)的結(jié)構(gòu)d312c4d4-0938-11ed-9ade-dac502259ad0.png

1) 位置探測(cè)圖形、位置探測(cè)圖形分隔符:用于對(duì)二維碼的定位,對(duì)每個(gè)QR碼來(lái)說(shuō),位置都是固定存在的,只是大小規(guī)格會(huì)有所差異;這些黑白間隔的矩形塊很容易進(jìn)行圖像處理的檢測(cè)。

2) 定位圖形:這些小的黑白相間的格子就好像坐標(biāo)軸,在二維碼上定義了網(wǎng)格。3) 格式信息:表示該二維碼的糾錯(cuò)級(jí)別,分為L(zhǎng)、M、Q、H;4) 數(shù)據(jù)區(qū)域:使用黑白的二進(jìn)制網(wǎng)格編碼內(nèi)容。8個(gè)格子可以編碼一個(gè)字節(jié)。5) 版本信息:即二維碼的規(guī)格,QR碼符號(hào)共有40種規(guī)格的矩陣(一般為黑白色),從21x21(版本1),到177x177(版本40),每一版本符號(hào)比前一版本每邊增加4個(gè)模塊。6) 糾錯(cuò)碼字:用于修正二維碼損壞帶來(lái)的錯(cuò)誤。

QR二維碼解碼流程

了解了QR二維碼的構(gòu)造,下面我們來(lái)了解解碼流程,QR二維碼的解碼流程如下圖2所示。圖2. QR碼譯碼步驟d3414f70-0938-11ed-9ade-dac502259ad0.png1) 定位并獲取符號(hào)圖像。深色與淺色模塊識(shí)別為“0”與“1”的陣列。2) 識(shí)讀格式信息(如果需要,去除掩模圖形并完成對(duì)格式信息模塊的糾錯(cuò),識(shí)別糾錯(cuò)等級(jí)與掩模圖形參考)。3) 識(shí)讀版本信息,確定符號(hào)的版本。4) 用掩模圖形參考,從格式信息中得出對(duì)編碼區(qū)的位圖進(jìn)行異或處理消除掩模。5) 根據(jù)模塊排列規(guī)則,識(shí)讀符號(hào)字符,恢復(fù)信息的數(shù)據(jù)與糾錯(cuò)碼字。6) 用與糾錯(cuò)級(jí)別信息相對(duì)應(yīng)的糾錯(cuò)碼字檢測(cè)錯(cuò)誤,如果發(fā)現(xiàn)錯(cuò)誤,立即糾錯(cuò)。7) 根據(jù)模式指示符和字符計(jì)數(shù)指示符將數(shù)據(jù)碼字劃分成多個(gè)部分。8) 最后,按照使用的模式譯碼得出數(shù)據(jù)字符并輸出結(jié)果。二維碼的解碼流程具體實(shí)現(xiàn)的步驟和方法是比較復(fù)雜,涉及到了QR二維碼的標(biāo)準(zhǔn)規(guī)則及相對(duì)應(yīng)的算法,知識(shí)點(diǎn)很多,大家感興趣的話可以自己多去網(wǎng)上查閱資料了解。

QR decode快速使用方法

硬件資源

1) LCD 93412) 外接Buzzer(PE15)3) Arduio4) AT-START-F403A V1.0實(shí)驗(yàn)板5) USB6) Sensor BF39017) USER key圖3. 硬件資源圖d35ed1b2-0938-11ed-9ade-dac502259ad0.png

注:1.該demo是基于AT32F403A的硬件條件,若使用者需要在AT32其他型號(hào)上使用,請(qǐng)修改相應(yīng)配置即可。

2.供電部分:使用電源供電,或USB線供電(勿使用Link單獨(dú)供電)。

QR USB HID keyboard Demo使用

1) 打開QR decode project源程序,編譯后下載到實(shí)驗(yàn)板。2) 由于該demo運(yùn)行占用了169K的SRAM,所以在使用demo前需開啟芯片的擴(kuò)展SRAM功能(擴(kuò)展為224KB),為了方便用戶使用,demo已經(jīng)在啟動(dòng)文件中開啟了此項(xiàng)功能。

d39a459e-0938-11ed-9ade-dac502259ad0.png

3) 連接USB線到PC,通過(guò)上位機(jī)可以識(shí)別到該設(shè)備:HID Keyboard Device(標(biāo)準(zhǔn)鍵盤輸入模式,無(wú)須驅(qū)動(dòng))4) 根據(jù)LCD顯示信息,查看BF3901初始化是否成功,并按下USER key按鍵,開啟QR解碼偵測(cè)。5) 將攝像頭BF3901對(duì)準(zhǔn)二維碼,LCD顯示當(dāng)前抓取的攝像頭圖像,此時(shí)芯片一直在運(yùn)算QR解碼。6) 若芯片一直沒(méi)有解析到二維碼,一維碼數(shù)據(jù),則會(huì)一直運(yùn)行下去,直到解析到數(shù)據(jù),如圖4所示。蜂鳴器會(huì)響一下,并且將解析到數(shù)據(jù)通過(guò)USB傳輸?shù)絇C,如圖5所示。Ps. QR decode默認(rèn)只偵測(cè)二維碼,若要偵測(cè)全部圖碼等,需開啟宏定義:Detect_all。圖4. LCD顯示解析數(shù)據(jù)d3b63c72-0938-11ed-9ade-dac502259ad0.png

圖5. USB傳到PC數(shù)據(jù)

d3d3452e-0938-11ed-9ade-dac502259ad0.png

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

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

    關(guān)注

    146

    文章

    17964

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    使用 USB CDC 下載應(yīng)用程序固件,用時(shí)過(guò)長(zhǎng)是為什么?

    ,如果我使用 USB CDC 下載應(yīng)用程序固件,則需要 1 分 50 秒。你知道問(wèn)題是什么嗎? 原來(lái)的: MacBook----UART over USB----(kitprog3)MCU
    發(fā)表于 07-14 07:10

    AT32 IAP using the USART

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

    AT32的ERTC與RTC的區(qū)別

    AT32單片機(jī)系列中包含兩種實(shí)時(shí)時(shí)鐘(RTC)模塊:標(biāo)準(zhǔn)的RTC和增強(qiáng)型RTC(ERTC)。以下是兩者的區(qū)別: 功能豐富性 RTC :提供基本的計(jì)數(shù)功能,以秒為單位遞增,范圍從0x00000000到
    發(fā)表于 07-11 10:48

    首日速遞 | 雅特力閃耀2025慕尼黑上海電子展,全方位展現(xiàn)智能“芯”實(shí)力

    4月15日,慕尼黑上海電子展(electronicaChina2025)在上海新國(guó)際博覽中心盛大啟幕。雅特力攜多款AT32系列MCU新品及完整應(yīng)用方案矩陣,重磅亮相本屆展會(huì),通過(guò)四大核心展區(qū),全面
    的頭像 發(fā)表于 04-16 00:15 ?415次閱讀
    首日速遞 | 雅特力閃耀2025慕尼黑上海電子展,全方位展現(xiàn)智能“芯”實(shí)力

    AWTK-WEB 快速入門(5) - C 語(yǔ)言 WebSocket 應(yīng)用程序

    導(dǎo)讀WebSocket可以實(shí)現(xiàn)雙向通信,適合實(shí)時(shí)通信場(chǎng)景。本文介紹一下使用C語(yǔ)言開發(fā)AWTK-WEB應(yīng)用程序,并用WebSocket與服務(wù)器通訊。用AWTKDesigner新建一個(gè)應(yīng)用程序先安裝
    的頭像 發(fā)表于 02-19 11:49 ?448次閱讀
    AWTK-WEB 快速入門(5) - C 語(yǔ)言 WebSocket <b class='flag-5'>應(yīng)用程序</b>

    基于HPM_SDK_ENV開發(fā)應(yīng)用程序的升級(jí)處理

    基于HPM_SDK_ENV開發(fā)應(yīng)用程序的方式HPM_SDK_ENV是先楫半導(dǎo)體MCU的Windows集成開發(fā)環(huán)境,其包含HPM_SDK,工具鏈,依賴工具(cmake,ninja,openocd等
    的頭像 發(fā)表于 02-08 13:38 ?1016次閱讀
    基于HPM_SDK_ENV開發(fā)<b class='flag-5'>應(yīng)用程序</b>的升級(jí)處理

    TAS2521應(yīng)用程序參考指南

    電子發(fā)燒友網(wǎng)站提供《TAS2521應(yīng)用程序參考指南.pdf》資料免費(fèi)下載
    發(fā)表于 12-10 13:49 ?0次下載
    TAS2521<b class='flag-5'>應(yīng)用程序</b>參考指南

    AWTK-WEB 快速入門(1) - C 語(yǔ)言應(yīng)用程序

    導(dǎo)讀AWTK可以使用相同的技術(shù)棧開發(fā)各種平臺(tái)的應(yīng)用程序。有時(shí)我們需要使用Web界面與設(shè)備進(jìn)行交互,本文介紹一下如何使用C語(yǔ)言開發(fā)AWTK-WEB應(yīng)用程序。用AWTKDesigner新建一個(gè)應(yīng)用程序
    的頭像 發(fā)表于 11-27 11:46 ?701次閱讀
    AWTK-WEB 快速入門(1) - C 語(yǔ)言<b class='flag-5'>應(yīng)用程序</b>

    QR 雜談

    ①對(duì) 諧振與電流模式 的解讀。 ②衰減震蕩的利用,是不是 “QR” 的賣點(diǎn)?! ③在軟開關(guān)電源電路中,源 (或射) 極電阻會(huì)否導(dǎo)致潛在的不穩(wěn)定?!
    發(fā)表于 10-03 01:47

    STM32轉(zhuǎn)AT32代碼轉(zhuǎn)換

    1.引言在嵌入式開發(fā)中,我們經(jīng)常會(huì)遇到更換單片機(jī)芯片的事情,若芯片是同一廠家的還好說(shuō),若是不同廠家的則需要重新寫,重新調(diào),重新去學(xué)習(xí)其底層驅(qū)動(dòng)程序,比較費(fèi)時(shí)費(fèi)力。如:ST32轉(zhuǎn)AT32、ST32轉(zhuǎn)
    的頭像 發(fā)表于 09-28 08:09 ?760次閱讀
    STM32轉(zhuǎn)<b class='flag-5'>AT32</b>代碼轉(zhuǎn)換

    AT32講堂088 | 雅特力AT32F402/F405時(shí)鐘配置

    簡(jiǎn)介時(shí)鐘是芯片正確高效運(yùn)行的基礎(chǔ),正確的時(shí)鐘配置是芯片能正確運(yùn)行的必要條件,其重要性不言而喻。AT32各系列產(chǎn)品的時(shí)鐘配置部分可能存在細(xì)微的差異和需要注意的事項(xiàng),本文檔就著重針對(duì)各系列的情況來(lái)詳細(xì)
    的頭像 發(fā)表于 09-15 08:08 ?1014次閱讀
    <b class='flag-5'>AT32</b><b class='flag-5'>講堂</b>088 | 雅特力AT32F402/F405時(shí)鐘配置

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

    新建項(xiàng)目新項(xiàng)目向?qū)T32ID提供支持雅特力MCU的C語(yǔ)言項(xiàng)目模板,方便用戶快速創(chuàng)建項(xiàng)目。菜單欄【File】>【New】>【CProject】。新建項(xiàng)目向?qū)У膶?duì)話框?qū)⒊霈F(xiàn)。在對(duì)
    的頭像 發(fā)表于 09-15 08:08 ?1379次閱讀
    <b class='flag-5'>AT32</b><b class='flag-5'>講堂</b>087 | 雅特力<b class='flag-5'>AT32</b> IDE快速入門指南

    在TM4C MCU上用FreeRTOS開發(fā)通用應(yīng)用程序應(yīng)用說(shuō)明

    電子發(fā)燒友網(wǎng)站提供《在TM4C MCU上用FreeRTOS開發(fā)通用應(yīng)用程序應(yīng)用說(shuō)明.pdf》資料免費(fèi)下載
    發(fā)表于 09-11 14:15 ?0次下載
    在TM4C <b class='flag-5'>MCU</b>上用FreeRTOS開發(fā)通用<b class='flag-5'>應(yīng)用程序</b>應(yīng)用說(shuō)明

    雅特力AT32 MCU的隨機(jī)數(shù)生成

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

    AT32講堂085 | 雅特力AT32 MCU HICK時(shí)鐘校準(zhǔn)

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