用開關選擇動作狀態 單晶片微電腦控制實習 輸入埠基礎實習 國立大甲高工 電機科 2019年1月16日

Slides:



Advertisements
Similar presentations
說 劍 《莊子‧雜篇》─ 第 一 組 賴泊錞 謝孟儒 張維真 羅苡芸
Advertisements

忠孝國小自立午餐老師的叮嚀 教師指導手冊.
本章内容: 中断的概念 MCS-51单片机中断系统 外部事件中断及应用
A B C D E F 5-2 七段數字顯示控制實習 Input 0H 1H 2H 3H 4H 5H 6H 7H 8H 9H 0AH 0BH
5-3 8x8矩陣LED控制實習.
主題五 CPU Learning Lab.
Chapter 5 迴圈.
8051 指令.
基本程式範例.
得技通电子 问题 1 右何者非為假指令 (1) XRL (2) EQU (3) MACRO (4) ORG.
國立大甲高工 電機科 單晶片微電腦控制實習 輸出埠基礎實習 廣告燈 2018年11月7日 8051 單晶片實習----E0903廣告燈.
國立大甲高工 電機科 單晶片微電腦控制實習 輸出埠基礎實習 霹靂燈 2018年11月7日 8051 單晶片實習---E0902霹靂燈.
電腦操作 會考電腦 浸信會永隆中學.
單晶片微處理機基礎實習 主講:唐慧玲 老師.
单片机原理与应用.
正反器 一、循序邏輯電路 二、動作情形:用時序(timing),其次輸出( )是由外界輸入與( )所共同決定。
電腦硬體裝修乙級技術士檢定 第一站 檢修卡製作及介面控制 撰寫PLD布林代數:PALASM 4 撰寫BASIC 程式語言
第2章 MCS-51单片机指令系统与汇编语言程序设计
報告者:朱耿育 紀翔舜 組員:詹以群 張永傑 指導老師:梁新潁
复 习 一. 计算机中的数和编码 1. 2,10,16进制数及其之间的转换(整数) 按权展开,除x取余 2
第二部分 微机原理 第4章 汇编语言 程序设计 主讲教师:喻红.
本章内容: 中断的概念 MCS-51单片机中断系统 外部事件中断及应用
第8章 模拟接口 8.1 模拟接口概述 8.2 DAC及其接口 8.3 ADC及其接口.
第二部分 微机原理 第3章 MCS-51的 指令系统 主讲教师:喻红.
一、任务描述 二、任务分析 三、任务演示 四、相关知识 五、任务布置. 一、任务描述 二、任务分析 三、任务演示 四、相关知识 五、任务布置.
2-3 基本數位邏輯處理※.
第6章 MCS - 51单片机内部定时器/ 计数器 及串行接口 6.1 定时器/计数器的结构及工作原理 6.2 方式和控制寄存器
單晶片微電腦控制實習 使用計時中斷作走馬燈 計時器的基礎實習 國立大甲高工 電機科 2018年11月21日
國立大甲高工 電機科 單晶片微電腦控制實習 輸出埠基礎實習 閃爍燈 2018年11月23日 8051 單晶片實習---E0901閃爍燈.
使用VHDL設計—4位元加法器 通訊一甲 B 楊穎穆.
知识点7---矩阵初等变换的应用 1. 求矩阵的秩 2. 求矩阵的逆 3. 解矩阵方程.
2-1 接腳說明 2018/11/30 第2章 系統分析.
A B C D E F 5-2 七段數字顯示控制實習 Input 0H 1H 2H 3H 4H 5H 6H 7H 8H 9H 0AH 0BH
5-8 光遮斷器控制實習.
第八章 MCS-51与数码显示器和键盘的接口 一、MCS-51与数码显示器接口 数码显示器是单片机应用产品中最常用的廉价的输 出设备,它由8个发光二极管按一定规律排列而成, 当某一发光二极管导通时,则会被点亮,控制不同 组合的二极管导通,就能显示出各种字符。 1.显示器的结构.
本 章 重 点 单片机的简单I/O扩展 8255A可编程并口芯片 8279可编程键盘/显示器接口芯片 单片机键盘接口技术
第三章 指令系统.
第1章 單晶片微電腦概論.
第10章 综合实训 课题一 水温控制系统设计 一、实训目的 二、课题要求 熟悉常用温度传感器AD590的特性及接口电路的设计方法;
第8章 MCS-51串行口 8.1 串行口及其通信方式 8.2 IBM-PC系列机与 单片机 的通信技术.
一、任务描述 二、任务分析 三、任务演示 四、相关知识 五、任务布置. 一、任务描述 二、任务分析 三、任务演示 四、相关知识 五、任务布置.
一、任务描述 二、任务分析 三、任务演示 四、相关知识 五、任务布置. 一、任务描述 二、任务分析 三、任务演示 四、相关知识 五、任务布置.
第九章 MCS-51串行接口 9.1 串行数据通信概述 通 信 并行 一、并行通信和串行通信 串行 串行通信 数据是一位一位传送的
数码管数字时钟电路的设计 1. 系统硬件电路的设计
第七單元 正反器 (教科書第四章) 數位系統實驗
第3章 MCS-51指令系统 介绍MCS—51系列单片机的寻址方式 介绍MCS—51系列单片机的指令系统
第4章 80C51系列指令系统 教学目的:熟悉80C51系列单片机的寻址方式及 每一种寻址方式对应的寻址空间;掌 握每一条指令功能。
5-6 串列埠模式0輸出埠擴充實習.
使用VHDL設計 七段顯示器 通訊工程系 一年甲班 姓名 : 蘇建宇 學號 : B
单片机原理与应用 主讲人:张荣刚 福建师范大学福清分校.
基本IO.
4.19 Fsys _ SLOW MODE HT66F70A.
數位邏輯設計與實習 Ch08實驗室實習.
4-16 SLEEP0 HT66F70A.
汽车单片机应用技术 学习情景1: 汽车空调系统的单片机控制 主讲:向楠.
1.電腦數字系統介紹 2.電腦數字系統轉換 3.資料在電腦內部的表示法
一、簡介 電腦硬體設計:純硬體電路(hardware)及韌體電 路(firmware)兩種方式。
得技通电子 问题 1 右何者非為假指令 (1) XRL (2) EQU (3) MACRO (4) ORG.
期末報告第一題 通訊四甲 B 湯智瑋.
查表法&電腦IO Port二進制轉七段顯示器
单片机应用技术 (C语言版) 第3章 MCS-51指令系统及 汇编程序设计
第三章 Arduino互動程式設計入門 Arduino程式基礎 認識變數 認識數字系統 認識常數.
ABAP Basic Concept (2) 運算子 控制式與迴圈 Subroutines Event Block
由一个佯谬看涡旋电流的存在 PB 田鸿翔 指导老师 万树德.
使用VHDL設計-七段顯示 通訊一甲 B 楊穎穆.
用按鈕控制動作狀態 單晶片微電腦控制實習 輸入埠基礎實習 國立大甲高工 電機科 2019年9月10日
其解亦可表为向量形式.
微 處 理 機 專 題 – 8051 C語言程式設計 主題:階乘計算
單晶片實作講義 微電腦控制界面 (LCD) 。.
ABAP Basic Concept (2) 運算子 控制式與迴圈 Subroutines Event Block
Presentation transcript:

用開關選擇動作狀態 單晶片微電腦控制實習 輸入埠基礎實習 國立大甲高工 電機科 2019年1月16日 國立大甲高工 電機科 單晶片微電腦控制實習 輸入埠基礎實習 用開關選擇動作狀態 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

練習用指令取得外界狀況 使輸出狀態能隨開關的設定情形而改變 練習用 XRL 指令使輸出狀態改變 實習 10-1 用開關選擇動作狀態 實習 10-1 用開關選擇動作狀態 練習用指令取得外界狀況 使輸出狀態能隨開關的設定情形而改變 練習用 XRL 指令使輸出狀態改變 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

動作情形 電路圖 流程圖 程式 習題 實習 10-1 用開關選擇動作狀態 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態 實習 10-1 用開關選擇動作狀態 動作情形 電路圖 流程圖 程式 習題 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

用開關選擇動作狀態: 開關的優先次序: sw1→sw2→sw3→sw4 若SW1閉合時 若SW3閉合時 若SW2閉合時 若SW4閉合時 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

用開關選擇動作狀態的電路圖: 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

用開關選擇動作狀態的流程圖: 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

用開關選擇動作狀態的程式 CASE3: MOV A,R3 MOV P1,A MOV R1,#00000000B XRL A,#11110000B MOV R3,A ACALL DELAY AJMP TEST CASE4: MOV A,R4 XRL A,#00001111B MOV R4,A ; DELAY: MOV R5,#2 DL1: MOV R6,#250 DL2: MOV R7,#200 DL3: DJNZ R7,DL3 DJNZ R6,DL2 DJNZ R5,DL1 RET END ORG 0000H MOV R1,#00000000B MOV R2,#01010101B MOV R3,#00001111B MOV R4,#11110000B ; TEST: ORL P3,#0FFH JNB P3.7,CASE1 JNB P3.6,CASE2 JNB P3.5,CASE3 JNB P3.4,CASE4 AJMP TEST CASE1: MOV A,R1 MOV P1,A XRL A,#11111111B MOV R1,A ACALL DELAY AJMP TEST CASE2: MOV A,R2 XRL A,#10101010B MOV R2,A ACALL DELAY 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

