衡阳派盒市场营销有限公司

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

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

3天內不再提示

ZC-CLS381RGB顏色識別+8x8點陣指示—配置顏色識別寄存器組(上)

FPGA創新中心 ? 來源:FPGA創新中心 ? 2023-11-03 17:40 ? 次閱讀

在現代工業生產中,顏色識別技術已經成為了一個非常重要的技術。顏色識別可以用于產品質量檢測、物料分類、機器視覺等領域。本文將介紹如何使用FPGA結合ZC-CLS381RGB進行顏色識別。

教程通過對采集到的圖像信息中,R、G、B三個顏色分量的占比,來判斷識別到的顏色信息。本教程只實現對紅色、綠色、藍色的識別,如果各位讀者要想實現對其它色彩信息的識別,可根據三個色彩分量的占比來判斷。

ZC-CLS381RGB簡介

ZC-CLS381RGB是一款基于RGB三基色原理的顏色識別傳感器。它可以通過對物體反射光的RGB三基色分量進行測量,來判斷物體的顏色。該傳感器具有高精度、快速響應、穩定性好等特點,廣泛應用于自動化生產線、機器人智能家居等領域。

配置寄存器

ZC-CLS381RGB是一款RGB LED驅動芯片,需要通過配置寄存器來讓該模塊正常工作。下面就對顏色識別需要配置的寄存器進行介紹。

主控寄存器

01

MAIN_CTRL Register是主控寄存器,下圖是主控寄存器的配置介紹:

wKgZomVEwBiATzWqAAHFub6DzHU673.jpg

? bit7~bit5,bit3,bit0:保留位(Reserved),使用時將這幾位置0即可。

? bit4:軟件復位位(SW Reset),當該位被置1時,芯片會進行軟件復位,即將所有寄存器的值恢復為默認值。在使用ZC-CLS381RGB時,如果出現異常情況,例如芯片無法正常工作或者輸出異常,可以通過將SW Reset位置1來進行軟件復位,以恢復芯片的正常工作狀態。同時,在初始化芯片時,也可以通過將SW Reset位置1來確保芯片的寄存器值處于默認狀態,以避免出現不可預期的問題。但是如果軟件復位位一直為高電平,模塊就無法正常采集顏色,一直處于復位狀態,如果要關閉該位則還需要發送一次指令。因此在本設計初始化時,將該位置為0,不啟用軟件復位。

? bit2:顏色傳感器模式位(CS Mode),該位置為1時,表示所有的光傳感器通道都被激活,包括RGB(三原色)、IR(紅外光)和COMP(環境光)。這意味著該傳感器可以同時測量紅、綠、藍三種顏色的光線強度、紅外線的強度以及環境光的強度,并將這些數據傳輸到寄存器中進行處理。初始化配置時,需將該位置為1。

? bit1:環境光傳感器/顏色傳感器使能位(ALS/CS Enable),當該位置1時,表示使能環境光傳感器和顏色傳感器。在本設計中,需要使用到這兩個傳感器,因此在初始化時需要將該位置為1。

檢測速率寄存器

02

ALS_CS_MEAS_RATE Register是環境光傳感器和顏色傳感器檢測速率寄存器,下圖是對該寄存器的配置介紹:

wKgZomVEwBiAAFq0AAFWbVH_lmM583.jpg

?bit7、bit3:保留位(Reserved),使用時這兩位需要置0。

? bit6,bit5,bit4:環境光傳感器和顏色傳感器速率位(ALS/CS Resolution),初始化時設置{bit6,bit5,bit4}=100,利用最快的時間對采集到的數據進行轉換。

?bit2,bit1,bit0:環境光傳感器和顏色傳感器測量速率位(ALS/CS Measurement Rate),初始化設置{bit2,bit1,bit0}=000,利用最快的采集速率采集數據。

增益寄存器

03

ALS_CS_MEAS_RATE Register是環境光傳感器和顏色傳感器增益寄存器,下圖是對該寄存器的配置介紹:

wKgaomVEwBiAIrQbAACoRhPz6ZY070.jpg

?bit7~bit3:保留位(Reserved),使用時這兩位需要置0。

