标题: STM8S005K6单片机点亮流水灯程序 适合初学者 [打印本页]

作者: zkele    时间: 2021-8-14 21:24
标题: STM8S005K6单片机点亮流水灯程序 适合初学者
这几天把以前买的几十片STM8S005K6T6翻出来玩玩,使用STVD+COSMIC编写,点了一下流水灯.适合初学者,大师请绕行.



单片机源程序如下:
  1. /* MAIN.C file
  2. *
  3. * Copyright (c) 2002-2005 STMicroelectronics
  4. */
  5. #include<stm8s005k6.h>
  6. #define uchar unsigned char
  7. #define uint  unsigned int

  8. void delay_ms(unsigned int x)  //默认时钟16m/8 1ms
  9. {
  10.         unsigned int a,b;
  11.         while(x--)
  12.         {
  13.                 for (a=0;a<18;a++)
  14.                  for(b=0;b<19;b++);
  15.         }
  16. }
  17. void GPIOinit(void)
  18. {
  19.         PB_DDR=0xff;//全部IO为输出
  20.         PB_CR1=0xff;//推挽模式
  21.         PB_CR2=0x0; //低速率模式
  22.         PB_ODR=0xff;//所有发光管熄灭
  23.         
  24.         PF_DDR|=0x10;
  25.         PF_CR1|=0x10;//推挽模式
  26.         PF_CR2=0x0; //低速率模式
  27.         PF_ODR|=0x10;//熄灭发光二极管        
  28. }
  29. main()
  30. {
  31.         uchar x,y;
  32.         GPIOinit();
  33.         while (1)
  34.         {
  35.                 x=0xfe;
  36.                 for(y=0;y<6;y++)
  37.                 {
  38.                         PB_ODR=x;
  39.                         delay_ms(100);
  40.                         x=(x<<1)|0x01;
  41.                 }
  42.                 PB_ODR=0xff;
  43.                 //delay_ms(100);
  44.                 PF_ODR&=0xef;
  45.                 delay_ms(100);
  46.                 PF_ODR|=0x10;
  47.         }
  48. }
复制代码

所有代码51hei附件下载:
led0.7z (82.21 KB, 下载次数: 10)


作者: 1588848    时间: 2021-8-19 20:06
流水灯。。。这   比较尴尬
作者: zyluglugl    时间: 2021-8-20 11:48
这板子做得好,表示佩服!




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