标题: 51单片机爱心灯Proteus仿真制作+代码 [打印本页]

作者: 。。。9    时间: 2019-6-22 15:29
标题: 51单片机爱心灯Proteus仿真制作+代码
仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)


单片机源程序如下:
  1. #include<reg51.h>
  2. #define uchar unsigned char
  3. #define uint unsigned int
  4. sbit beep=P2^7;
  5. uchar song_tone[]={212,212,190,212,159,169,212,212,190,212,142,159,212,212,106,126,159,169,190,119,119,126,159,142,159,0};
  6. uchar song_long[]={9,3,12,12,12,24,9,3,12,12,12,24,9,3,12,12,12,12,12,9,3,12,12,12,24,0} ;
  7. void delayms(uint n)
  8. {
  9.   uchar i;
  10.   while(n--)
  11.   {
  12.     for(i=0;i<120;i++);
  13.   }
  14. }

  15. void play()
  16. {
  17. uint i=0,j,k;
  18. while(song_tone[i]!=0||song_long[i]!=0)
  19. {
  20.   for(j=0;j<song_long[i]*20;j++)
  21.   {
  22.             beep=~beep;
  23.   //}
  24.   for(k=0;k<song_tone[i]/3;k++)        ;
  25.   }//{
  26.             delayms(10);
  27.           i++;
  28.   }

  29. }


  30. void main()
  31. {
  32.    beep=0;
  33.    while(1)
  34.    {
  35.      play();
  36.          delayms(1000);
  37.    }
  38. }
复制代码

所有资料51hei提供下载:
爱心灯.zip (99.1 KB, 下载次数: 39)







欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1