init project

This commit is contained in:
dreamcmi 2024-07-26 14:17:44 +08:00
commit d8e642f4c6
5 changed files with 311 additions and 0 deletions

16
.gitignore vendored Normal file
View 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
View 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 nameinterrupt ISR
//parameters
//returned value
//===========================================================
void interrupt ISR(void)
{
}
//===========================================================
//Function namemain
//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
View 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

Binary file not shown.

48
sysnop.h Normal file
View 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