18video性欧美19sex,欧美高清videosddfsexhd,性少妇videosexfreexxx片中国,激情五月激情综合五月看花,亚洲人成网77777色在线播放

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

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

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

怎樣使用來自PC的串行命令控制外部LED

454398 ? 來源:網(wǎng)絡(luò)整理 ? 作者:網(wǎng)絡(luò)整理 ? 2019-12-05 15:53 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

chipKIT Uno32板上的PIC32處理器提供兩個硬件串行端口。板載FTDI芯片使用其中之一來創(chuàng)建USB-UART接口,該接口允許PC上運行的MPIDE工具通過USB端口與Uno32板進行通信。在本教程中,我們將使用相同的USB-UART接口來演示Uno32與PC之間的雙向異步串行通信。 Uno32板通過PC的USB端口接收串行命令,以打開和關(guān)閉外部LED。作為回報,Uno32板通過發(fā)送LED的新狀態(tài)來確認PC。

怎樣使用來自PC的串行命令控制外部LED

理論

chipKIT Uno32板具有兩個硬件串行端口: UART port1 和 UART端口2。引腳0和引腳1用作 UART端口1的 RX 和 TX 。 這些引腳也被板上的FT232R USB串行轉(zhuǎn)換器使用。同樣, UART端口2 分別使用引腳39和引腳40來實現(xiàn) RX 和 TX 功能。我們將在本教程中使用 UART port1 ,因為它允許通過USB端口與PC進行串行通信。

MPIDE具有內(nèi)置的串行監(jiān)視工具,可讓您進行以下操作:觀察Uno32發(fā)送其串行端口的任何數(shù)據(jù)。它還使您可以通過同一串行接口將字符從PC發(fā)送回Uno32板。您可以通過單擊工具欄中的串行監(jiān)視器按鈕來打開串行監(jiān)視器窗口。在Windows版本的MPIDE中,串行監(jiān)視器窗口如下所示。

MPIDE串行監(jiān)視器窗口

其中有空白文本在頂部的方框中輸入要發(fā)送到chipKIT Uno32板的文本。在下面的空白處,將顯示Uno32板發(fā)送的串行數(shù)據(jù)。在右下角,您可以選擇串行通信的波特率(速度)。波特率的默認設(shè)置為9600波特,但是您可以從下拉菜單中選擇其他波特率。請注意,對于串行通信,必須將chipKIT板配置為相同的波特率。返回到MPIDE的編程模式之前,必須釋放串行端口。您可以通過關(guān)閉串行監(jiān)視器窗口來做到這一點。

電路設(shè)置

本教程的實驗電路設(shè)置非常簡單。您所需要的只是一個LED和一個220?串聯(lián)電阻。將通過從PC接收到的串行命令來控制LED。下圖顯示了與Uno32板的LED連接。 LED連接到引腳2。請注意,在串行通信期間,數(shù)字引腳0(RX)和1(TX)被占用,不能用于其他I/O。該板已連接到USB端口并從USB接收電源。

通過PC上的串行命令控制的外部LED

書寫草圖

在設(shè)置功能中,您需要告訴Uno32打開串行端口。這是通過 Serial.begin()命令完成的。括號內(nèi)的數(shù)字設(shè)置串行通訊的波特率。與計算機通訊的典型波特率是9600,但也支持其他速度。接下來,您需要將Pin 2定義為輸出,可以使用 pinMode()函數(shù)完成。

為了將數(shù)據(jù)從Uno32發(fā)送到PC,MPIDE主要提供了兩個命令: Serial.print()和 Serial.println()。兩者都通過串行端口將括號內(nèi)的內(nèi)容發(fā)送到PC。在PC端,接收到的數(shù)據(jù)顯示在串行監(jiān)視器窗口中。但是,使用 print 和 println 的區(qū)別在于它們從串行端口打印數(shù)據(jù)的方式。當您使用 Serial.print()時,光標將停留在剛打印的內(nèi)容的末尾。因此,如果緊隨其后的是另一個打印命令,則新數(shù)據(jù)將在同一行中先前接收到的數(shù)據(jù)的結(jié)尾處顯示在串行監(jiān)視器窗口中。另一方面, Serial.println()會在末尾帶有換行符來打印數(shù)據(jù),在打印完數(shù)據(jù)后,光標會向下移動到下一行。這兩個命令可以采用多種形式,在Arduino串行庫頁面中對此進行了很好的描述。

這里是完整的程序,用于通過PC通過串行線路發(fā)送的命令字節(jié)來控制外部LED。如果Uno32從PC接收到“ 1”,則它將點亮LED。如果接收到“ 0”,則LED熄滅。響應該命令,Uno32將LED的新狀態(tài)打印回PC。

/*

Tutorial 2: Serial interface between PC and chipKIT

Description: chipKIT UNO32 receives commands from a PC through serial port

and control an external LED connected to pin 2

Board: chipKIT UNO32

*/