載入程式碼至單晶片程式記憶體起始位址 0000H 中 指令介紹: ORG 0000H ORG 0000H 載入程式碼至單晶片程式記憶體起始位址 0000H 中 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

指令介紹: MOV R1,#00000000B MOV R1,#00000000B 將常數 00000000 複製至 R1 內部暫存器 #符號後面的數字表示為常數(資料) B表示2進制,二進制 00000000B = 十六進制 00H = 十進制 00 R1設定sw1對應的初始值 回動作圖 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

指令介紹: MOV R2,#01010101B MOV R2,#01010101B 將常數 01010101 複製至 R2 內部暫存器 #符號後面的數字表示為常數(資料) B表示2進制,二進制 01010101B = 十六進制 55H = 十進制 85 R2設定sw2對應的初始值 回動作圖 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

指令介紹: MOV R3,#00001111B MOV R3,#00001111B 將常數 00001111 複製至 R3 內部暫存器 #符號後面的數字表示為常數(資料) B表示2進制,二進制 00001111B = 十六進制 0FH = 十進制 15 R3設定sw3對應的初始值 回動作圖 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

指令介紹: MOV R4,#11110000B MOV R4,#11110000B 將常數 11110000 複製至 R4 內部暫存器 #符號後面的數字表示為常數(資料) B表示2進制,二進制 11110000B = 十六進制 F0H = 十進制 240 R4設定sw4對應的初始值 回動作圖 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

指令介紹: ORL P3,#0FFH 輸入 輸出 P3 B Y 1 ORL P3,#0FFH 把 P3 設定為輸入埠 8051四個輸入/輸出埠,p1,p2,p3,內部均有提升電阻器,p0則為開汲極輸出,沒有內部提升電阻器,每一隻埠腳都能獨立做輸入腳或輸出腳用,但是欲做為輸入腳用時,必須先在該腳寫入”1” 欲設定 p3 為輸入埠,必須使 p3 的 8 隻腳 先寫入”1” ORL 為邏輯 “OR” 運算 P3 的單腳與 1(B) 作 “OR”邏輯運算,結果輸出(Y)為 “1” 輸入 輸出 P3 B Y 1 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

指令介紹: JNB P3.7,CASE1 由 P3.7 輸入腳是 0 或 1 決定程式要跳到那個位址執行指令 若 P3.7 = 0 (SW1閉合時),則程式跳到 CASE1 位址執行指令 若 P3.7 ≠ 0 (SW1打開時),則程式跳到 下一個位址執行指令 回電路圖 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

指令介紹: JNB P3.x,CASEx JNB P3.6,CASE2 JNB P3.5,CASE3 JNB P3.4,CASE4 AJMP TEST 1. 若 SW1 閉合 (P3.7=0),則跳到 CASE1 去執行,否則 SW1 打開 (P3.7=1≠0),繼續執行下一個指令 2. 若 SW2 閉合 (P3.6=0),則跳到 CASE2 去執行,否則 SW2 打開 (P3.6=1≠0),繼續執行下一個指令 3. 若 SW3 閉合 (P3.5=0),則跳到 CASE3 去執行,否則 SW3 打開 (P3.5=1≠0),繼續執行下一個指令 4. 若 SW4 閉合 (P3.4=0),則跳到 CASE4 去執行,否則 SW4 打開 (P3.4=1≠0),跳到TEST重新測試開關狀態 回電路圖 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

跳躍至位址標名為TEST處去執行下一指令 指令介紹: AJMP TEST AJMP TEST 跳躍至位址標名為TEST處去執行下一指令 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

指令介紹: CASE1: 先使P1=00000000B 呼叫 DELAY 延時(0.2秒)副程式 重新測試開關狀態 MOV A,R1 MOV P1,A XRL A,#11111111B MOV R1,A ACALL DELAY AJMP TEST 回動作圖 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

指令介紹: XRL A,#11111111B XRL A,#11111111B 原先A=00000000B 與B=11111111B XRL 為邏輯 “XOR” 運算 原先A=00000000B 與B=11111111B XRL邏輯運算後, Y =11111111B 輸入 輸出 A B Y 1 回動作圖 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

