单片机实验书 - 图文
更新时间:2023-12-05 01:57:01 阅读量: 教育文库 文档下载
- 单片机实验指导书推荐度:
- 相关推荐
实验一 单片机I/O接口实验
【实验目的】
利用单片机的P1口作IO口,学会利用P1口作为输入和输出口。
【实验设备及器材】
笔记本电脑 一台 HL-1单片机开发板 一个
【实验内容】
编写一段程序,用P1口作为控制端口,使开发板上的LED轮流亮。
【实验要求】
学会使用单片机的P1口作IO口,如果有时间也可以利用P3口作IO口来做该实验。
【实验步骤】
1、 实验原理如图1-1所示。
图1-1
2、 用汇编语言编写好源程序。(在电脑上的编辑器软件中)
3、 将源程序(也叫源代码、源文件)编译成目标程序(也叫目标代码、机器码、目标文件、
HEX文件)。
4、 用下载软件将目标程序写入到单片机中。 5、 写入后会自动运行目标程序。
如果程序运行不正常、可以用人工检查、软件仿真器等技术排除所编程序中存在的各种错误。错误排除后,再重复上面的3、4步骤。
【实验预习要求】
理解该实验单片机开发板的硬件结构,可以预先把程序编好,然后在Keil C51环境下进行软件仿真。
【实验参考程序】
;放置数据在0100地址以后 ORG 0100
TMP1: DB 01H,02H,04H,08H,10H,20H,40H,80H,81H,82H DB 84H,88H,90H,0A0H,0C0H,0C1H,0C2H,0C4H,0C8H,0D0H DB 0E0H,0E1H,0E2H,0E4H,0E8H,0F0H,0F1H,0F2H,0F4H,0F8H DB 0F9H,0FAH,0FCH,0FDH,0FEH,0FFH,0FFH,00H,0FFH,00H
ORG 0000H ;程序的开始 LJMP MAIN ;转入主程序
ORG 0200H ;主程序的开始
MAIN: MOV DPTR,#TMP1 ;得到数据存放的地址 MOV R7,#50 ;设置循环40次 M1: CLR A
MOVC A,@A+DPTR ;读取相应地址的数据
CPL A ;因发光二极管采用共阳极,所以将数据取反再输出 MOV P1,A
INC DPTR ;进入下一个数据准备 LCALL DELAY ;转入延时子程序 DJNZ R7,M1 ;40次未完成继续
LJMP MAIN ;40次完成回到主程序循环
DELAY: MOV R5,#255 ;延时子程序 D1: MOV R6,#255 DJNZ R6,$ DJNZ R5,D1 RET
END ;程序体结束
【实验思考题】
想出几个实现以上功能的编程方法。
实验二 定时/计数器实验
【实验目的】
1、掌握定时器/计数器的使用方法。 2、熟悉定时器/计数器的工作过程及编程。 3、掌握定时时间常数的确定方法。
【实验设备及器件】
笔记本电脑 一台 HL-1单片机开发板 一个
【实验原理及内容】
8051单片机有2个16位的定时/计数器:定时器0(T0)和定时器1(T1)。它们都有定时器或事件计数的功能,可用于定时控制、延时、对外部事件计数和检测等场合。
T0由2个特殊功能寄存器TH0和TL0构成,T1则由TH1和TL1构成。作计数器时,通过引脚T0(P3.4)和T1(P3.5)对外部脉冲信号计数,当输入脉冲信号从1到0的负跳变时,计数器就自动加1。计数的最高频率一般为振荡频率的1/24。
定时/计数器的结构:定时/计数器的实质是加1计数器(16位),由高8位和低8位两个寄存器组成。TMOD是定时/计数器的工作方式寄存器,确定工作方式和功能;TCON是控制寄存器,控制T0、T1的启动和停止及设置溢出标志。
计数器初值的计算:
设计数器的最大计数值为M(根据不同工作方式,M可以是213、216或28),则计算初值X的公式如下:
X=M-要求的计数值(十六进制数) 定时器初值的计算:
在定时器模式下,计数器由单片机主脉冲fosc经12分频后计数。因此,定时器定时初值计算公式:
X=M-(要求的定时值)/(12/fosc)
80C51单片机定时/计数器的工作由两个特殊功能寄存器控制。TMOD用于设置其工作方式;TCON用于控制其启动和中断申请。
工作方式寄存器TMOD:工作方式寄存器TMOD用于设置定时/计数器的工作方式,低四位用于T0,高四位用于T1。其格式如下:
GATE:门控位。GATE=0时,只要用软件使TCON中的TR0或TR1为1,就可以启动定时/计数器工作;GATA=1时,要用软件使TR0或TR1为1,同时外部中断引脚或也为高电平时,才能启动定时/计数器工作。即此时定时器的启动条件,加上了或引脚为高电平这一条件。
M1M0:工作方式设置位。定时/计数器有四种工作方式,由M1M0进行设置。
实验内容:
1、通过定时器延时实现P1口LED的闪亮。
2、对按键S2按下的次数进行计数,当计数记到3时,第一个发光二极管被点亮。
【实验步骤】
1.用汇编语言编写好源程序。(在电脑上的编辑器软件中)
2.将源程序(也叫源代码、源文件)编译成目标程序(也叫目标代码、机器码、目标文件、HEX文件)。
3.用下载软件将目标程序写入到单片机中。 4.写入后会自动运行目标程序。
如果程序运行不正常、可以用人工检查、软件仿真器等技术排除所编程序中存在的各种错误。错误排除后,再重复上面的2、3步骤。
【实验预习要求】
1、参阅MCS-51有关定时器/计数器部分章节。
2、弄清有关定时器/计数器控制寄存器的格式及设定方法。 3、弄清实验中定时时间常数是如何确定的。
【实验参考程序】
定时器延时实现LED点亮: ORG 0000H AJMP START ORG 30H
START: MOV P1,#0FFH ;关闭所有的灯
MOV TMOD,#00000001B ;定时/计数器0工作于方式1 MOV TH0,#0fH
MOV TL0,#0A0H ;以上两行预置计数
SETB TR0 ;定时/计数器0开始运行
LOOP: JBC TF0,NEXT ;如果TF0等于1,则将TF0清0并转next处 AJMP LOOP ;否则跳转到LOOP处运行 NEXT: CPL P1.0 ;点亮P1.0灯 MOV TH0,#0fH ;
MOV TL0,#0A0H ;重置定时/计数器的初值 AJMP LOOP END
计数器计数实现LED点亮程序: #include
#define uint unsigned int //uint pp;
sbit led=P1^0; sbit s2=P3^4;
void main() {
TMOD=0x05; //模式设置,00000001,可见采用的是定时器0,工作与模式1(M1=0,M0=1)。
TR0=1; //打开计数器 ET0=1; //开计数器0中断 EA=1; //开总中断 while(1) {
if(TL0==3) //当计数为3时,led被点亮。当然,由于有按键抖动,故有时未按三下S2,灯已经亮了。 led=0; } } /*
void time0() interrupt 1 {
pp++; } */
【实验思考题】
想出几个实现以上功能的编程方法。
正在阅读:
单片机实验书 - 图文12-05
易先智20020129120050609113040-衍生金融工具风险的会计管理研究07-12
4、石膏几何体临摹(二)08-09
宜春市上高县九年级语文调研测试卷04-06
《珠海市房屋建筑和市政基础设施工程建设领域工资保证金和支付专户管理办法》08-29
超声声速的测量讲义05-29
聋哑人生活现状调查总结报告11-30
会计手工账作业 - 题目+表格完整版11-25
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 单片机
- 实验
- 图文
- 六年级下学期必背古诗
- 做一名好员工
- 水泵测试标准
- 小学语文长春版五年级下册《游园不值》教师招聘面试试讲教案资格证面试试讲教案模板
- 机器人实训总结
- 南京农业大学论文格式要求
- 毕业论文初稿
- 希特勒的独裁之路与民主制度的反
- 2016人教版七上背诵默写学生版
- 盈高多维终端安全管理平台产品说明书 - 图文
- 常用音视频接口的分类及焊接方法
- 综合管沟结构施工方案
- 单片机电子秤设计报告(DOC) - 图文
- 三年级数学下册《两位数乘10及整十数乘整十数口算》教案青岛版
- 小型农田水利工程管护存在的问题及对策
- 西南大学2018年秋季《美国文学史及选读》辅导答案
- 普通话语音和播音发声
- 三月桃花水
- 海洋生态学习题
- 川大《大学英语(三)0003》19春在线作业22