const int LED_PIN = 2; // LED is connected to digital I/O pin 2

int SERIAL_DATA; // Variable to store incoming serial byte

void setup() {

Serial.begin(9600); // Sets the baud rate for serial transmission

pinMode(LED_PIN, OUTPUT);

// Send these messages to PC only once

Serial.println(“Serial interface between PC and chipKIT”);

Serial.println(“1: LED ON, 0: LED OFF”);

digitalWrite(LED_PIN, LOW); // LED is off initially

}

void loop() {

if(Serial.available()》0){ // Check if serial data is available.

SERIAL_DATA = Serial.read(); // If yes, read the incoming byte

if(SERIAL_DATA == ‘1’) { // Check if the received byte is ‘1’

digitalWrite(LED_PIN, HIGH); // If so, turn the LED ON

Serial.println(“LED is ON”); // and acknowledge.

}

if(SERIAL_DATA == ‘0’) { // If the received byte is ‘0’,

digitalWrite(LED_PIN, LOW); // turn the LED OFF and

Serial.println(“LED is OFF”); // acknowledge.

}

}

}

下載草圖文件

Serial.begin(9600)打開序列號Uno32的端口,并設(shè)置9600的波特率。您可以看到在設(shè)置函數(shù)中有兩個 Serial.println()命令。它們在串行線上打印兩條文本消息,這些消息顯示在串行監(jiān)視器上。由于設(shè)置功能僅執(zhí)行一次,因此這些消息在開始時也僅打印一次。在循環(huán)功能內(nèi)部使用 Serial.available()命令,該命令檢查PC是否已將任何字符發(fā)送到串行端口。它返回可從串行端口讀取的字符數(shù)。一旦有可用數(shù)據(jù),就可以使用 Serial.read()命令進行讀取。然后Uno32將接收到的字節(jié)與“ 1”和“ 0”進行比較,以對LED采取適當?shù)牟僮鳌?/p>

輸出

驗證并上傳以上內(nèi)容素描到Uno32板上。打開串行監(jiān)視器窗口,并確保將其配置為使用9600的波特率。重置Uno32板,并等待其退出引導加載程序模式,以便它可以執(zhí)行用戶程序。您將在串行監(jiān)視器上讀到兩條文本行(“ PC和chipKIT之間的串行接口”和“ 1:LED亮,0:LED滅”) Uno32。如果您在頂部的發(fā)送框中輸入“ 1”,然后點擊發(fā)送按鈕,它將通過串行線路發(fā)送。 Uno32接收到命令字節(jié)后,將點亮LED。如果發(fā)送的是“ 0”,則LED將熄滅。 Uno32板通過在串行監(jiān)視器上打印回新的LED狀態(tài)來確認收到的命令。如果收到的字符不是‘0’和‘1’,則Uno32將忽略它。

通過串行命令控制LED

