色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

介紹ADC寄存器的讀取

星星科技指導員 ? 來源:嵌入式計算設計 ? 作者:Michael Schmidt ? 2022-10-12 09:45 ? 次閱讀

在“使用 Node 將 IoT嵌入式連接.js第 3 部分”中,我們查看了用于讀取加速度計的軟件包。在第4部分中,我們將重點介紹ADC寄存器的讀取。

該包演示如何運行從 Node.js 調用的 C 代碼。此代碼通過 CPU 中 i.MX28 ADC 寄存器的存儲器映射來實現這些寄存器的讀取。此代碼直接取自技術系統公司為 TS-7680 提供的樣本代碼。這里的主要補充是將 Node.js 接口到 C 的代碼。

Node.js使用C++接口,因此代碼必須以C++編寫。我們的實施是在。在此文件中,有一個改編自 的函數,該函數打開并將 CPU ADC 接口的三個區域存儲器映射到指針。這些器件可用于訪問執行ADC功能所需的CPU寄存器。

其次是功能,也改編自其設置ADC并獲得7個樣本。對這些樣本進行平均并放置在緩沖區中。

必須將“Node.js的本機抽象”或 NAN 的包含文件放在文件的頂部。隨著 Node 的成熟.js,用于創建加載項的界面發生了變化,NAN 抽象出這些差異,以允許創建適用于 Node .js 版本 0.8、0.10、0.12 和 1-7 的代碼。

files-aHViPTYzODY3JmNtZD1pdGVtZWRpdG9yaW1hZ2UmZmlsZW5hbWU9aXRlbWVkaXRvcmltYWdlXzU5ZDI2MTgwOTc3ZDkucG5nJnZlcnNpb249MDAwMCZzaWc9MjE2ZGMzNTA2NWM4OTkzYjljZTNlOTljZGZmNWYyZTk253D

用于創建 Node.js加載項的代碼位于函數中,符合 Node.js加載項的參數要求。具體來說,它有一個看起來像這樣的原型:

files-aHViPTYzODY3JmNtZD1pdGVtZWRpdG9yaW1hZ2UmZmlsZW5hbWU9aXRlbWVkaXRvcmltYWdlXzU5ZDI2MjFhY2ZiMTMucG5nJnZlcnNpb249MDAwMCZzaWc9MGQ2MDE1ZGM1YzZmMmQzMTIzYTkyOTgyNTBmNzgxYjE253D

我們采用一個名為 的參數。這是一個復雜的NAN類,我們目前不需要擔心。

在此函數中,首先聲明一個緩沖器來保存來自所有 8 個 ADC 的采樣,這些 ADC 由 讀取:

files-aHViPTYzODY3JmNtZD1pdGVtZWRpdG9yaW1hZ2UmZmlsZW5hbWU9aXRlbWVkaXRvcmltYWdlXzU5ZDI2Mjg1ODc2NzIucG5nJnZlcnNpb249MDAwMCZzaWc9ZjNkZjIwOTA1MmY0YzZmMTFmYWM1YjM1ZWJiNTBjYzg253D

接下來,如果尚未調用,則調用。全局變量用于確定以下內容:init

files-aHViPTYzODY3JmNtZD1pdGVtZWRpdG9yaW1hZ2UmZmlsZW5hbWU9aXRlbWVkaXRvcmltYWdlXzU5ZDI2MmM3MDk5NjUucG5nJnZlcnNpb249MDAwMCZzaWc9YzI2NGM1Nzg1NzM1NWVkM2I0ZGI4MTU3ZjE1MzY0Nzc253D

現在調用以用樣本填充緩沖區:

files-aHViPTYzODY3JmNtZD1pdGVtZWRpdG9yaW1hZ2UmZmlsZW5hbWU9aXRlbWVkaXRvcmltYWdlXzU5ZDI2MzBiM2U1N2IucG5nJnZlcnNpb249MDAwMCZzaWc9YjRjNTJmMTIzZjNmODA4ZTljYmY2OTYzOTdjYTEwMzc253D

接下來,構造一個長度為 8 的 JavaScript 數組,并將此數組中每個元素的值設置為相應的 ADC 示例值:

files-aHViPTYzODY3JmNtZD1pdGVtZWRpdG9yaW1hZ2UmZmlsZW5hbWU9aXRlbWVkaXRvcmltYWdlXzU5ZDI2MzNjNjQ0MmUucG5nJnZlcnNpb249MDAwMCZzaWc9ZDgxZDU2OGVhMmZhZjdjYmRkM2NkNjcyY2FhYjgwYmM253D

然后,將數組設置為從 JavaScript 調用函數所顯示的返回值。這比簡單的語句稍微復雜一些,因為它從C++橋回JavaScript!

files-aHViPTYzODY3JmNtZD1pdGVtZWRpdG9yaW1hZ2UmZmlsZW5hbWU9aXRlbWVkaXRvcmltYWdlXzU5ZDI2MzZiYjRhNmIucG5nJnZlcnNpb249MDAwMCZzaWc9MWY3OGZjNjBiYmM0Zjc5NWNkNzE2MDU0ZGViZDNkNzQ253D

除了函數之外,還必須定義一個函數(注意大寫的“I”,這使得它與我們的函數不同)。此處的兩個重要部分是 “” 和 。它們定義了為訪問函數而調用的 JavaScript 端的模塊元素的名稱,以及C++端被調用的函數的名稱:

files-aHViPTYzODY3JmNtZD1pdGVtZWRpdG9yaW1hZ2UmZmlsZW5hbWU9aXRlbWVkaXRvcmltYWdlXzU5ZDI2MzlkYzI2MTcucG5nJnZlcnNpb249MDAwMCZzaWc9NzFjYTQ1YzU3YzVmZWYxYzM3ZTVkNDEzMTAwZDQzNzM253D

現在,調用一個宏將函數與模塊名稱相關聯:

files-aHViPTYzODY3JmNtZD1pdGVtZWRpdG9yaW1hZ2UmZmlsZW5hbWU9aXRlbWVkaXRvcmltYWdlXzU5ZDI2NDFlNGFkNGEucG5nJnZlcnNpb249MDAwMCZzaWc9ZTFhYzcwOTc5OTA4MmE5Zjk4M2MzZTc2MmMyM2FjNmE253D

該文件提供了一個精簡包裝器,它通過調用 中定義的 addin 函數對 ADC 值進行采樣,然后在連接套接字上輸出這些值來響應對 ADC 值的請求。

此行的開頭設置了綁定節點,我們的C++加載項:

files-aHViPTYzODY3JmNtZD1pdGVtZWRpdG9yaW1hZ2UmZmlsZW5hbWU9aXRlbWVkaXRvcmltYWdlXzU5ZDI2NDk4MDM0MzQucG5nJnZlcnNpb249MDAwMCZzaWc9YWI0NzJkODY3OWVjNTEwYTZlYmVjOGMwMWE0NjQ5Nzg253D

具體來說,該模塊返回一個函數,該函數使用二進制文件的相對路徑調用。這將在構建過程中從C++源代碼創建,并具有“.node”后綴。從調用返回的是引用加載項的 JavaScript 對象。由于附加組件定義了一個函數 ,因此此函數可作為返回對象的元素進行訪問。調用此函數實質上是調用C++代碼。

接下來是函數。它是一個標準的快速處理程序函數,每當客戶端請求終結點時都會調用它。它記錄條目,將響應的內容類型設置為 ,然后調用C++代碼來檢索 ADC 值。然后,它獲取數組并將其轉換為字符串,每行有一個數字:

files-aHViPTYzODY3JmNtZD1pdGVtZWRpdG9yaW1hZ2UmZmlsZW5hbWU9aXRlbWVkaXRvcmltYWdlXzU5ZDI2NTE3Njc2MzYucG5nJnZlcnNpb249MDAwMCZzaWc9M2JlMzU2NzY1NjAyMTNhOWY2ZWIwOTA2Y2M0MDc1YzY253D

最后,設置為初始化函數,該函數檢查用于更改終結點字符串的選項,并將終結點與函數關聯:

files-aHViPTYzODY3JmNtZD1pdGVtZWRpdG9yaW1hZ2UmZmlsZW5hbWU9aXRlbWVkaXRvcmltYWdlXzU5ZDI2NTc1NDEwOTgucG5nJnZlcnNpb249MDAwMCZzaWc9Yjg1ZDliMmFkYTg4ODVkOWRjMzIyMzJhNWE1YTI4MTU253D

該文件包含編譯C++代碼所需的信息。安裝包時會自動調用生成過程。

在下一期也是最后一期中,我們將構建一個用戶界面,該界面利用我們已經實現的服務,以便從Web瀏覽器控制開發板。

審核編輯:郭婷

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

    關注

    31

    文章

    5357

    瀏覽量

    120675
  • adc
    adc
    +關注

    關注

    98

    文章

    6513

    瀏覽量

    545037
  • C++
    C++
    +關注

    關注

    22

    文章

    2112

    瀏覽量

    73707
收藏 人收藏

    評論

    相關推薦

    寄存器,寄存器是什么意思

    寄存器,寄存器是什么意思 寄存器定義  寄存器是中央處理內的組成部分。寄存器是有限存貯容量
    發表于 03-08 14:26 ?2.2w次閱讀

    數據寄存器,數據寄存器是什么意思

    數據寄存器,數據寄存器是什么意思 數據寄存器數據寄存器包括累加AX、基址寄存器BX、計數
    發表于 03-08 14:38 ?1.3w次閱讀

    移位寄存器,移位寄存器是什么意思

    移位寄存器,移位寄存器是什么意思 移位寄存器_
    發表于 03-08 14:50 ?1.8w次閱讀

    寄存器與移位寄存器

    寄存器與移位寄存器介紹寄存器原理和移位寄存器的原理及實現。
    發表于 05-20 11:47 ?0次下載

    移位寄存器怎么用_如何使用移位寄存器_移位寄存器的用途

    移位寄存器是一個具有移位功能的寄存器,是指寄存器中所存的代碼能夠在移位脈沖的作用下依次左移或右移。本文主要介紹了移位寄存器的用途以及移位
    發表于 12-22 15:49 ?2w次閱讀

    主存和寄存器的區別介紹

    本文開始介紹了主存的概念和頻率及主存的大小,其次介紹寄存器工作原理與寄存器用途,最后介紹了主存和寄存器
    發表于 04-11 14:27 ?2.3w次閱讀

    寄存器由什么組成

    本文首先介紹寄存器的原理組成,其次介紹了ARM寄存器組成,最后介紹寄存器的用途。
    的頭像 發表于 08-21 18:33 ?3.7w次閱讀

    ATMEL SAMC21的ADC驅動寄存器操作和寄存器程序合集免費下載

    本文檔的主要內容詳細介紹的是ATMEL SAMC21的ADC驅動寄存器操作和寄存器程序合集免費下載。
    發表于 06-20 08:00 ?32次下載
    ATMEL SAMC21的<b class='flag-5'>ADC</b>驅動<b class='flag-5'>寄存器</b>操作和<b class='flag-5'>寄存器</b>程序合集免費下載

    STM32寄存器的簡介、地址查找,與直接操作寄存器

    什么是寄存器提到單片機,就不得不提到寄存器。根據百度百科介紹寄存器是中央處理內的組成部分。寄存器
    發表于 11-30 13:51 ?12次下載
    STM32<b class='flag-5'>寄存器</b>的簡介、地址查找,與直接操作<b class='flag-5'>寄存器</b>

    MPU6050寄存器介紹

    MPU6050寄存器介紹電源管理寄存器1(0X6B)陀螺儀配置寄存器(0X1B)加速度傳感配置寄存器
    發表于 12-06 11:51 ?21次下載
    MPU6050<b class='flag-5'>寄存器</b><b class='flag-5'>介紹</b>

    AArch64寄存器介紹

    作為 RISC 架構,AArch64 提供了大量的通用寄存器。除通用寄存器之外,本節還會介紹特殊寄存器、系統控制寄存器、處理
    的頭像 發表于 08-24 09:57 ?6186次閱讀

    labview讀取三菱plc寄存器內容

    如何使用LabVIEW讀取三菱PLC的寄存器內容,并提供一些實例代碼和注意事項。 首先,我們需要了解PLC寄存器的基本概念。PLC寄存器是一種用于存儲數據的內部變量,被用于傳輸和保存信
    的頭像 發表于 12-27 16:31 ?2340次閱讀

    MC17XS6500高邊驅動芯片寄存器介紹

    本文主要是對MC17XS6500高邊驅動芯片寄存器進行的介紹,MC17XS6500寄存器分為輸入寄存器和輸出寄存器,對常用的幾個輸入和輸出
    的頭像 發表于 12-29 08:27 ?813次閱讀
    MC17XS6500高邊驅動芯片<b class='flag-5'>寄存器</b>的<b class='flag-5'>介紹</b>

    AFE模擬前端寄存器讀取操作

    AFE模擬前端寄存器讀取操作是電子系統設計和調試中不可或缺的一環。寄存器作為AFE模擬前端中的重要組成部分,存儲著各種配置參數和狀態信息,通過讀取這些
    的頭像 發表于 03-15 15:50 ?739次閱讀

    Modbus協議的讀取保持寄存器

    功能碼用于讀取從設備保持寄存器的內容,不支持廣播模式。消息頓中指定了需要讀取的保持寄存器的起始地址和數目。而保持寄存器中各地址的具體內容和意
    的頭像 發表于 10-30 10:54 ?1617次閱讀
    主站蜘蛛池模板: 麻豆精品无码久久久久久久久| 欧美精品华人在线| 日韩精品一卡二卡三卡四卡2021| 99欧美精品| 日韩娇小性hd| 国产亚洲精品线视频在线| 杨幂视频在线观看1分30秒| 老师机影院| 大胸美女被C得嗷嗷叫动态图| 午夜国产羞羞视频免费网站| 黑吊大战白女出浆| 97色伦在色在线播放| 双性人皇上被c到哭| 九九国产精品成人AV麻豆| 99视频在线免费看| 亚洲福利天堂网福利在线观看| 久久青青草原精品国产软件| 边摸边吃奶边做带声音| 亚洲精品www久久久久久| 女人张开腿让男人桶爽免| 国产精品搬运| 97综合久久| 亚洲欧美高清在线| 日本最新免费区中文| 久久国产高清字幕中文| 调教椅上的调教SM总裁被调教 | 综合激情区视频一区视频二区| 日韩精品卡1卡2三卡四卡乱码| 火影小南被爆羞羞网站| 成人免费一级毛片在线播放视频| 亚洲在线视频自拍精品| 色久久久综合88一本道| 久久午夜宫电影网| 国产久久re6免费热在线| 99视频偷窥在线精品国自产拍| 亚洲精品午夜久久久伊人| 日本一二三区视频在线| 美女被j进去动态| 国精品产露脸偷拍视频| 高清国产一区| YELLOW免费观看完整视频|