《单片机结构与开发设计流程图》由会员分享,可在线阅读,更多相关《单片机结构与开发设计流程图(9页珍藏版)》请在金锄头文库上搜索。
1、模块一 单片机结构及开发设计流程课题一 单片机结构1、 画出89C51单片机的引脚排列图。2、 画出89C51单片机的引脚功能图。3、 画出89C51单片机的基本组成框图。4、 叙述89C51单片机各部分的具体组成情况。课题二 单片机工作条件1、 画出51系列单片机内部时钟和外部时钟电路接线图。2、 画出51系列单片机上电复位和按键复位电路接线图。3、 画出51系列单片机工作条件接线图。课题三 单片机输入/输出端口结构1、 画出51系列单片机P0、P1、P2、P3口位结构图。2、 叙述51系列单片机P0P3口使用注意事项。课题四 单片机开发设计流程1、 用Protel软件画出按键左移亮灯电路原
2、理图。2、 用Protel软件设计出按键左移亮灯电路印制电路板图。3、 制作按键左移亮灯电路板。4、 连接仿真器。5、 运行仿真软件,输入按键左移亮灯程序,编译、调试及仿真运行程序。6、 连接编程器。7、 运行编程器软件,将调试通过的按键左移亮灯程序目标代码写入89C51单片机。8、 将经过编程的89C51单片机插入电路板上的单片机IC插座中,脱机运行,观察电路运行情况。模块二 单片机指令系统及汇编语言程序设计课题一 程序设计基础1、 简述单片机存储器总体分配情况。2、 简述单片机片内数据存储器结构。3、 简述单片机七种寻址方式。4、 简述单片机不同存储器空间的寻址方式。5、 回答下列指令的寻
3、址方式:(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、 将本课题任务二中的亮灯数据初值改
4、为03H、07H和55H,观察亮灯规律有何变化?4、 设计一延时5S的延时程序,并替代任务二中的延时程序,观察亮灯间隔时间。5、设单片机振荡频率为6MHz,试精确计算下列延时子程序的延时时间。 DEL: MOV R7, #0FAH DEL1: MOV R6, #0F8H NOP DEL2: DJNZ R6, DEL2DJNZ R7, DEL16、设单片机振荡频率为12MHz,试估算下列延时子程序的延时时间。MOV R5, #20 K1: MOV R6, #250 K2: DJNZ R6, K2 DJNZ R5, K1 课题三 算术运算程序1、 若R0=20H、R1=30H、R2=40H、R3=
5、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字节数相加运算,结果存放在7
6、0H、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单元中,程序应如何修改?修改
7、后上机运行。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单元,那么程序又该如何修改?上机调试
8、程序并检查运行结果。课题五 输入输出程序1、 将本课题任务一中的LED亮灯电路制作成印制电路板,然后用仿真器对任务二中的LED亮灯程序进行仿真调试,再用编程器将调试通过的程序下载到单片机中并运行,观察电路运行情况。2、 将本课题任务二中的K1子程序中A的初始值FEH改为FCH,即将该子程序的第一条指令MOV A,#0FEH改为MOV A,#0FCH,运行程序,观察并分析运行情况。还可将该初始值改为其他数据,修改后运行程序,观察并分析运行情况。3、 在本课题任务一设计的电路中,当按下S1键时,要实现如下图所示的亮灯方式,则K1子程序应如何修改?提示:对K1子程序中的MOV A,#0FEH指令、J
9、NB ACC.7,M1指令和RL A指令加以修改即可。序号P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.010 1 1 1 1 1 1 121 0 1 1 1 1 1 131 1 0 1 1 1 1 141 1 1 0 1 1 1 151 1 1 1 0 1 1 161 1 1 1 1 0 1 171 1 1 1 1 1 0 181 1 1 1 1 1 1 04、 将本课题任务二K2子程序中A的初始值FEH改为FAH,即将该子程序的第一条指令MOV A,#0FEH改为MOV A,#0FAH,运行程序,观察并分析运行情况。还可将该初始值改为其他数据,修改后运行程序,
10、观察并分析运行情况。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.010 1 1 1 1 1 1 120 0 1 1 1 1 1 130 0 0 1 1 1 1 140 0 0 0 1 1 1 150 0 0 0 0 1 1 160 0 0 0 0 0 1 170 0 0 0 0 0 0 180 0 0 0 0 0 0 06、若在本课题任务一设计的电路中增
11、加一个按键K3,实现上面题3的亮灯功能,则原理图和程序应如何修改?模块三 单片机简单应用电路设计实例课题一 彩灯控制器设计1、 用Protel软件绘制出本设计任务的电路原理图,并设计印制电路板图及制作印制电路板。2、 连接好仿真器,将本设计任务的程序输入计算机,并进行仿真调试及运行。3、 连接好编程器,将仿真通过的程序代码下载到单片机中,脱机运行并观察电路运行情况。4、 自行设计一亮灯数据表,修改程序后仿真运行,观察电路运行情况。5、 要求每个亮灯状态延时时间为2S,程序应如何修改,程序修改后仿真运行,观察电路运行情况。6、 如果发光二极管采用共阴连接方式,即8只发光二极管阴极相连后接地,阳极分别通过一个电阻接到P2口的8位,仍按图3-1要求的方式亮灯,则亮灯数据表应如何修改,修改后仿真运行,观察电路运行情况。课题二 加法运算器设计1、 用Protel软件绘制出本设计任务的电路原理图,并设计印制电路板图及制作印制电路板。2、 连接好仿真器,将本设计任务的程序输入计算机,并进行仿真调试及运行。3、 连接好编程器,将仿真通过的程序代码下载到单片机中,脱机运行并观察电路运行情况。4、 如果采用共阴数码管,则电路应如何修改,程序中七段显示数码表中的数据又应如何修改,修改后仿真运行。