責任編輯:wv

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

    關(guān)注

    243

    文章

    24337

    瀏覽量

    684841
  • 串行
    +關(guān)注

    關(guān)注

    0

    文章

    249

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    如何利用N9H20 UART模塊接收來自PC/NB的消息?

    利用N9H20 UART模塊接收來自PC/NB的消息
    發(fā)表于 09-05 06:20

    PC0340具有按鍵掃描LED驅(qū)動專用電路數(shù)據(jù)手冊

    PC0340是占空比可調(diào)的LED顯示控制驅(qū)動電路。由16根段輸出、8根位輸出、數(shù)字接口、數(shù)據(jù)鎖存器、顯示存儲器、鍵掃描電路及相關(guān)控制電路組成了一個高可靠性的單片機外圍
    發(fā)表于 08-07 14:26 ?0次下載

    16段*8位/8*4按鍵陣矩 具有按鍵掃描LED專用電路

    概述:PC0340是占空比可調(diào)的LED顯示控制驅(qū)動電路。由16根段輸出、8根位輸出、數(shù)字接口、數(shù)據(jù)鎖存器、顯示存儲器、鍵掃描電路及相關(guān)控制電路組成了一個高可靠性的單片機外圍
    發(fā)表于 08-06 16:30

    PC0310B 高亮度恒流LED驅(qū)動控制電路數(shù)據(jù)手冊

    PC0310=16*8點陣(EQSOP28)PC0310A=12*8點陣(EQSOP28/SSOP24)PC0310B=8*8點陣(SSOP24)?PC0310是基于I2C通訊協(xié)議的高
    發(fā)表于 08-04 14:55 ?0次下載

    PC0310A 高亮度恒流LED驅(qū)動控制電路數(shù)據(jù)手冊

    PC0310=16*8點陣(EQSOP28)PC0310A=12*8點陣(EQSOP28/SSOP24)PC0310B=8*8點陣(SSOP24)?PC0310是基于I2C通訊協(xié)議的高
    發(fā)表于 08-04 14:54 ?0次下載

    PC0310 高亮度恒流LED驅(qū)動控制電路數(shù)據(jù)手冊

    PC0310=16*8點陣(EQSOP28)PC0310A=12*8點陣(EQSOP28/SSOP24)PC0310B=8*8點陣(SSOP24)?PC0310是基于I2C通訊協(xié)議的高
    發(fā)表于 08-01 17:36 ?1次下載

    USB串行配置實用程序是否有可用的命令行版本?

    USB串行配置實用程序是否有可用的命令行版本?
    發(fā)表于 07-22 08:09

    無法將應用程序下載到串行閃存怎么解決?

    我嘗試在藍牙模塊CYBT-343026-01(CYW20706)上下載應用程序到串行閃存,但失敗了。 第一步是按照 AIROC? HCI UART 控制協(xié)議文檔(見下文)的指示向模塊發(fā)送
    發(fā)表于 07-04 06:49

    openocd中是否有命令可以設(shè)置電源配置以使用來自電路板而不是來自 miniprog4的電源,并將編程電壓設(shè)置為1.8V?

    我正在嘗試對板上的 CYPM1311 進行編程,電源電壓為 1.8V。 openocd中是否有命令可以設(shè)置電源配置以使用來自電路板而不是來自 miniprog4 的電源,并將編程電壓設(shè)置為 1.8V?
    發(fā)表于 05-15 08:14

    LED2472G 具有LED錯誤檢測和增益控制功能的24通道LED驅(qū)動器數(shù)據(jù)手冊

    驅(qū)動能力,允許多個 LED 串聯(lián)。該設(shè)備配置為 3 組(紅色、綠色和藍色),每組 8 個獨立控制的通道??梢栽?4 mA 至 72 mA 的范圍內(nèi)為每種顏色單獨調(diào)節(jié) LED 電流。該范圍分為兩個子范圍
    的頭像 發(fā)表于 04-15 17:46 ?879次閱讀
    <b class='flag-5'>LED</b>2472G 具有<b class='flag-5'>LED</b>錯誤檢測和增益<b class='flag-5'>控制</b>功能的24通道<b class='flag-5'>LED</b>驅(qū)動器數(shù)據(jù)手冊

    LED7708 16 通道 x 85 mA LED驅(qū)動器,配有增壓控制器及4線串行接口數(shù)據(jù)手冊

    LED7708 經(jīng)過專門設(shè)計,可從單個低壓軌開始為多個 LED 供電。它集成了一個升壓控制器、16 個電流發(fā)生器和一個 4 線串行接口。升壓控制
    的頭像 發(fā)表于 04-14 17:10 ?850次閱讀
    <b class='flag-5'>LED</b>7708 16 通道 x 85 mA <b class='flag-5'>LED</b>驅(qū)動器,配有增壓<b class='flag-5'>控制</b>器及4線<b class='flag-5'>串行</b>接口數(shù)據(jù)手冊

    PC3020二功能電流型降壓恒流LED驅(qū)動器規(guī)格書

    PC3020是一款外圍電路簡單的二功能平均電流型LED恒流驅(qū)動器,適用于 6-100V?全電壓范圍的降壓BUCK大功率調(diào)光恒流LED領(lǐng)域。PC3020芯片采用平均電流
    發(fā)表于 03-19 16:56 ?0次下載

    使用NXP MCX-N板卡新增命令控制

    此次任務(wù)通過串口命令控制RGB LED,相比較與上一次任務(wù)通過單個字符控制增加了FreeRTOS-CLI組件,支持更復雜的、帶參數(shù)的命令
    的頭像 發(fā)表于 03-17 13:38 ?1316次閱讀
    使用NXP MCX-N板卡新增<b class='flag-5'>命令</b><b class='flag-5'>控制</b>

    PC1902同步降壓LED驅(qū)動器規(guī)格書

    電流模式操作提供快速的瞬態(tài)響應。LED電流低紋波和外部電感器和電容器尺寸小以1MHz的開關(guān)頻率實現(xiàn)。PC1902需要最少數(shù)量的可用的標準外部組件提供符合ROHS標準的6針SOT23-6
    發(fā)表于 02-09 10:51 ?1次下載

    Vivado中DDRX控制器(mig)ip核配置中關(guān)于命令序號選擇和地址映射說明

    本篇主要討論Vivado中DDRX控制器(mig)ip核配置中關(guān)于命令序號選擇和地址映射說明(一) 利用Xilinx 7系列FPGA開發(fā)時,經(jīng)常需要驅(qū)動外部存儲器--DDRX。Xilinx提供了
    的頭像 發(fā)表于 11-27 09:30 ?4697次閱讀
    Vivado中DDRX<b class='flag-5'>控制</b>器(mig)ip核配置中關(guān)于<b class='flag-5'>命令</b>序號選擇和地址映射說明