机器人控制技术基础2

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
要求
1. 安装Keil C 2. 建立工程文件,实现多个LED灯以不同频率
闪光。可以用不同键控制。 3.阅读51相关书籍,搞清定时器作用,了解中
断概念。 4. 什么是ROM、RAM、寄存器、特殊功能寄
存器,R0-R7(分区)
机器人控制技术基础
2020/11/22
1
对实验理解
ORG 0000H ;CPU 上电复位后,从此执行
2
C语言如何写
sbit SMG = P1^7; SMG=P1^2;(老板) sbit FMQ = P1^6; FMQ = P1^3 ;(老板)
SMG = 0; //数码管控制三极管导通 FMQ = 0; //蜂鸣器电源供应三极管 P2 = 0xFF ;//把 P2 口置一,熄灭 8 个发光 二极管 P1_0,P1_7,P2_0等等
37 36
6
35
7 8051 34
8
33
9 10
8751
32 31
11
30
12 89C51 29
13
28
14
27
15
26
16
25
17
24
18
24
19
22
20
21
VCC P0. 0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7 EA ALE PSEN P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2. 0
机器人控制技术基础
2020/11/22
8
6 8051单片机的存储空间
计算机是如何存放数值
▪ 电平高(1)和低,开关的通与关,灯的亮与灭 电流的有与无,电机的转与静止
▪ 寄存器存放 ▪RAM、ROM、EEPROM、硬盘… ▪寄存器
机器人控制技术基础
2020/11/22
9
先复习一下51单片机信号引脚简介
中断3
0013H
中断2
000BH
(PC)
0003H 0002H 0001H 0000H
中断1
8位
定时器2中断 串行口中断
定时器1中断
外部中断1
定时器0中断
外部中断0 0000H是程序执行的起始单元, 在这三个单元存放一条 无条件转移指令
LJMP MAIN ;跳转到 MAIN 主程序
ORG 0100H ;主程序开始,避开中断入口区地 址
MAIN: CLR P1.7 ; 数码管控制三极管导通 CLR P1.6 ;蜂鸣器电源供应三极管 MOV P2,#0FFH ;把 P2 口置一,熄灭 8
个发光二极管
机器人控制技术基础
2020/11/22
中央处理器CPU:8位,运算和控制功能 内部RAM:共256个RAM单元,用户使用前128个单元,用于存
放可读写数据,后128个单元被专用寄存器(SFR)。52系列 还多128,共256字节RAM 内部ROM:4KB/8K,用于存放程序、原始数据和表格。 定时/计数器:两/三个16位的定时/计数器,实现定时或计数功能。 并行I/O口:4个8位的I/O口P0、P1、P2、P3。 串行口:一/二个全双工串行口。 中断控制系统:5/6个中断源(外中断2个,定时/计数中断2/3 个,串行中断1个) 时钟电路:可产生时钟脉冲序列,允许晶振频率最高24MHZ
机器人控制技术基础
2020/11/22
6
我就喜欢用C,汇编多不好理解呀
#include <regx52.h>
void delay();
main()
{
P0 = 0xFF;
P3_7 = 0;
P2_7 =0;
while(1)
{
P0_0 =0;
delay();
P0_0 = 1;
delay();
}
}
void delay()
1、电源线:VCC(+5V)、VSS(地) 2、振荡电路:XTAL1、XTAL2 3、复位引脚:RST 4、并行口:P0、P1、P2、P3 5、EA:访问程序存储控制信号 6、PSEN:外部ROM读选通信号 7、ALE:地址锁存控制信号
P3口线的第二功能
机器人控制技术基础
2020/11/22
10
6.1 51单片机的存储空间(家底)
机器人控制技术基础
2020/11/22
11
(1)程序存储器
中断入口地址
FFFFH
(64K)
0FFFH/1FFFH
(4/8K) 内部
EA=1 0000H
外部
EA=0 0000H
0FFFH/1FFFH (4/8K)
0000H
程序存储器
0FFFH
0FFEH ...
002BH
中断5
0023H
中断4
001BH
C语言如何写
延时时间
机器人控制技术基础
2020/11/22
4
单片机的工作过程
取指过程 执行过程
你知道PC 的作用吗?
例: MOV A,#09H 74H 09H ;把09H送到累加器 A中
程序计数器
PC= 000000000012HHH
地址寄存器 0000H
外部地址总线AB
运算器 ①②

累加器A
Baidu Nhomakorabea
部 数
P1. 0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7
RST RXD/ P3. 0 TXD/ P3.1 INT0/ P3.2 INT1/ P3.3
T0/ P3.4 T1/ P3.5 WR/ P3.6 RD/ P3.7
XTAL2 XTAL1
VSS
1
40
2
39
3
38
4 5
8031
机器人控制技术基础
2020/11/22
3
; 延时子程序,改变 i, j的值,可以改变延时 的时间,从而改变 LED 的闪烁速度速度
void dey(unsigned char j)
{ unsigned char i;
for(;j>0;j--)
{
for(i = 124; i>0; i--)
{;}
}
}


线
存 储 器
(PC) (PC) (PC)
0002H 0001H 0 0 0 0 1 0 0 1 0000H 0 1 1 1 0 1 0 0
地址 译码
寄存器区 内部控制信号
数据缓冲器 外部数据总线DB
指令 时钟及清零 寄存器
译码
外部控制总线CB
机器人控制技术基础
2020/11/22
5
指令
机器码 0011010,0011111 指令助记符 MOV A,R0 汇编语言、宏汇编(伪指令)
{
unsigned char i = 0,j = 0;
do{
do{}while(--j);
}while(--i);
}
机器人控制技术基础
2020/11/22
7
1. 看原理图 知道有多少东西可用,关联因素 2. 目标设计 要做什么,如何做,就不用提Why? 3. 选择编程环境,编程 4. 如果是项目 5. 明确目标 6. 选择CPU芯片及相关芯片。预判够用否 7. 开发资料 8. 要读一手资料!
相关文档
最新文档