? bit2~bit0:環境光傳感器和顏色傳感器增益率位(Reserved),初始化時設置{bit2,bit1,bit0}=100,將增益率調到最大,以此增強信號的強度,使得信號更容易被檢測到。

線上交流會

04

因為本教程采集的是紅色、綠色、藍色數據,芯片手冊提供的寄存器組如下圖所示:

wKgaomVEwBiAbvmvAAJRs4L7CXg716.jpg

0x0D、0x0E、0x0F分別表示綠色信息的低8位、中8位、高8位數據;0x10、0x11、0x12分別表示紅色信息的低8位、中8位、高8位數據;0x13、0x14、0x15分別表示藍色信息的低8位、中8位、高8位數據。在使用中,直接讀取這些寄存器內的數據,然后拼接起來,即可得到紅、綠、藍色數據,再根據三個數據的占比,從而對采集到的物體顏色進行判斷。

狀態轉移圖和信號波形圖繪制

在正式開始使用器件時,需要等待一段時間讓器件穩定下來,如圖所示:

wKgaomVEwBiAGwx_AAD6OXuJfHE547.jpg

待機喚醒時間最大為10ms,表示在測量的時候,兩次獲取數據的時間間隔最大為10ms。由于在數據手冊內,未說明上電后直到模塊穩定需要等待的時間,在這里我們人為設置上電等待的時間為20ms,給模塊一個緩沖的時間,然后再對它進行配置。配置寄存器組信號波形圖如下圖所示:

wKgaomVEwBiAcMFkAAE5afKQjTo147.jpg

其中,i2c_start作為i2c控制模塊的開始信號,檢測到該開始信號后,就開始配置寄存器,向各個寄存器內寫入數據。綜上繪制的i2c控制模塊配置寄存器組的狀態轉移圖如下圖所示:

wKgZomVEwBiATRwUAABpcIwZsCQ498.jpg

為了設計方便,對于50MHZ的系統時鐘,將其分頻為1MHZ的i2c驅動時鐘用來驅動后續模塊,同時令一個SCL時鐘周期為4us,高電平持續時間為2us,低電平持續時間也為2us。這樣設計的好處是,滿足SCL高電平持續時間大于0.6us,SCL低電平持續時間大于1.3us。如下圖所示:

wKgZomVEwBiAcolqAAFEDM7ORQc829.jpg

綜上,繪制的分頻信號波形圖如下圖所示:

wKgZomVEwBiAFeCvAACFLwthymU309.jpg

結合狀態轉移圖,繪制的配置寄存器信號波形圖如下圖所示:

wKgaomVEwBiAQvNKAAKaX5w8NgQ907.jpg

wKgZomVEwBiAPqzGAAJzdeOXZco103.jpg

wKgaomVEwBiAFpz3AAKMFPC1sdk154.jpg

需要注意的是,配置寄存器組跳轉條件為skip_en_0,這里配置的寄存器是向寄存器里面寫入數據,總共需要配置三個,三個寄存器配置完成后,才能讀出顏色數據。因此,step從0自增到1,必須要在cfg_num為3并且檢測到結束信號的情況下進行。







審核編輯:劉清

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

    關注

    2553

    文章

    51390

    瀏覽量

    756577
  • FPGA
    +關注

    關注

    1630

    文章

    21796

    瀏覽量

    605998
  • 寄存器
    +關注

    關注

    31

    文章

    5363

    瀏覽量

    121158
  • RGB
    RGB
    +關注

    關注

    4

    文章

    801

    瀏覽量

    58715

原文標題:【知識分享】ZC-CLS381RGB顏色識別+8x8點陣指示——配置顏色識別寄存器組(上)

