单片机结构及开发设计流程
- 格式:docx
- 大小:16.71 KB
- 文档页数:8
模块一 单片机结构及开发设计流程 课题一 单片机结构 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) MOV A, #6AH (2) MOV A, #0E#H (3) MOV A, 3FH (4) MOV A, 7BH (5) MOV A, R1 (6) MOV A, R3 (7) MOV A, @R0 (8) MOV A, @R1 (9) MOVX A, @DPTR (10) MOVC A, @A+DPTR (11) MOV A, @A+PC (12) JZ 50H (13) SETB 01H 课题二 延时程序 1、 将本课题任务二中的R3的值改为01H、02H和08H,观察亮灯的间隔时间有何变化? 2、 将本课题任务二中的RL A指令改为RR A指令,观察亮灯的顺序有何变化? 3、 将本课题任务二中的亮灯数据初值改为03H、07H和55H,观察亮灯规律有何变化? 4、 设计一延时5S的延时程序,并替代任务二中的延时程序,观察亮灯间隔时间。 5、设单片机振荡频率为6MHz,试精确计算下列延时子程序的延时时间。 DEL: MOV R7, #0FAH DEL1: MOV R6, #0F8H NOP DEL2: DJNZ R6, DEL2 DJNZ R7, DEL1 6、设单片机振荡频率为12MHz,试估算下列延时子程序的延时时间。 MOV R5, #20 K1: MOV R6, #250 K2: DJNZ R6, K2 DJNZ R5, 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题,将任务一中的ADD A,R3指令改为ADDC A,R3指令,运行程序,观察结果与第1题有何不同,为什么? 4、 若CY=1,R2、R3、R42和R5的值同第2题,将任务二中的CLR C指令去掉,运行程序,观察结果与第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、 设内部RAM 30H单元的值为7FH,在计算机上运行本课题任务一的程序,检查运行结果31H和32H单元的值。 2、 在本课题任务一的程序中,如转换得到的BCD码分别存储在独立的单元中,如BCD码百位、十位和个位分别存于40H、41H和42H单元中,程序应如何修改?修改后上机运行。 3、 在本课题任务一的程序中,在十和个位BCD码合并时,如不用“ORL A,B”指令进行合并,而用“ADD A,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,即将该子程序的第一条指令MOV A,#0FEH改为MOV A,#0FCH,运行程序,观察并分析运行情况。还可将该初始值改为其他数据,修改后运行程序,观察并分析运行情况。 3、 在本课题任务一设计的电路中,当按下S1键时,要实现如下图所示的亮灯方式,则K1子程序应如何修改?提示:对K1子程序中的MOV A,#0FEH指令、JNB ACC.7,M1指令和RL A指令加以修改即可。 序号 P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0 1 0 1 1 1 1 1 1 1
2 1 0 1 1 1 1 1 1
3 1 1 0 1 1 1 1 1
4 1 1 1 0 1 1 1 1
5 1 1 1 1 0 1 1 1
6 1 1 1 1 1 0 1 1
7 1 1 1 1 1 1 0 1
8 1 1 1 1 1 1 1 0
4、 将本课题任务二K2子程序中A的初始值FEH改为FAH,即将该子程序的第一条指令MOV A,#0FEH改为MOV A,#0FAH,运行程序,观察并分析运行情况。还可将该初始值改为其他数据,修改后运行程序,观察并分析运行情况。 5、在本课题任务一设计的电路中,当按下S2键时,要实现如下图所示的亮灯方式,则K2子程序应如何修改?提示:对K2子程序中的MOV A,#0FEH指令、JNB ACC.7,M2指令和RLC A指令加以修改即可。 序号 P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0 1 0 1 1 1 1 1 1 1
2 0 0 1 1 1 1 1 1
3 0 0 0 1 1 1 1 1
4 0 0 0 0 1 1 1 1
5 0 0 0 0 0 1 1 1
6 0 0 0 0 0 0 1 1
7 0 0 0 0 0 0 0 1
8 0 0 0 0 0 0 0 0
6、若在本课题任务一设计的电路中增加一个按键K3,实现上面题3的亮灯功能,则原理图和程序应如何修改? 模块三 单片机简单应用电路设计实例
课题一 彩灯控制器设计 1、 用Protel软件绘制出本设计任务的电路原理图,并设计印制电路板图及制作印制电路板。 2、 连接好仿真器,将本设计任务的程序输入计算机,并进行仿真调试及运行。 3、 连接好编程器,将仿真通过的程序代码下载到单片机中,脱机运行并观察电路运行情况。 4、 自行设计一亮灯数据表,修改程序后仿真运行,观察电路运行情况。 5、 要求每个亮灯状态延时时间为2S,程序应如何修改,程序修改后仿真运行,观察电路运行情况。 6、 如果发光二极管采用共阴连接方式,即8只发光二极管阴极相连后接地,阳极分别通过一个电阻接到P2口的8位,仍按图3-1要求的方式亮灯,则亮灯数据表应如何修改,修改后仿真运行,观察电路运行情况。 课题二 加法运算器设计 1、 用Protel软件绘制出本设计任务的电路原理图,并设计印制电路板图及制作印制电路板。 2、 连接好仿真器,将本设计任务的程序输入计算机,并进行仿真调试及运行。 3、 连接好编程器,将仿真通过的程序代码下载到单片机中,脱机运行并观察电路运行情况。 4、 如果采用共阴数码管,则电路应如何修改,程序中七段显示数码表中的数据又应如何修改,修改后仿真运行。 5、 程序中如将十进制数调整指令DA A删除,仿真运行,观察是否能得到正确的结果数据。 6、 如采用MOVC A,@A+PC查表指令进行查表,则程序应如何修改,修改后仿真运行。
课题三 数显抢答器设计
1、 用Protel软件绘制出本设计任务的电路原理图,并设计印制电路板图及制作印制电路板。 2、 连接仿真器,将本设计任务的程序输入计算机,并进行仿真调试及运行。 3、 连接编程器,将仿真通过的程序代码下载到单片机中,脱机运行并观察电路运行情况。 4、 如果删除用于按键去抖动的12ms延时子程序调用指令,即删除LCALL DELAY指令,仿真运行,观察运行情况。 5、 将延时程序的延时时间修改为1ms,仿真运行,观察运行情况。 6、 删除每个按键功能程序中的动态停机指令SJMP $,仿真运行观察运行情况。
课题四 篮球比赛计分器设计
1、 用Protel软件绘制出本设计任务的电路原理图,并设计印制电路板图及制作印制电路板。 2、 连接仿真器,将本设计任务的程序输入计算机,并进行仿真调试及运行。 3、 连接编程器,将仿真通过的程序代码下载到单片机中,脱机运行并观察电路运行情况。 4、 如把按键去抖动程序删除,即删除LCALL DELAY指令,仿真运行,观察运行情况。 5、 如把等待按键释放的程序段删除,即删除“WAIT:MOV A,P0”、“ANL A,#0FH”、“CJNE A,#0FH,WAIT”三条指令,仿真运行,观察运行情况。 6、 如按S1键加2分,按S2键加4分,按S3键加6分,按S4键减2分则程序应如何修改,修改后仿真运行,观察运行情况。 模块四 单片机内部三大功能
课题一 中断系统及其应用