指令介紹: CASE2: 先使P1=01010101B 呼叫 DELAY 延時(0.2秒)副程式 重新測試開關狀態 MOV A,R2 MOV P1,A XRL A,#10101010B MOV R2,A ACALL DELAY AJMP TEST 回動作圖 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

指令介紹: XRL A,#10101010B XRL A,#11111111B 輸入 輸出 A B Y 1 原先A=01010101B XRL 為邏輯 “XOR” 運算 原先A=01010101B 與B=10101010B XRL邏輯運算後, Y =11111111B 輸入 輸出 A B Y 1 回動作圖 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

指令介紹: CASE3: 先使P1=00001111B 呼叫 DELAY 延時(0.2秒)副程式 重新測試開關狀態 MOV A,R3 MOV P1,A XRL A,#11110000B MOV R3,A ACALL DELAY AJMP TEST 回動作圖 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

指令介紹: XRL A,#11110000B XRL A,#11110000B 輸入 輸出 A B Y 1 原先A=00001111B XRL 為邏輯 “XOR” 運算 原先A=00001111B 與B=11110000B XRL邏輯運算後, Y =11111111B 輸入 輸出 A B Y 1 回動作圖 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

指令介紹: CASE4: 先使P1=11110000B 呼叫 DELAY 延時(0.2秒)副程式 重新測試開關狀態 MOV A,R4 MOV P1,A XRL A,#00001111B MOV R4,A ACALL DELAY AJMP TEST 先使P1=11110000B 呼叫 DELAY 延時(0.2秒)副程式 重新測試開關狀態 若開關狀態維持不變,再使P1=11111111B 回動作圖 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

指令介紹: XRL A,#00001111B XRL A,#11110000B 輸入 輸出 A B Y 1 原先A=11110000B XRL 為邏輯 “XOR” 運算 原先A=11110000B 與B=00001111B XRL邏輯運算後, Y =11111111B 輸入 輸出 A B Y 1 回動作圖 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

呼叫(跳躍至)副程式的起始位址 DELAY 處去執行,等到指令 RET 後再返回主程式原ACALL的下一個指令處繼續執行主程式 指令介紹: ACALL DELAY ACALL DELAY 呼叫(跳躍至)副程式的起始位址 DELAY 處去執行,等到指令 RET 後再返回主程式原ACALL的下一個指令處繼續執行主程式 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

指令介紹: DJNZ R7,DL3 DJNZ R7,DL3 將 R7 內部暫存器內的數字減1,再判斷是否為0 R7 內部暫存器內的數字減1後 若為0,則繼續執行本指令的下一個指令 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

副程式介紹: DELAY: MOV R5,#2 DL1: MOV R6,#250 DL2: MOV R7,#200 流程圖解說 DELAY: MOV R5,#2 DL1: MOV R6,#250 DL2: MOV R7,#200 DL3: DJNZ R7,DL3 DJNZ R6,DL2 DJNZ R5,DL1 RET 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

延時0.1秒副程式: OSC解說 副程式介紹 延遲0.2秒 時間計算: 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

指令介紹: MOV R5,#2 MOV R5,#2 將常數 2 複製至 R5 內部暫存器 #2 中 #符號後面的數字表示為常數(資料) H表示16進制,十六進制 02H = 十進制 2 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

延遲0.2秒時間計算: 內廻圈 中廻圈 外廻圈 DELAY: MOV R5,#2 T1=1週 DL1: MOV R6,#250 T2=1週 執行1指令所需時間 =T4=2us 執行完內廻圈所需時間 =200XT4=400us 中廻圈 計數用內部暫存器: R6 計數初始值: R6=250 執行一廻圈(3指令)所需時間 =T3+200XT4+T5=1+400+2=403us 每執行一廻圈所需時間 =T2+250x403+T6=1+100750+2 =100753us 外廻圈 計數用內部暫存器: R5 計數初始值: R5=2 每執行一廻圈所需時間 =T1+2x100753+T7=1+201506+2 =201509us 指令執行時間=1週 DELAY: MOV R5,#2 T1=1週 DL1: MOV R6,#250 T2=1週 DL2: MOV R7,#200 T3=1週 DL3: DJNZ R7,DL3 T4=2週 DJNZ R6,DL2 T5=2週 DJNZ R5,DL1 T6=2週 RET T7=2週 指令執行時間=2週 指令執行時間=2週 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

12MHz石英晶體在MCS-51內部動作方塊圖: 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

習題: 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態

本單元完畢 電機科 製作 回程式 2019年1月16日 8051 單晶片實習---用開關選擇動作狀態