內容:串列傳輸 實作:Arduino to PC 、 Arduino to Arduino 簡報:廖崇義

Slides:



Advertisements
Similar presentations
人機介面 Arduino 簡介 授課教師 開課單位. Arduino 簡介 Arduino 是一塊 Open source 的 Simple i/o 介面板,並 且具有使用類似 java, C 語言的開發環境。 可以快速使用 Arduino 語言 ( 基於 wiring) 與 Flash 或 Processing…
Advertisements

水 钟 古代计时器 陈宁心.
高雄市復華高級中學 校務分享簡介 簡報人:康木村 校長.
序列埠通訊.
教育信息化建设诊断评价与改进一级指标体系构建
媒体融合式转型 社会和文化教研部 高级经济师 郭全中
Arduino Wifi 模組 學生:楊御政 指導老師:林得裕 老師.
Great jungle + Abundant minerals
CH.2 Introduction to Microprocessor-Based Control
串行通讯的概念 串行通讯:一条信息的各位数据被逐位按顺序传送 的通讯方式称为串行通讯。
智慧電子應用設計導論(1/3) Sensor-II
项目2 2个LED发光二极管控制 知识与能力目标 熟悉单片机的I/O口功能与特性。
1个USB Host 1.1端口:可支持U盘存储器(读取客户程序自动下载) 1个USB Device 2.0端口:支持USB程序下载
CH2 開發環境介紹 最簡單的互動設計 – Arduino一試就上手 孫駿榮、吳明展、盧聰勇.
KSDTools 伺服控制軟體與通訊 暨 伺服馬達選用 教育訓練
AC500 调试总结 485转以太网通讯配置 lizhenfei.
物聯網實務 大仁科技大學 資訊工程與娛樂科技系 李文禮.
Arduino 基本知識.
智慧電子應用設計導論(1/3) Sensor-III
动手玩转Arduino (三) 串口输入输出
電子技術(三) 小專題報告 紅外線感溫顯示器
102年度新北市立三重商工旗艦計畫實施方案 先進車用電子控制技術培育計畫
Install、Operate Manual
特雷門琴 (Theremin) 是 tone() 函數的應用, 它只需要一個蜂鳴器, 一個光敏電阻, 以及一個 10K 電阻就可以進行測試了. 實際電路接線如下 :光敏電阻與 10 K 電阻串聯, 光敏電阻一端接 5V, 與電阻串接處接Arduino 的 A0 腳, 電阻另一端接地. 而蜂鳴器則 +
CH5 數位訊號 最簡單的互動設計 – Arduino一試就上手 孫駿榮、吳明展、盧聰勇.
YM100开发实验板 演讲人:熊小燕 2009年月12月16日
第八章 80C51单片机的串行通信 主要内容:本章主要介绍80C51串行通信相关知识,包括串行通信基本概念,80C51单片机的串行口及其工作方式,以及单片机在双机或多机通信中的应用。
Arduino 藍牙通訊模組.
8051's UART mode0 output 通訊二甲 B 洪紹凱.
UART口的第一次接触 MCU起航 QQ:
Arduino单片机基础 周弋
    Arduino 1602 LCD 量測電壓顯示 LCD 示波器    林品成 月.
利用Arduino 進行Helmholtz實驗
小專題-霍爾電路之IC研究 組員:施怡儒 S 柯曄新 S 張久藝 S
8-1 功能簡介 8-4 實驗成果 8-2 電路說明 8-5 延伸應用與練習 8-3 程式設計
Arduino.
动手玩转Arduino (五) RF数据通信
第15章 串行通信及接口电路.
智慧電子應用設計導論(1/3) Display
加熱溫度控制器 S 許位祥 S 李世震 S 陳彥霖 S 羅章元 指導教授:林得裕教授.
語法:Variables & Functions 實作:Digital out (Button+LED) 簡報:廖崇義
Labview內部Linx功能簡介(Analog/Digital/PWM)
DHT11 溫溼度感測器 林品成 月.
JTAG INTERFACE SRAM TESTER WITH C-LCM
串行通讯的概念 串行通讯:一条信息的各位数据被逐位按顺序传送 的通讯方式称为串行通讯。
智慧電子應用設計導論(1/3) Wireless
    使用Arduino量測交流(AC)電壓    林品成 月.
    使用Arduino量測直流(DC)電壓    林品成 月.
6-1 功能簡介 6-4 實驗成果 6-2 電路說明 6-5 延伸應用與練習 6-3 程式設計
第九章 MCS-51串行接口 9.1 串行数据通信概述 通 信 并行 一、并行通信和串行通信 串行 串行通信 数据是一位一位传送的
亚博科技 Arduino视频教程 第8讲 蜂鸣器发声实验.
5-6 串列埠模式0輸出埠擴充實習.
单片机原理与应用 主讲人:张荣刚 福建师范大学福清分校.
語法:結構 實作:Analog in (VR、光敏+七段顯示電壓) 簡報:廖崇義
亚博科技 Arduino视频教程 第12讲 8乘8点阵.
物聯網期末報告 組員: 邱景柏 方嘉慶 陳約翰 洪銘陽
3.5 出入口管理软件设置与设计验证.
知识点0204 夏普红外测距传感器 主讲人:宁波鄞州职业教育中心学校 陈浙 (Arduino功能模块与应用)
測試藍芽模組的接收和發送功能 班級:資通三A 學號: 姓名:簡宏恩.
Arduino課程 液晶1602 中部自造者基地-雲科大.
UART通信实验(二) McBSP软件模拟异步通信
K60入门课程 03 首都师范大学物理系 靳熙芃.
单片机应用技术 (C语言版) 第8章 串行通信接口
单片机原理及应用 (C语言版) 第8章 单片机系统扩展
第五章 序列埠通訊 並列與序列通訊簡介 認識序列埠 認識字元資料類型 字串資料類型 從序列埠監控視窗觀察變數 從Arduino接收序列資料
第六章 S3C2410的串口UART及编程 通用异步收发传输器(Universal Asynchronous Receiver/Transmitter)
Arduino 藍牙通訊模組.
MCU-COM1 實驗架設教學.
第3章 数据通信与广域网技术.
第2章 Arduino编程.
Presentation transcript:

