main.c
- #include "STC8H.h"
- #include <intrins.h>
- #include "config.h"
- //#include "portset.h"
- #include "delay.h"
- //#include "key.h"
- #include "WS2812.h"
-
- uint cp;
-
- #define LED P54 //LED
-
- #define ws2812b_IO P35 //WS2812信号输入口
- #define TK1 P16 //触摸端口TK6
- #define TK2 P17 //触摸端口TK7
- #define TK3 P13 //触摸端口TK3
- #define DIO P10 //TM1637数据输入
- #define CLK P11 //TM1637时钟输入
-
- /*******************************************************************************
- *******************************************************************************/
-
- void UartInit();//串口、定时器初始化
- void Timer0_Init(void); //100微秒+16位自动装载+12T模式@24.000MHz
-
- void main()
- {
-
- //以下初始化
- delay_us(1);
- delay_ms(500);//等待稳定
- UartInit();//串口、定时器初始化
- while(1)
- {
- if(cp>5000)
- {
- LED=!LED;
- cp=0;
- }
- Breathing_lamp_Alternate(5); //呼吸灯
- }
- }
-
-
- void UartInit()//串口及定时器初始化
- {
- P0M0 = 0x00; P0M1 = 0x00;
- P1M0 = 0x00; P1M1 = 0x00;
- P2M0 = 0x00; P2M1 = 0x00;
- P3M0 = 0x00; P3M1 = 0x00;
- P5M0 = 0x10; P5M1 = 0x00;
- Timer0_Init() ; //100微秒@24.000MHz
- EA=1;//
-
- }
-
-
- void Timer0_Isr(void) interrupt 1
- {
- cp++;
-
- }
-
- void Timer0_Init(void) //100微秒+16位自动装载+12T模式@24.000MHz
- {
- AUXR &= 0x7F; //定时器时钟12T模式
- TMOD &= 0xF0; //设置定时器模式
- TL0 = 0x38; //设置定时初始值
- TH0 = 0xFF; //设置定时初始值
- TF0 = 0; //清除TF0标志
- TR0 = 1; //定时器0开始计时
- ET0 = 1; //使能定时器
- }
复制代码
|