文章出處:【微信號:FPGA創新中心,微信公眾號:FPGA創新中心】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    求助。8x8點陣的接法

    這個是我們社區里的那個8x8點陣貪吃蛇的游戲,無聊想自己做一個,可是不確定器件清單,有做過的嗎,教教吧。
    發表于 05-11 13:36

    8x8點陣led顯示

    本帖最后由 eehome 于 2013-1-5 09:45 編輯 有8x8點陣作品
    發表于 05-19 11:19

    Protues16x16點陣庫文件(非4個8x8拼接而成)

    8x8點陣拼成一個16x16的點陣,但這樣組合過程中連線十分麻煩,而且屏幕整體感不強。此16x16點陣
    發表于 07-18 02:42

    8x8點陣仿真

    本帖最后由 gk320830 于 2015-3-4 12:53 編輯 基于2片595級聯驅動的8X8點陣仿真及0到9數字顯示程序
    發表于 08-19 20:07

    8x8點陣。。。。

    8x8點陣。。。。
    發表于 05-05 16:25

    51單片機學習記錄(8) “8X8點陣 精選資料推薦

    51單片機學習記錄(8) “8x8點陣8x8點陣就是由64個小led燈組成的矩陣,現在先讓我們看一下
    發表于 07-15 06:45

    8×8點陣顯示仿真

    8x8點陣顯示仿真,實現數字0-9的計數
    發表于 01-12 16:49 ?37次下載

    【實驗102】8X8點陣實驗

    HL配套C實驗例程8X8點陣實驗,配合開發板學習效果更好。
    發表于 04-11 17:14 ?17次下載

    8x8點陣貪吃蛇

    51單片機--8x8點陣貪吃蛇:源程序文件(含圖片、程序文本)
    發表于 12-26 17:21 ?47次下載

    8X8點陣LED顯示屏字模提取軟件(測試版)

    8X8點陣LED顯示屏字模提取軟件(測試版)
    發表于 12-28 10:16 ?0次下載

    8x8點陣取模軟件

    8x8點陣取模軟件
    發表于 01-08 15:32 ?50次下載

    如何使用51單片機實現8x8點陣顯示的程序免費下載

    本文檔的主要內容詳細介紹的是如何使用51單片機實現8x8點陣顯示的程序免費下載。
    發表于 06-28 17:42 ?23次下載
    如何使用51單片機實現<b class='flag-5'>8x8</b><b class='flag-5'>點陣</b>顯示的程序免費下載

    使用51單片機進行8x8點陣的詳細資料說明

    本文檔的主要內容詳細介紹的是使用51單片機進行8x8點陣的詳細資料說明。
    發表于 06-17 17:44 ?12次下載
    使用51單片機進行<b class='flag-5'>8x8</b><b class='flag-5'>點陣</b>的詳細資料說明

    8x8點陣字模提取軟件應用程序免費下載

    本文檔的主要內容詳細介紹的是8x8點陣字模提取軟件應用程序免費下載。
    發表于 04-28 16:24 ?72次下載
    <b class='flag-5'>8x8</b><b class='flag-5'>點陣</b>字模提取軟件應用程序免費下載

    8X8點陣應用演示的keil程序和電路圖免費下載

    本文檔的主要內容詳細介紹的是8X8點陣應用演示的keil程序和電路圖免費下載。
    發表于 05-22 14:18 ?34次下載
    <b class='flag-5'>8X8</b><b class='flag-5'>點陣</b>應用演示的keil程序和電路圖免費下載
    百家乐官网官网下载| 阜新| 凯旋门娱乐| 大玩家百家乐官网游戏| 百家乐官网家居| 24山分房法| 百家乐奥| bet365存款| CEO百家乐官网现金网| 百家乐官网纯技巧打| 属马的和属猴的在一起做生意好吗| 百家乐代理在线游戏可信吗网上哪家平台信誉好安全 | 网上玩百家乐有钱| 盐城百家乐的玩法技巧和规则| 大发888娱乐游戏博彩| 乐平市| 百家乐官网五星宏辉怎么玩| 金城百家乐玩法平台| 大发888资讯网007| 百家乐官网的打法技巧| 百家乐官网群bet20| 怎么赢百家乐的玩法技巧和规则 | 电脑打百家乐官网怎么赢| 百家乐怎么样投注| 998棋牌游戏| 噢门百家乐官网玩法| 百家乐庄闲出现几率| 大发888开户注册网站| 太阳城百家乐官网祖玛| 百家乐路单破解方法| 2024年九宫八卦吉位| 百家乐开闲的几率多大| 博赢国际娱乐城| 神话百家乐官网的玩法技巧和规则| 百家乐庄闲局部失| 云顶国际注册| 网络百家乐官网的玩法技巧和规则 | 威尼斯人娱乐城首存优惠| 百家乐官网的连庄连闲| 网上赌百家乐被抓应该怎么处理| 德州扑克几副牌|