內容:串列傳輸 實作:Arduino to PC 、 Arduino to Arduino 簡報:廖崇義 Arduino week4 內容:串列傳輸 實作:Arduino to PC 、 Arduino to Arduino 簡報:廖崇義

序列通訊 Asynchronous Communication (非同步傳輸)在傳送的資料內加上同步信號 , 當接收端收到同步信號 , 便知道接下來的信號是資料 Synchronous Communication (同步傳輸)傳送與接收雙方共用一個時鐘脈衝 (Clock)

序列通訊RS-232簡介 在TxD和RxD上: 邏輯1(MARK)=-3V~-15V       邏輯0(SPACE)=+3~+15V 訊號分析

序列通訊RS-232簡介 設定項目鮑率(Baud Rate)、同位檢查(Parity Check)和停止位(Stop Bit)

DB9硬體簡介 D-sub9pin(PC COM port)

Arduino Serial Port The ATmega32U4 provides UART TTL (5V) serial communication, which is available on digital pins 0 (RX) and 1 (TX). 在TxD和RxD上: 邏輯1(MARK)= 5V       邏輯0(SPACE)= 0V

HIN232線路圖

Arduino Serial語法 void setup(){   Serial.begin(9600); // opens serial port0, sets data rate to 9600 bps   Serial1.begin(38400); // opens serial port1,sets data rate to 38400 bps   Serial2.begin(19200); // opens serial port2,sets data rate to 19200 bps      Serial.println(“Hello Computer”); //serial port0 output   Serial1.println("Hello Serial 1"); //serial port1 output   Serial2.println("Hello Serial 2"); //serial port2 output } void loop() {} Leonardo Serial0: 透過USB的虛擬COM Port上傳到電腦 Serial1: 由Arduino的D1、D2輸出

Ex1. int analogValue = 0; // variable to hold the analog value void setup() { Serial.begin(9600); // open the serial port at 9600 bps: } void loop() { analogValue = analogRead(0); // read the analog input on pin 0: // 以各種格式輸出 Serial.print(analogValue); //位註明格式將以十進位輸出 Serial.print(“\t”); //輸出Tab Serial.print(analogValue, DEC); //以十進位輸出 Serial.print(analogValue, HEX); //以十六進位輸出 Serial.print(analogValue, OCT); //以八進位輸出 Serial.println(analogValue, BIN); // 以二進位輸出並換行 delay(10);

Ex2. int incomingByte = 0; // 存取電腦鍵入的數值 void setup() { Serial.begin(9600); // opens serial port, sets data rate to 9600 bps } void loop() if (Serial.available() > 0) // 判斷緩衝區是否有資料傳入 incomingByte = Serial.read(); // 讀取鍵入資料 Serial.print(“I received: ”); //輸出字串 Serial.println(incomingByte, DEC); //輸出鍵入資料

Arduino1通知Arduino2開始做類比取樣 Arduino2讀取VR值 Arduino2將值傳給Arduino1 Ex3. 電腦輸入”s ”至Arduino1 Arduino1通知Arduino2開始做類比取樣 Arduino2讀取VR值 Arduino2將值傳給Arduino1 Arduino1將值由Serial0輸出到電腦 Arduino1 void setup() { Serial.begin(9600); Serial1.begin(9600); } void loop() { if (Serial.available() > 0) //由電腦端讀入 int incomingByte = Serial.read(); if(incomingByte==115) //判斷是否讀到 ”s” Serial1.println(“s”); //輸出至Arduino2 if (Serial1.available() > 0) //由Arduino2輸入 int val = Serial1.read(); Serial.println(val); Arduino2 void setup() { Serial1.begin(9600); } void loop() { if (Serial1.available() > 0) int incomingByte = Serial1.read(); if(incomingByte==115) //判斷是否讀到 ”s” int val = analogRead(3); val=map(val, , 0, 1023, 0,9); Serial1.println(val);

Arduino1通知Arduino2開始做類比取樣 Arduino2讀取VR值 Arduino2將值傳給Arduino1 Ex4. 電腦輸入”s ”至Arduino1 Arduino1通知Arduino2開始做類比取樣 Arduino2讀取VR值 Arduino2將值傳給Arduino1 Arduino1將值由Serial0輸出到電腦 Arduino1 void setup() { Serial.begin(9600); Serial1.begin(9600); } void loop() { if (Serial.available() > 0) //由電腦端讀入 char incomingChar = Serial.read(); if(incomingChar==‘s’) //判斷是否讀到 ‘s’ Serial1.println(“s”); //輸出至Arduino2 if (Serial1.available() > 0) //由Arduino2輸入 char val = Serial1.read(); Serial.println(val); Arduino2 void setup() { Serial1.begin(9600); } void loop() { if (Serial1.available() > 0) char incomingChar = Serial1.read(); if(incomingChar==‘s’) int val = analogRead(3); Serial1.println(val);

練習題 由電腦鍵入一四位數 Arduino由Serial Port讀入四個ASCII碼 並將之轉換成十進位數輸出到電腦端 ASCII碼字元0~9為DEC48~57 設四位數為”A”,”B”,”C”,”D” 將ABCD字元轉換成十進位: (A-48)*1000+(B-48)*100+(C-48)*10+(D-48)