📄 lcd.c
字号:
// /*-- 文字: 6 --
const unsigned char code NB6[14]= { 0x07,0x08,0x08,0x08,0x08,0x07,0x00,0xE0,0x90,0x48,0x48,0x48,0x98,0x00 };
// /*-- 文字: 7 --
const unsigned char code NB7[14]= { 0x00,0x00,0x00,0x0F,0x00,0x00,0x00,0x00,0x38,0x08,0x88,0x68,0x18,0x00 };
// /*-- 文字: 8 --
const unsigned char code NB8[14]= { 0x07,0x08,0x08,0x08,0x08,0x07,0x00,0x30,0xC8,0x88,0x88,0xC8,0x30,0x00 };
// /*-- 文字: 9 --
const unsigned char code NB9[14]= { 0x0C,0x09,0x09,0x09,0x04,0x03,0x00,0xF0,0x08,0x08,0x08,0x88,0xF0,0x00 };
// /*-- 文字: 0 --
const unsigned char code NB0[14]= { 0x03,0x04,0x08,0x08,0x04,0x03,0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00 };
const unsigned char code NBK[14]= { 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 };
/*-- 文字: 前 --*/
/*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --
const unsigned char code Qian[32] = {
0x00,0x00,0x00,0x3F,0x20,0x18,0x06,0x01,0x10,0x20,0x7D,0x20,0x10,0x00,0x00,0x00,
0x00,0x02,0x02,0xFE,0x02,0x02,0x00,0x80,0x60,0x18,0xB6,0x00,0x00,0x00,0x00,0x00 };
/*-- 文字: 中 --*/
/*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --
const unsigned char code Zhong[64] = {
0x00,0x00,0x00,0x00,0x00,0x02,0x04,0x0F,0x04,0x02,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xBB,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xBB,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xB8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 };
/*-- 文字: 后 --*/
/*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --
const unsigned char code Hou[32] = {
0x00,0x00,0x6D,0x30,0x0C,0x03,0x00,0x48,0x50,0x7F,0x50,0x48,0x00,0x00,0x00,0x00,
0x00,0x00,0xB6,0x00,0x00,0x00,0xC0,0x30,0x0C,0xFE,0x00,0x00,0x00,0x00,0x00,0x00 };
const unsigned char code Kong[32] = {
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 };
/*-- 文字: 通 --*/
/*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --
const unsigned char code Tong[32] = {
0x40,0x20,0x1F,0x20,0x40,0x5F,0x42,0x42,0x42,0x5F,0x4A,0x52,0x4F,0x40,0x40,0x00,
0x40,0x41,0xC6,0x00,0x00,0xF2,0x52,0x52,0x56,0xFA,0x5A,0x56,0xF2,0x00,0x00,0x00 };
/*-- 文字: 信 --*/
/*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --
const unsigned char code Xin[32] = {
0x00,0x00,0x00,0x7F,0x00,0x00,0x7E,0x22,0x22,0x22,0x22,0x22,0x7E,0x00,0x00,0x00,
0x80,0x40,0x30,0xFC,0x07,0x0A,0xA8,0xA8,0xA9,0xAE,0xAA,0xA8,0xA8,0x08,0x08,0x00 };
/*-- 文字: 中 --*/
/*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --
const unsigned char code Zong[32] = {
0x00,0x00,0x07,0x02,0x02,0x02,0x02,0xFF,0x02,0x02,0x02,0x02,0x07,0x00,0x00,0x00,
0x00,0x00,0xFC,0x08,0x08,0x08,0x08,0xFF,0x08,0x08,0x08,0x08,0xFC,0x08,0x00,0x00 };
/*-- 文字: 断 --*/
/*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --
const unsigned char code Duan[32] = {
0x00,0x3F,0x24,0x23,0x20,0x3F,0x61,0x22,0x18,0x07,0x00,0x00,0xFF,0x00,0x00,0x00,
0x00,0xFE,0x44,0x58,0xC0,0xFF,0x50,0x4C,0x00,0xFC,0x44,0x44,0xC2,0x42,0x42,0x00 };
//剪线
const unsigned char code JianXian[32] = {
0x00,0x3C,0x42,0x42,0x32,0x0A,0x05,0x01,0x02,0x05,0x0A,0x32,0x42,0x42,0x3C,0x00,
0x46,0x4C,0x58,0x70,0x60,0xC0,0xC0,0x40,0x40,0xC0,0xC0,0x60,0x70,0x58,0x4C,0x46 };
//抬压脚
const unsigned char code TaiYaJiao[32] = {
0x02,0x24,0x2C,0x2C,0x2C,0x2C,0x2F,0x2F,0x2C,0x2C,0x2D,0x2C,0x2C,0x2C,0x24,0x02,
0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0xFE,0x00,0x08,0xFC,0x08,0x00,0x00,0x00,0x00 };
//上停针
const unsigned char code ShangTing [32] = {
0x00,0x00,0x40,0x40,0x40,0x40,0x44,0x48,0x5F,0x48,0x44,0x40,0x40,0x40,0x40,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00 };
//下停
const unsigned char code XiaTing [32] = {
0x00,0x00,0x04,0x04,0x04,0x04,0x14,0x20,0x7F,0x20,0x14,0x04,0x04,0x04,0x04,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x00 };
//自动
const unsigned char code ZiDong [32] = {
0x00,0x07,0x09,0x12,0x24,0x44,0x41,0x42,0x62,0x51,0x4C,0x20,0x10,0x08,0x07,0x00,
0x00,0xE0,0x10,0x08,0x04,0x32,0x8A,0x46,0x42,0x82,0x22,0x24,0x48,0x90,0xE0,0x00 }; */
// ------ Private variables ----------------------------------------
/*xdata int Begin0=0;
xdata int Begin1=0;
xdata int Begin2=0;
xdata int Begin3=0;
xdata int Begin4=0;
xdata int Begin5=0;
xdata int Begin6=0;
xdata int Middle0=0;
xdata int Middle1=0;
xdata int Middle2=0;
xdata int Middle3=0;
xdata int Middle4=0;
xdata int Middle5=0;
xdata int Middle6=0;
xdata int Middle7=0;
xdata int Middle8=0;
xdata int Middle9=0;
xdata int Middle10=0;
xdata int Middle11=0;
xdata int Middle12=0;
xdata int End0=0;
xdata int End1=0;
xdata int End2=0;
xdata int End3=0;
xdata int End4=0;
xdata int End5=0;
xdata int End6=0;
xdata int beginDelay1 = 0;
xdata int beginDelay4 = 0;
xdata int endDelay1 = 0;
xdata int endDelay3 = 0; */
/*void RSTINIdata()
{
Data_H = 3000 ; //50--9999 0X8000 0X8001
Data_PSL = 85;//1--100 0X8002
Data_CNR = 1; // 0X8003
Data_N = 1800; //50 --8000 0X80 04 0X8005
Data_V =1800; //50 --8000 0X8006 0X8007
Data_B =1800; //50 --8000 0X8008/9
Data_S =400; //50 --2000 0X800A/B
Data_SLS = 2;//0-99 0X800C
Data_A = 2000 ;//50---8000 0X800D/E
Data_ACD = 1;//1 off 2 on 0X800F
Data_RVM = 1;// 0X8010
Data_SMS = 1;//1A/2M/3SU/4SD 0X8011
Data_TYS = 1; //1 CON /2:STP/3:TRM 0X8012
Data_SBT = 1; //1ON 2OFF 0X8013
Data_SBA = 3; //0--15 0X8014
Data_SBB = 3; //0--15 0X8015
Data_SBN = 2; //0X8016
Data_BT1 = 4; //0--15 0X8017
Data_BT2 = 3; //0--15 0X8018
Data_SME = 1; //1A 2SU 3SD 0X8019
Data_EBT = 1; //1 ON,2 OFF 0X801A
Data_EBC = 3; //1--15 0X801B
Data_EBD = 3; //1--15 0X801C
Data_EBN = 2; //0--4 0X801D
Data_BT3 = 2; //0--15 0X801E
Data_BT4 = 1; //0--15 0X801F
Data_CT = 50; //0 --990 0X8020/1
Data_SB5 = 2; //1ON 2OFF 0X8022
Data_SB9 = 0;//0--99 0X8023
Data_BCC = 2;//1 on 2 off 0X8024
Data_SMB = 1;//1A/2 M /3SU /4SD 0X8025
Data_BAR = 2;//1 ON 2 OFF 0X8026
Data_BRC = 4; //0 --99 0X8027
Data_BRN = 4; //0 --15 0X8028
Data_BT5 = 4; //0--15 0X8029
Data_BT6 = 3; // 0-15 0X802A
Data_SMP = 2; // 1AUTO 2 MANUAL 0X802B
Data_PM = 2; //1 ON //2 OFF 0X802C
//Data_PS[0]= 15;//,<250 0X802D
Data_PS[1]= 15;//,<250 0X802E
Data_PS[2]= 15;//,<250 0X802F
Data_PS[3]= 15;//,<250 0X8030
Data_PS[4]= 15;//,<250 0X8031
Data_PS[5]= 0;//,<250 0X8032
Data_PS[6]= 0;//,<250 0X8033
Data_PS[7]= 0;//,<250 0X8034
Data_PS[8]= 0;//,<250 0X8035
Data_PS[9]= 0;//,<250 0X8036
Data_PS[10]= 0;//,<250 0X8037
Data_PS[11]= 0;//,<250 0X8038
Data_PS[12]= 0;//,<250 0X8039
Data_PS[13]= 0;//,<250 0X803A
Data_PS[14]= 0;//,<250 0X803B
Data_PS[15]= 0;//,<250 0X803C
Data_WON = 1;//1 ON ,0 OFF 0X803D
Data_TM = 1;// 1ON 0 OFF 0X803E
Data_CUD =0; //0 NOP 1U/2D/3US/4UT/5DTS/ 0X803F
Data_UD = 99;//0 --9999; 0X8040/1
Data_PN = 0; //0--9999 0X8042/3
Data_SP = 0; // 0X8044
Data_DIR = 0; // 0X8045
Data_MAC = 0 ;// 0 - 91 0X8046
Data_N12 = 0; //0 OFF 1 ON 0X8047
Data_SPD = 75; //1-250MM 0X8048
Data_MPD = 75; //1-250MM 0X8049
Data_PL =0 ;//0 OFF 1 ON 0X804A
Data_BT = 200;//150- 250 MS 0X804B
Data_POL = 1; //0 OFF ,1 ON 0X804C
Data_BK = ON ; //ON OFF 0X804D
Data_SRA = 60 ; //1--360 degree 0X804E/F
Data_TRU = OFF;//ON OFF 0X8050
Data_TR8 = 40; //1-360 0X8051/2
Data_M =800; //LOW TO 8000SPM 0X8053/4
Data_L = 250; //50 --500 0X8055/6
Data_T = 200; //50 -- 500 0X8057/8
Data_HPM = 1; //0 ALT ,1 MON 0X8059
Data_FTP = 0;//0 M IS THE NORMAL SETING ,1 A 0X805A
Data_FO = 350; //0-990 MS 0X805B/C
Data_FC = 26 ;//10--90% 0X805D
Data_FD = 0 ; //0 --990MS 0X805E/F
Data_FPM = ON ; //ON ,OFF 0X8060
Data_FP = 3000 ;//0 -9900X 0.1 second 0X8061/2
Data_HD = 100 ; //0 -990 MS NUMBER 69 0X8063
Data_HHC = OFF; //ON OFF 0X8064
Data_FL = OFF ; //OFF ON 0X8065
Data_FHC = ON ; //ON /OFF 0X8066
Data_NTC = OFF; // ON OFF 0X8067
Data_FRV = OFF ; //0X8068
Data_SFM = 1; // 0 N.C. N.O. 0X8069
Data_TCL = OFF;//ON OFF 0X806A
Data_ILC = OFF;//ON OFF 0X806B
Data_TRM = 1;//1 LK /2 RK /3 KA/4KB/5KC 0X806C
Data_LTM = 6; //1 T1, 2 T2,3 T3,4 T4,5 TK ,6 TS ,7 T7 0X806D
Data_LLM = 6; //L1,L2,L3 ,L4,LK,LS ,L7 0X806E
Data_TS = 0 ;//0-360 DEGREES 0X806F/0X8070
Data_T1 = 0 ; //0 -990MS 0X8071/2
Data_T2 = 0 ;// 0 -990MS 0X8073/4
Data_TE = 0 ;//0 -360 degrees 0X8075/6
Data_LS = 0 ; //0 -360 degrees 0X8077/8
Data_L1 = 0; //0 --990 ms 0X8079/A
Data_L2 = 0; //0 --1500 MS 0X807B/C
Data_LE = 0; //0 --360 degrees 0X807D/E
Data_D1 = 30;//0 --990MS 0X807F
Data_D2 = 90; //0 --2500ms
Data_D3 = 120;//0- 990MS
Data_W1 = 10; //0 -980 MS
Data_W2 = 70 ;//0 -9990MS
Data_WF = 50 ; // 0 -990 MS
Data_CSF = OFF;//ON OFF
Data_WN3 = 10;//0 -99 STITCHES
Data_TK3 = 100;//10-990MS
Data_MST = 1;//0 T 1 C
Data_SEN = OFF;//ON OFF
Data_SRS = 1;// 0-99MS
Data_CMS = 3;//0-99MS,STITCHES
Data_SE = 6;//1-999 STITCHES
Data_SET = OFF; //ON OFF
Data_PSU = 6; //1--99STICHES
Data_PSD = 6; // 1- 99 STITCHES
Data_PSN = ON ;//ON OFF
Data_S7U = OFF;//ON /OFF
Data_S7D = ON ;// ON OFF//
Data_ROF = OFF ;//ON OFF
Data_TB = OFF; // ON /OFF
Data_COR = 2;//1/2
Data_WMD =1;//1W. 2,O,3AND,
Data_DEG=12;//5-180degrees
Data_UEG =12; //5 - 180 degrees
Data_PMD = OFF;// ON /OFF
Data_DRU = 180;//1- 360 degrees
//Data_ER ;//10 SET FIFO
Data_NOS = OFF ;//ON OFF
Data_DD = ON ; // ON OFF
Data_FHM = 1;//1FU ;/2NU/ 3NO /4NUF/5EFF
Data_ANU = OFF;//ON OFF
Data_HL = 4200;//50 -9999 SPM
//Data_FASET; //123
Data_PG = 1;//1 NOP .2LOAD /3 SAVE
Data_USM = 1;//1A ,2 B,3C, 4D ,5E ,6F,7G
Data_USA = OFF;//ON OFF
Data_MAV = 0;
Data_MIV = 0 ;
Data_PV = 0 ;
Data_OVD = 305; //170 -315 VAC
Data_LVD = 100; // 70 --160 VAC
Data_UPG = 0 ; //0 -4
Data_CHS = 5;//1-99
Data_KLK = OFF;//ON OFF
Data_TOT = 1;//1-168;
Data_TM1 = 20;//1-250x0.1 s;
Data_TM2 = 20; // 1-250X0.1S
Data_UTD = OFF ; //ON OFF
Data_CK = 505;//
Data_OSE = OFF; // ON / OFF
Data_BC3 = OFF;//ON OFF
Data_EFK = OFF; //ON OFF
Data_AT = OFF; //ON OFF
Data_IN1 = 1;//0 NOP ,1IO1,2S4,3CR
Data_IN2 = 0;//U 1USR.2NOP
Data_IN3 = 0;//0HT 1WL
Data_INA = 0;//0PSU 1BCR /2 NOP /3SPL
Data_INC = 0; //0 SH/IO1/IO2/CW
Data_IND = 1;//0TL/.1ES/2NOP
Data_INE = 0;//0S7/ 1IO1/IO2/CW
Data_INF = 0;//0F /HP
Data_INI = 0;//0CRS /FAW
Data_INK = 0;// HP /F
Data_OA = 0 ;//TM KS1
Data_OB = 0 ; //WP/ML/FK
Data_OD = 0; //ML/KS1/KS2/KS3/KS4/NCL
Data_O1 = 0 ;//OT1/KS1/PUL/CSL
Data_O3 = 0;//HP/KS1/KS2
Data_O4 = 0;//BUZ/OT4
Data_O5 = 0;//HPL/OT5
Data_O6 = 0 ;//STL/OT6
Data_BD = 70;//70 -990
Data_MXI = 10;// 5-19A
Data_WKT = 2; //1--5
Data_ACT =140;//60--990
Data_DCT =160; //60-990
Data_HKP = 40; //5--400
Data_LKP = 50; //5--400
Data_KP = 40 ;//5--150
Data_KI = 1800;//100-3000
Data_KS = 18; //1-40
Data_QSK = 100 ;//30 -999
Data_QSP =100 ; //50 -500
Data_HV = OFF;//ON OFF
Data_WWWA = 3;
Data_WWWB = 3;
Data_WWWC = 3;
Data_WWWD = 3;
}
*/
/* 打开 ISP,IAP 功能 */
void ISP_IAP_enable(void)
{
EA = 0; /* 关中断 */
ISP_CONTR = ISP_CONTR & 0x18; /* 0001,1000 */
ISP_CONTR = ISP_CONTR | WAIT_TIME;
ISP_CONTR = ISP_CONTR | 0x80; /* 1000,0000 */
}
/* 关闭 ISP,IAP 功能 */
void ISP_IAP_disable(void)
{
ISP_CONTR = ISP_CONTR & 0x7f; /* 0111,1111 */
ISP_TRIG = 0x00;
EA = 1; /* 开中断 */
}
/*扇区擦除*/
void sector_erase(unsigned int sector_addr)
{
unsigned int get_sector_addr = 0;
get_sector_addr = (sector_addr & 0xfe00); // 1111,1110,0000,0000; 取扇区地址
ISP_ADDRH = (unsigned char)(get_sector_addr >> 8);
ISP_ADDRL = 0x00;
ISP_CMD = ISP_CMD & 0xf8; // 1111,1000
ISP_CMD = ISP_CMD | SECTOR_ERASE_AP_and_Data_Memory_Command; // 0000,0011
ISP_IAP_enable();
ISP_TRIG = 0x46; // 触发ISP_IAP命令
ISP_TRIG = 0xb9; // 触发ISP_IAP命令
_nop_();
ISP_IAP_disable();
}
unsigned char RDEEPROM(unsigned int byte_addr)
{
ISP_ADDRH = (unsigned char)(byte_addr >> 8);
ISP_ADDRL = (unsigned char)(byte_addr & 0x00ff);
ISP_CMD = ISP_CMD & 0xf8;
ISP_CMD = ISP_CMD | READ_AP_and_Data_Memory_Command;
ISP_IAP_enable();
ISP_TRIG = 0x46;
ISP_TRIG = 0xb9;
_nop_();
ISP_IAP_disable();
return (ISP_DATA);
// byte_addr=0;
// return 20;
}
//字节编程
void WREEPROM(unsigned char original_data, unsigned int byte_addr)
{
ISP_ADDRH = (unsigned char)(byte_addr >> 8);
ISP_ADDRL = (unsigned char)(byte_addr & 0x00ff);
ISP_CMD = ISP_CMD & 0xf8; // 1111,1000
ISP_CMD = ISP_CMD | PROGRAM_AP_and_Data_Memory_Command; // 0000,0010
ISP_DATA = original_data;
ISP_IAP_enable();
ISP_TRIG = 0x46; // 触发ISP_IAP命令
ISP_TRIG = 0xb9; // 触发ISP_IAP命令
_nop_();
ISP_IAP_disable();
}
/***********************************************************************
*** 函 数 名: void InitialPowerOn()
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -