<em id="vxn3k"></em>
  • <div id="vxn3k"></div>
    <em id="vxn3k"></em>
    1. <div id="vxn3k"><tr id="vxn3k"></tr></div>

          <div id="vxn3k"></div>
          
          
          <em id="vxn3k"></em>
          1. <optgroup id="vxn3k"><small id="vxn3k"><track id="vxn3k"></track></small></optgroup>
          2. <button id="vxn3k"><menu id="vxn3k"></menu></button>
          3. <delect id="vxn3k"></delect>

            英創Linux主板的Python, C#實例簡介之三

             2020/10/20    

              本文主要介紹在英創Linux工控主板(ESM8000、ESM7000和ESM6800H)上,采用Python和C#編程,實現對SPI和I2C兩種常用工控接口的訪問。Python和C#實例,均采用Visual Studio Code作為基本的編程工具,其代碼可在主板 + ESMARC評估底板上運行,其基本的硬件環境采用采用ESM8000工控主板 + 評估底板構成,如下圖所示:


            英創Linux主板的Python, C#實例簡介之三.png


              SPI接口采用把SPI_MOSI與SPI_MISO兩條串行數據短接的方法,來驗證SPI接口的收發功能。對I2C接口,則外接一個RTC芯片(ISL1208),通過讀寫芯片中USER寄存器,來展示I2C的操作。測試結果通過調試串口(console)輸出。


            Step7_Spi


              英創ESMARC主板的SPI接口與GPIO28 – GPIO31復用管腳,具體的硬件配置信息如下:


            配置ESM8000,  ESM7000, ESM6800H
            SPI_MISOGPIO28
            SPI_MOSIGPIO29
            SPI_CLKGPIO30
            SPI_CSNGPIO31
            DevNode/dev/spidev1.0


              短接GPIO28、GPIO29兩個管腳,使SPI接收數據等于發送的數據。設置SPI模式0,SPI時鐘為1MHz,可用示波器驗證SPI模式、時鐘頻率等的正確性。


            Python實現


            英創Linux主板的Python, C#實例簡介之三.png


            C#實現


              C#的SPI類庫包含在GPIO package中,因此需要添加System.Device.Gpio包。代碼實例如下:


            英創Linux主板的Python, C#實例簡介之三.png


            Step8_I2c


              英創ESMARC主板的I2C接口與GPIO26 – GPIO27復用管腳,具體的硬件配置信息如下:


            配置ESM8000,  ESM7000, ESM6800H
            I2C_SDAGPIO26
            I2C_SCLGPIO27
            DevNode/dev/i2c-0


              RTC芯片ISL1208的I2C地址為0x6F。芯片包含有兩個Scratch寄存器,寄存器Index 分別為 0x12,0x13,可用于存儲用戶專用信息。


            Python實現


            英創Linux主板的Python, C#實例簡介之三.png


            C#實現


              C#的I2C類庫包含在GPIO package中,因此需要添加System.Device.Gpio包。代碼實例如下:


            英創Linux主板的Python, C#實例簡介之三.png

            日本亚洲欧美国产日韩ay-欧洲亚洲色视频综合在线-午夜少妇性开放影院-蜜芽国内精品视频在线观看