init project
This commit is contained in:
commit
d8e642f4c6
16
.gitignore
vendored
Normal file
16
.gitignore
vendored
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
*.asm
|
||||||
|
*.bin
|
||||||
|
*.cmf
|
||||||
|
*.cof
|
||||||
|
*.d
|
||||||
|
*.hex
|
||||||
|
*.hxl
|
||||||
|
*.lpp
|
||||||
|
*.map
|
||||||
|
*.map
|
||||||
|
*.obj
|
||||||
|
*.p1
|
||||||
|
*.rlf
|
||||||
|
*.sdb
|
||||||
|
*.sym
|
||||||
|
*.pre
|
187
FT60E210-PWM.C
Normal file
187
FT60E210-PWM.C
Normal file
@ -0,0 +1,187 @@
|
|||||||
|
//Project: FT60E210-PWM.prj
|
||||||
|
// Device: FT60E21X
|
||||||
|
// Memory: Flash 1KX14b, EEPROM 128X8b, SRAM 64X8b
|
||||||
|
// Author:
|
||||||
|
//Company:
|
||||||
|
//Version:
|
||||||
|
// Date:
|
||||||
|
//===========================================================
|
||||||
|
//===========================================================
|
||||||
|
#include "SYSCFG.h"
|
||||||
|
#include "FT60F21X.h"
|
||||||
|
#include "sysnop.h"
|
||||||
|
//===========================================================
|
||||||
|
//Variable definition
|
||||||
|
//===========================================================
|
||||||
|
#define WS2812_HIGH (PA4 = 1)
|
||||||
|
#define WS2812_LOW (PA4 = 0)
|
||||||
|
#define WS2812_ZERO { WS2812_HIGH; WS2812_LOW; NOP(); NOP(); }
|
||||||
|
#define WS2812_ONE { WS2812_HIGH; NOP(); NOP(); WS2812_LOW; }
|
||||||
|
|
||||||
|
//void WS2812_HIGH(void)
|
||||||
|
//{
|
||||||
|
//#asm
|
||||||
|
// bsr 05H,4
|
||||||
|
//#endasm
|
||||||
|
//}
|
||||||
|
//void WS2812_LOW(void)
|
||||||
|
//{
|
||||||
|
//#asm
|
||||||
|
// bcr 05H,4
|
||||||
|
//#endasm
|
||||||
|
//}
|
||||||
|
//#define WS2812_ZERO { WS2812_HIGH; WS2812_LOW; NOP(); NOP(); }
|
||||||
|
//#define WS2812_ONE { WS2812_HIGH; NOP(); NOP(); WS2812_LOW; }
|
||||||
|
|
||||||
|
//===========================================================
|
||||||
|
//Function name:interrupt ISR
|
||||||
|
//parameters:无
|
||||||
|
//returned value:无
|
||||||
|
//===========================================================
|
||||||
|
void interrupt ISR(void)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
//===========================================================
|
||||||
|
//Function name:main
|
||||||
|
//parameters:无
|
||||||
|
//returned value:无
|
||||||
|
//===========================================================
|
||||||
|
main()
|
||||||
|
{
|
||||||
|
OSCCONbits.IRCF = 0b111; // 111 16M
|
||||||
|
MSCONbits.CKMAVG = 1; // LIRC 和 HIRC 交叉校准时 4 次平均测量模式
|
||||||
|
T2CON0bits.TMR2ON = 1; // 使能 Timer2
|
||||||
|
MSCONbits.CKCNTI = 1; // 开始校准
|
||||||
|
while(CKMIF == 1); // 等待校准完成
|
||||||
|
NOP4(); // 闲得无聊写的
|
||||||
|
TRISA4 = 0; // 使能PA4输出
|
||||||
|
nPAPU = 0; // 分组控制PA上拉电阻
|
||||||
|
WPUA4 = 1; // PA4上拉电阻使能
|
||||||
|
|
||||||
|
while(1)
|
||||||
|
{
|
||||||
|
PA4 = 0;
|
||||||
|
for (int i = 0; i< 80; i++) // 等280us
|
||||||
|
{
|
||||||
|
NOP();
|
||||||
|
}
|
||||||
|
PA4 = 1;
|
||||||
|
|
||||||
|
// asm("BCR STATUS,5");
|
||||||
|
// 1
|
||||||
|
WS2812_ONE; // G7
|
||||||
|
WS2812_ZERO; // G6
|
||||||
|
WS2812_ONE; // G5
|
||||||
|
WS2812_ZERO; // G4
|
||||||
|
WS2812_ONE; // G3
|
||||||
|
WS2812_ZERO; // G2
|
||||||
|
WS2812_ONE; // G1
|
||||||
|
WS2812_ZERO; // G0
|
||||||
|
|
||||||
|
WS2812_ONE; // R7
|
||||||
|
WS2812_ZERO; // R6
|
||||||
|
WS2812_ONE; // R5
|
||||||
|
WS2812_ZERO; // R4
|
||||||
|
WS2812_ONE; // R3
|
||||||
|
WS2812_ZERO; // R2
|
||||||
|
WS2812_ONE; // R1
|
||||||
|
WS2812_ZERO; // R0
|
||||||
|
|
||||||
|
WS2812_ONE; // B7
|
||||||
|
WS2812_ZERO; // B6
|
||||||
|
WS2812_ONE; // B5
|
||||||
|
WS2812_ZERO; // B4
|
||||||
|
WS2812_ONE; // B3
|
||||||
|
WS2812_ZERO; // B2
|
||||||
|
WS2812_ONE; // B1
|
||||||
|
WS2812_ZERO; // B0
|
||||||
|
|
||||||
|
// 2
|
||||||
|
WS2812_ONE; // G7
|
||||||
|
WS2812_ONE; // G6
|
||||||
|
WS2812_ONE; // G5
|
||||||
|
WS2812_ONE;; // G4
|
||||||
|
WS2812_ONE; // G3
|
||||||
|
WS2812_ONE; // G2
|
||||||
|
WS2812_ONE; // G1
|
||||||
|
WS2812_ONE; // G0
|
||||||
|
|
||||||
|
WS2812_ZERO; // R7
|
||||||
|
WS2812_ZERO; // R6
|
||||||
|
WS2812_ZERO; // R5
|
||||||
|
WS2812_ZERO; // R4
|
||||||
|
WS2812_ZERO; // R3
|
||||||
|
WS2812_ZERO; // R2
|
||||||
|
WS2812_ZERO; // R1
|
||||||
|
WS2812_ZERO; // R0
|
||||||
|
|
||||||
|
WS2812_ZERO; // B7
|
||||||
|
WS2812_ZERO; // B6
|
||||||
|
WS2812_ZERO; // B5
|
||||||
|
WS2812_ZERO; // B4
|
||||||
|
WS2812_ZERO; // B3
|
||||||
|
WS2812_ZERO; // B2
|
||||||
|
WS2812_ZERO; // B1
|
||||||
|
WS2812_ZERO; // B0
|
||||||
|
|
||||||
|
// 3
|
||||||
|
WS2812_ZERO; // G7
|
||||||
|
WS2812_ZERO; // G6
|
||||||
|
WS2812_ZERO; // G5
|
||||||
|
WS2812_ZERO; // G4
|
||||||
|
WS2812_ZERO; // G3
|
||||||
|
WS2812_ZERO; // G2
|
||||||
|
WS2812_ZERO; // G1
|
||||||
|
WS2812_ZERO; // G0
|
||||||
|
|
||||||
|
WS2812_ONE; // R7
|
||||||
|
WS2812_ONE; // R6
|
||||||
|
WS2812_ONE; // R5
|
||||||
|
WS2812_ONE;; // R4
|
||||||
|
WS2812_ONE; // R3
|
||||||
|
WS2812_ONE; // R2
|
||||||
|
WS2812_ONE; // R1
|
||||||
|
WS2812_ONE; // R0
|
||||||
|
|
||||||
|
WS2812_ZERO; // B7
|
||||||
|
WS2812_ZERO; // B6
|
||||||
|
WS2812_ZERO; // B5
|
||||||
|
WS2812_ZERO; // B4
|
||||||
|
WS2812_ZERO; // B3
|
||||||
|
WS2812_ZERO; // B2
|
||||||
|
WS2812_ZERO; // B1
|
||||||
|
WS2812_ZERO; // B0
|
||||||
|
|
||||||
|
|
||||||
|
// 4
|
||||||
|
WS2812_ZERO; // G7
|
||||||
|
WS2812_ZERO; // G6
|
||||||
|
WS2812_ZERO; // G5
|
||||||
|
WS2812_ZERO; // G4
|
||||||
|
WS2812_ZERO; // G3
|
||||||
|
WS2812_ZERO; // G2
|
||||||
|
WS2812_ZERO; // G1
|
||||||
|
WS2812_ZERO; // G0
|
||||||
|
|
||||||
|
WS2812_ZERO; // R7
|
||||||
|
WS2812_ZERO; // R6
|
||||||
|
WS2812_ZERO; // R5
|
||||||
|
WS2812_ZERO; // R4
|
||||||
|
WS2812_ZERO; // R3
|
||||||
|
WS2812_ZERO; // R2
|
||||||
|
WS2812_ZERO; // R1
|
||||||
|
WS2812_ZERO; // R0
|
||||||
|
|
||||||
|
WS2812_ONE; // B7
|
||||||
|
WS2812_ONE; // B6
|
||||||
|
WS2812_ONE; // B5
|
||||||
|
WS2812_ONE; // B4
|
||||||
|
WS2812_ONE; // B3
|
||||||
|
WS2812_ONE; // B2
|
||||||
|
WS2812_ONE; // B1
|
||||||
|
WS2812_ONE; // B0
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
//===========================================================
|
60
FT60E210-PWM.ini
Normal file
60
FT60E210-PWM.ini
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
[MAINFRAME]
|
||||||
|
IDEVer=3010108
|
||||||
|
CompilerType=GCC
|
||||||
|
CheckSFUpdate=1
|
||||||
|
LastBuildYear=2024
|
||||||
|
LastBuildMonth=7
|
||||||
|
LastBuildDay=23
|
||||||
|
LastBuildHour=9
|
||||||
|
LastBuildMin=40
|
||||||
|
LastBuildSec=13
|
||||||
|
[OPTIONS]
|
||||||
|
1044=1
|
||||||
|
1046=0
|
||||||
|
1048=1
|
||||||
|
1050=0
|
||||||
|
1052=1
|
||||||
|
1054=0
|
||||||
|
1056=2
|
||||||
|
1058=1
|
||||||
|
1060=0
|
||||||
|
1062=-1
|
||||||
|
1064=-1
|
||||||
|
1066=-1
|
||||||
|
1068=-1
|
||||||
|
1070=-1
|
||||||
|
1072=-1
|
||||||
|
1074=-1
|
||||||
|
1076=-1
|
||||||
|
1078=-1
|
||||||
|
1080=-1
|
||||||
|
1082=-1
|
||||||
|
1084=-1
|
||||||
|
1086=-1
|
||||||
|
1088=-1
|
||||||
|
1090=-1
|
||||||
|
1092=-1
|
||||||
|
1095=-1
|
||||||
|
1097=-1
|
||||||
|
1093=0
|
||||||
|
SoftwareConfig=0
|
||||||
|
[PRJOPTIONS]
|
||||||
|
1038=1
|
||||||
|
1060=
|
||||||
|
1061=
|
||||||
|
1008=1
|
||||||
|
1009=0
|
||||||
|
1094=0
|
||||||
|
1098=default
|
||||||
|
HEXForm=0
|
||||||
|
1010=0
|
||||||
|
1099=0
|
||||||
|
RemindFTUpdate=1
|
||||||
|
FloatSize=0
|
||||||
|
SourcefileType=1
|
||||||
|
[FONTS]
|
||||||
|
200=Courier New
|
||||||
|
201=11
|
||||||
|
202=0
|
||||||
|
203=0
|
||||||
|
204=0,0,0
|
BIN
FT60E210-PWM.prj
Normal file
BIN
FT60E210-PWM.prj
Normal file
Binary file not shown.
48
sysnop.h
Normal file
48
sysnop.h
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
#ifndef __SYS_NOP_H__
|
||||||
|
#define __SYS_NOP_H__
|
||||||
|
|
||||||
|
#include "syscfg.h"
|
||||||
|
|
||||||
|
#define NOP1() __nop()
|
||||||
|
#define NOP2() NOP1(),NOP1()
|
||||||
|
#define NOP3() NOP2(),NOP1()
|
||||||
|
#define NOP4() NOP3(),NOP1()
|
||||||
|
#define NOP5() NOP4(),NOP1()
|
||||||
|
#define NOP6() NOP5(),NOP1()
|
||||||
|
#define NOP7() NOP6(),NOP1()
|
||||||
|
#define NOP8() NOP7(),NOP1()
|
||||||
|
#define NOP9() NOP8(),NOP1()
|
||||||
|
#define NOP10() NOP9(),NOP1()
|
||||||
|
#define NOP11() NOP10(),NOP1()
|
||||||
|
#define NOP12() NOP11(),NOP1()
|
||||||
|
#define NOP13() NOP12(),NOP1()
|
||||||
|
#define NOP14() NOP13(),NOP1()
|
||||||
|
#define NOP15() NOP14(),NOP1()
|
||||||
|
#define NOP16() NOP15(),NOP1()
|
||||||
|
#define NOP17() NOP16(),NOP1()
|
||||||
|
#define NOP18() NOP17(),NOP1()
|
||||||
|
#define NOP19() NOP18(),NOP1()
|
||||||
|
#define NOP20() NOP19(),NOP1()
|
||||||
|
#define NOP21() NOP20(),NOP1()
|
||||||
|
#define NOP22() NOP21(),NOP1()
|
||||||
|
#define NOP23() NOP22(),NOP1()
|
||||||
|
#define NOP24() NOP23(),NOP1()
|
||||||
|
#define NOP25() NOP24(),NOP1()
|
||||||
|
#define NOP26() NOP25(),NOP1()
|
||||||
|
#define NOP27() NOP26(),NOP1()
|
||||||
|
#define NOP28() NOP27(),NOP1()
|
||||||
|
#define NOP29() NOP28(),NOP1()
|
||||||
|
#define NOP30() NOP29(),NOP1()
|
||||||
|
#define NOP31() NOP30(),NOP1()
|
||||||
|
#define NOP32() NOP31(),NOP1()
|
||||||
|
#define NOP33() NOP32(),NOP1()
|
||||||
|
#define NOP34() NOP33(),NOP1()
|
||||||
|
#define NOP35() NOP34(),NOP1()
|
||||||
|
#define NOP36() NOP35(),NOP1()
|
||||||
|
#define NOP37() NOP36(),NOP1()
|
||||||
|
#define NOP38() NOP37(),NOP1()
|
||||||
|
#define NOP39() NOP38(),NOP1()
|
||||||
|
#define NOP40() NOP39(),NOP1()
|
||||||
|
#define NOPN(N) NOP##N()
|
||||||
|
|
||||||
|
#endif
|
Loading…
Reference in New Issue
Block a user