?? 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 + -