单片机结构及开发设计流程.docx
《单片机结构及开发设计流程.docx》由会员分享,可在线阅读,更多相关《单片机结构及开发设计流程.docx(9页珍藏版)》请在冰豆网上搜索。
单片机结构及开发设计流程
模块一单片机结构及开发设计流程
课题一单片机结构
1、画出89C51单片机的引脚排列图。
2、画出89C51单片机的引脚功能图。
3、画出89C51单片机的基本组成框图。
4、叙述89C51单片机各部分的具体组成情况。
课题二单片机工作条件
1、画出51系列单片机内部时钟和外部时钟电路接线图。
2、画出51系列单片机上电复位和按键复位电路接线图。
3、画出51系列单片机工作条件接线图。
课题三单片机输入/输出端口结构
1、画出51系列单片机P0、P1、P2、P3口位结构图。
2、叙述51系列单片机P0~P3口使用注意事项。
课题四单片机开发设计流程
1、用Protel软件画出按键左移亮灯电路原理图。
2、用Protel软件设计出按键左移亮灯电路印制电路板图。
3、制作按键左移亮灯电路板。
4、连接仿真器。
5、运行仿真软件,输入按键左移亮灯程序,编译、调试及仿真运行程序。
6、连接编程器。
7、运行编程器软件,将调试通过的按键左移亮灯程序目标代码写入89C51单片机。
8、将经过编程的89C51单片机插入电路板上的单片机IC插座中,脱机运行,观察电路运行情况。
模块二单片机指令系统及汇编语言程序设计
课题一程序设计基础
1、简述单片机存储器总体分配情况。
2、简述单片机片内数据存储器结构。
3、简述单片机七种寻址方式。
4、简述单片机不同存储器空间的寻址方式。
5、回答下列指令的寻址方式:
(1)MOVA,#6AH
(2)MOVA,#0E#H
(3)MOVA,3FH
(4)MOVA,7BH
(5)MOVA,R1
(6)MOVA,R3
(7)MOVA,@R0
(8)MOVA,@R1
(9)MOVXA,@DPTR
(10)MOVCA,@A+DPTR
(11)MOVA,@A+PC
(12)JZ50H
(13)SETB01H
课题二延时程序
1、将本课题任务二中的R3的值改为01H、02H和08H,观察亮灯的间隔时间有何变化?
2、将本课题任务二中的RLA指令改为RRA指令,观察亮灯的顺序有何变化?
3、将本课题任务二中的亮灯数据初值改为03H、07H和55H,观察亮灯规律有何变化?
4、设计一延时5S的延时程序,并替代任务二中的延时程序,观察亮灯间隔时间。
5、设单片机振荡频率为6MHz,试精确计算下列延时子程序的延时时间。
DEL:
MOVR7,#0FAH
DEL1:
MOVR6,#0F8H
NOP
DEL2:
DJNZR6,DEL2
DJNZR7,DEL1
6、设单片机振荡频率为12MHz,试估算下列延时子程序的延时时间。
MOVR5,#20
K1:
MOVR6,#250
K2:
DJNZR6,K2
DJNZR5,K1
课题三算术运算程序
1、若R0=20H、R1=30H、R2=40H、R3=50H,运行任务一中的程序,观察R4、R5和R6的值。
2、若R2=80H、R3=60H、R4=40H、R5=20H,运行任务二中的程序,观察R6和R7的值。
3、若CY=1,R0、R1、R2和R3的值如第1题,将任务一中的ADDA,R3指令改为ADDCA,R3指令,运行程序,观察结果与第1题有何不同,为什么?
4、若CY=1,R2、R3、R42和R5的值同第2题,将任务二中的CLRC指令去掉,运行程序,观察结果与第2题有何不同,为什么?
5、若两个3字节数分别存放在50H、51H、52H单元和60H、61H和62H单元,高位在前,低位在后。
编写程序实现两个3字节数相加运算,结果存放在70H、71H、72H、73H单元,高位在前,低位在后。
自行设置数据,观察运行结果。
6、若两个3字节数分别存放在60H、61H、62H单元和70H、71H和72H单元,高位在前,低位在后。
编写程序实现两个3字节数相减运算,结果存放在50H、51H、52H单元,高位在前,低位在后。
自行设置数据,观察运行结果。
课题四代码转换程序
1、设内部RAM30H单元的值为7FH,在计算机上运行本课题任务一的程序,检查运行结果31H和32H单元的值。
2、在本课题任务一的程序中,如转换得到的BCD码分别存储在独立的单元中,如BCD码百位、十位和个位分别存于40H、41H和42H单元中,程序应如何修改?
修改后上机运行。
3、在本课题任务一的程序中,在十和个位BCD码合并时,如不用“ORLA,B”指令进行合并,而用“ADDA,B”指令是否可以,程序修改后上机试运行。
4、在本课题任务二的程序中,设有两个压缩BCD码20H、35H存于50H单元和51H单元,上机运行程序,检查60H、61H、62H和63H单元的值。
5、在本课题任务二中,如50H单元开始的存储块中存放的是非压缩BCD(即一个单元存放一个BCD码),程序应如何修改?
上机调试程序并检查运行结果。
6、在本课题任务二中,如只进行一个BCD码转换,即一个非压缩BCD码存于50H单元,转换结果存于60H单元,那么程序又该如何修改?
上机调试程序并检查运行结果。
课题五输入输出程序
1、将本课题任务一中的LED亮灯电路制作成印制电路板,然后用仿真器对任务二中的LED亮灯程序进行仿真调试,再用编程器将调试通过的程序下载到单片机中并运行,观察电路运行情况。
2、将本课题任务二中的K1子程序中A的初始值FEH改为FCH,即将该子程序的第一条指令MOVA,#0FEH改为MOVA,#0FCH,运行程序,观察并分析运行情况。
还可将该初始值改为其他数据,修改后运行程序,观察并分析运行情况。
3、在本课题任务一设计的电路中,当按下S1键时,要实现如下图所示的亮灯方式,则K1子程序应如何修改?
提示:
对K1子程序中的MOVA,#0FEH指令、JNBACC.7,M1指令和RLA指令加以修改即可。
序号
P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0
1
01111111
2
10111111
3
11011111
4
11101111
5
11110111
6
11111011
7
11111101
8
11111110
4、将本课题任务二K2子程序中A的初始值FEH改为FAH,即将该子程序的第一条指令MOVA,#0FEH改为MOVA,#0FAH,运行程序,观察并分析运行情况。
还可将该初始值改为其他数据,修改后运行程序,观察并分析运行情况。
5、在本课题任务一设计的电路中,当按下S2键时,要实现如下图所示的亮灯方式,则K2子程序应如何修改?
提示:
对K2子程序中的MOVA,#0FEH指令、JNBACC.7,M2指令和RLCA指令加以修改即可。
序号
P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0
1
01111111
2
00111111
3
00011111
4
00001111
5
00000111
6
00000011
7
00000001
8
00000000
6、若在本课题任务一设计的电路中增加一个按键K3,实现上面题3的亮灯功能,则原理图和程序应如何修改?
模块三单片机简单应用电路设计实例
课题一彩灯控制器设计
1、用Protel软件绘制出本设计任务的电路原理图,并设计印制电路板图及制作印制电路板。
2、连接好仿真器,将本设计任务的程序输入计算机,并进行仿真调试及运行。
3、连接好编程器,将仿真通过的程序代码下载到单片机中,脱机运行并观察电路运行情况。
4、自行设计一亮灯数据表,修改程序后仿真运行,观察电路运行情况。
5、要求每个亮灯状态延时时间为2S,程序应如何修改,程序修改后仿真运行,观察电路运行情况。
6、如果发光二极管采用共阴连接方式,即8只发光二极管阴极相连后接地,阳极分别通过一个电阻接到P2口的8位,仍按图3-1要求的方式亮灯,则亮灯数据表应如何修改,修改后仿真运行,观察电路运行情况。
课题二加法运算器设计
1、用Protel软件绘制出本设计任务的电路原理图,并设计印制电路板图及制作印制电路板。
2、连接好仿真器,将本设计任务的程序输入计算机,并进行仿真调试及运行。
3、连接好编程器,将仿真通过的程序代码下载到单片机中,脱机运行并观察电路运行情况。
4、如果采用共阴数码管,则电路应如何修改,程序中七段显示数码表中的数据又应如何修改,修改后仿真运行。
5、程序中如将十进制数调整指令DAA删除,仿真运行,观察是否能得到正确的结果数据。
6、如采用MOVCA,@A+PC查表指令进行查表,则程序应如何修改,修改后仿真运行。
课题三数显抢答器设计
1、用Protel软件绘制出本设计任务的电路原理图,并设计印制电路板图及制作印制电路板。
2、连接仿真器,将本设计任务的程序输入计算机,并进行仿真调试及运行。
3、连接编程器,将仿真通过的程序代码下载到单片机中,脱机运行并观察电路运行情况。
4、如果删除用于按键去抖动的12ms延时子程序调用指令,即删除LCALLDELAY指令,仿真运行,观察运行情况。
5、将延时程序的延时时间修改为1ms,仿真运行,观察运行情况。
6、删除每个按键功能程序中的动态停机指令SJMP$,仿真运行观察运行情况。
课题四篮球比赛计分器设计
1、用Protel软件绘制出本设计任务的电路原理图,并设计印制电路板图及制作印制电路板。
2、连接仿真器,将本设计任务的程序输入计算机,并进行仿真调试及运行。
3、连接编程器,将仿真通过的程序代码下载到单片机中,脱机运行并观察电路运行情况。
4、如把按键去抖动程序删除,即删除LCALLDELAY指令,仿真运行,观察运行情况。
5、如把等待按键释放的程序段删除,即删除“WAIT:
MOVA,P0”、“ANLA,#0FH”、“CJNEA,#0FH,WAIT”三条指令,仿真运行,观察运行情况。
6、如按S1键加2分,按S2键加4分,按S3键加6分,按S4键减2分则程序应如何修改,修改后仿真运行,观察运行情况。
模块四单片机内部三大功能
课题一中断系统及其应用
1、简述中断处理过程。
2、简述中断编程结构。
3、用Protel软件绘制出本课题中的外部中断应用电路原理图,并设计印制电路板图及制作印制电路板。
4、连接仿真器,将本课题中的外部中断应用程序输入计算机,并进行仿真调试及运行。
5、连接编程器,将仿真通过的程序代码下载到单片机中,脱机运行并观察电路运行情况。
6、删除外部中断应用程序中的第一条指令LJMPMAIN,程序修改后仿真运行,观察电路运行情况。
7、将主程序放在存储器的开始处,程序修改后仿真运行,观察电路运行情况。
8、将外部中断程序放在中断入口地址处,程序修改后仿真运行,观察电路运行情况。
课题二定时/计数器及其应用
1、简述定时/计数器初始化步骤。
2、用Protel软件绘制出本课题中定时器的应用电路原理图,并设计印制电路板图及制作印制电路板。
3、连接仿真器,将本课题两个例题中的定时器应用程序输入计算机,并进行仿