[关闭]
@2014301020081 2016-10-27T05:54:15.000000Z 字数 1024 阅读 3235

单片机实验:流水灯实验报告

姓名:孔德锋 班级:物理基地一班 学号:2014301020081


一、实验目的

初步认识单片机实验如何进行操作,明确单片机和计算机的关系
学习利用C语言进行编程,在流水灯基础上进一步进行改进设计出独立按键。

二、实验原理

使用C语言写出流水灯独立按键的代码并将其转换成单片机可执行和二进制代码即机器语言,将单片机各部分连接好,并将其连接到计算机主机上,通过STC-ISP软件使单片机执行转化好的二进制代码,进而设计出独立按键。
实验原理图:

三、实验要求

用按键控制流水灯的流动方向、流速、闪烁方式等

四、实验内容及步骤

  1. 连接试验相关模块连线。
  1. #include <reg52.h>
  2. sbit k1=P1^0;
  3. sbit k2=P1^1;
  4. sbit k3=P1^2;
  5. unsigned char direction=0x00;
  6. unsigned char speed=0x00;
  7. int speedvalue=10000;
  8. unsigned char led=0x01;
  9. void delay(int t)
  10. {
  11. while(t)
  12. t--;
  13. }
  14. void main()
  15. {
  16. while(1)
  17. {
  18. if(k1==0)
  19. {
  20. direction=~direction;
  21. }
  22. if(k2==0)
  23. {
  24. delay(1000);
  25. speedvalue+=5000;
  26. if(speedvalue==60000)
  27. {
  28. speedvalue=10000;
  29. }
  30. while (!k2);
  31. }
  32. if(k3==0)
  33. {
  34. delay(1000);
  35. speedvalue-=5000;
  36. if(speedvalue==0)
  37. {
  38. speedvalue=30000;
  39. }
  40. while(!k3);
  41. }
  42. if(direction==0x00)
  43. {
  44. led=led<<1;
  45. if(led==0x00)
  46. {
  47. led=0x01;
  48. }
  49. }
  50. else
  51. {
  52. led=led>>1;
  53. if(led==0x00)
  54. {
  55. led=0x80;
  56. }
  57. }
  58. P0=led;
  59. delay(speedvalue);
  60. }
  61. }

编译通过之后,我们需要输出hex文件,也就是单片机可执行的二进制文件。
3、找到STC-ISP,双击打开,选择单片机机型。
在桌面右击“我的电脑”出现下拉菜单,选择“管理”在出现的窗口中选择设备管理器在右侧窗口中“端口”项前“+”号点开,在ISP的端口选择中选择上述端口类型。
点击“OPEN FILE”按钮,选择keil生成的hex文件,点击”download/下载“,对开发板进行重新上电操作,等待信息区提示。随后即可操作独立按键。

四、实验结果及表达

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注