实验二、单片机输入及输出实验
一、实验目的
1、学习单片机的I/O口的使用方法; 2、学习延时子程序的编写和使用; 3、学习分支指令的使用;
4、学习使用定时器完成延时的方法。
二、实验内容
1、P1口做输出口,接八只发光二极管,编写程序,使得发光二极管循环点亮,每个发光二极管点亮时间为1秒。仔细思考,画出程序流程图;编写程序并写清注释;
2、P2.0和P2.1做输入口接两个拨动开关,P1口做输出口,接八只发光二极管,编写程序读取开关状态,根据此状态,改变发光二极管点亮方式。(至少两种)。编程时应注意P2.0、P2.1作为输入口时应先置1,才能正确读入值。仔细思考,画出程序流程图;编写程序并写清注释;
四、实验说明
1、对于MCS51MCU,P2口是准双向口。它作为输出口时与一般的双向口使用方法相同。由准双向口结构可知当P2口用为输入口时,必须先对它置“1”。若不先对它置“1”,读入的数据是不正确的。
2、8051延时子程序的延时计算问题,需要考虑系统晶振和延时时长,对于较长的延时需要采用多重循环的方式得到。如实验要求发光二极管点亮1秒,请参考课件上延时50ms的例子进行修改。
3、如果需要使用定时器完成较长时间的延时,需要定时器多次定时来完成。
五、程序设计
1、设计思路: