📄 cursor.c
字号:
#define _cursor_
#include "general.h"
#include "state.h"
//常量
//#define CEN 2000 //中心
#define STEP 65 //步长
//定义硬件引脚
sbit cs1=P3^2;
sbit cs2=P3^3;
sbit PD=P3^7;
sbit PC=P3^6;
sbit PB=P3^5;
sbit PA=P3^4;
/****************************************
31只LED组成的流水光标
输入:坐标数组
输出:显示函数
***************************************/
void gboff(void){
cs1=1;
cs2=1;
}
/*void init_154(void){
PD=0;
PC=0;
PB=0;
PA=0;
cs1=0;
cs1=1;
cs2=0;
PD=0;
PC=0;
PB=0;
PA=0;
cs2=1;
//gboff();
}
*/
void gb(uint n, //坐标
uint cen) //流水灯中心
{ //2035~2965,char型会溢出
//gboff();
//n=para_gb[5]*1000+para_gb[4]*100+para_gb[3]*10+para_gb[2];
if(n>(cen+31*STEP/2)) {cs1=0;cs2=1;PD=0;PC=0;PB=0;PA=0;/*delay(200);gboff();*/} //left out
else if(n>(cen+29*STEP/2)) {cs1=0;cs2=1;PD=0;PC=0;PB=0;PA=0;}//1
else if(n>(cen+27*STEP/2)) {cs1=0;cs2=1;PD=0;PC=0;PB=0;PA=1;}//2
else if(n>(cen+25*STEP/2)) {cs1=0;cs2=1;PD=0;PC=0;PB=1;PA=0;}//3
else if(n>(cen+23*STEP/2)) {cs1=0;cs2=1;PD=0;PC=0;PB=1;PA=1;}//4
else if(n>(cen+21*STEP/2)) {cs1=0;cs2=1;PD=0;PC=1;PB=0;PA=0;}//5
else if(n>(cen+19*STEP/2)) {cs1=0;cs2=1;PD=0;PC=1;PB=0;PA=1;}//6
else if(n>(cen+17*STEP/2)) {cs1=0;cs2=1;PD=0;PC=1;PB=1;PA=0;}//7
else if(n>(cen+15*STEP/2)) {cs1=0;cs2=1;PD=0;PC=1;PB=1;PA=1;}//8
else if(n>(cen+13*STEP/2)) {cs1=0;cs2=1;PD=1;PC=0;PB=0;PA=0;}//9
else if(n>(cen+11*STEP/2)) {cs1=0;cs2=1;PD=1;PC=0;PB=0;PA=1;}//10
else if(n>(cen+9*STEP/2)) {cs1=0;cs2=1;PD=1;PC=0;PB=1;PA=0;}//11
else if(n>(cen+7*STEP/2)) {cs1=0;cs2=1;PD=1;PC=0;PB=1;PA=1;}//12
else if(n>(cen+5*STEP/2)) {cs1=0;cs2=1;PD=1;PC=1;PB=0;PA=0;}//13
else if(n>(cen+3*STEP/2)) {cs1=0;cs2=1;PD=1;PC=1;PB=0;PA=1;}//14
else if(n>(cen+1*STEP/2)) {cs1=0;cs2=1;PD=1;PC=1;PB=1;PA=0;}//15
else if(n>(cen-1*STEP/2)) {cs1=0;cs2=1;PD=1;PC=1;PB=1;PA=1;}//16--cent2485~2515
else if(n>(cen-3*STEP/2)) {cs1=1;cs2=0;PD=0;PC=0;PB=0;PA=0;}//17
else if(n>(cen-5*STEP/2)) {cs1=1;cs2=0;PD=0;PC=0;PB=0;PA=1;}//18
else if(n>(cen-7*STEP/2)) {cs1=1;cs2=0;PD=0;PC=0;PB=1;PA=0;}//19
else if(n>(cen-9*STEP/2)) {cs1=1;cs2=0;PD=0;PC=0;PB=1;PA=1;}//20
else if(n>(cen-11*STEP/2)) {cs1=1;cs2=0;PD=0;PC=1;PB=0;PA=0;}//21
else if(n>(cen-13*STEP/2)) {cs1=1;cs2=0;PD=0;PC=1;PB=0;PA=1;}//22
else if(n>(cen-15*STEP/2)) {cs1=1;cs2=0;PD=0;PC=1;PB=1;PA=0;}//23
else if(n>(cen-17*STEP/2)) {cs1=1;cs2=0;PD=0;PC=1;PB=1;PA=1;}//24
else if(n>(cen-19*STEP/2)) {cs1=1;cs2=0;PD=1;PC=0;PB=0;PA=0;}//25
else if(n>(cen-21*STEP/2)) {cs1=1;cs2=0;PD=1;PC=0;PB=0;PA=1;}//26
else if(n>(cen-23*STEP/2)) {cs1=1;cs2=0;PD=1;PC=0;PB=1;PA=0;}//27
else if(n>(cen-25*STEP/2)) {cs1=1;cs2=0;PD=1;PC=0;PB=1;PA=1;}//28
else if(n>(cen-27*STEP/2)) {cs1=1;cs2=0;PD=1;PC=1;PB=0;PA=0;}//29
else if(n>(cen-29*STEP/2)) {cs1=1;cs2=0;PD=1;PC=1;PB=0;PA=1;}//30
else if(n>(cen-31*STEP/2)) {cs1=1;cs2=0;PD=1;PC=1;PB=1;PA=0;}//31
else {cs1=1;cs2=0;PD=1;PC=1;PB=1;PA=0;/*delay(200);gboff();*/}//out
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -