⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 function.h

📁 四路串行模数转换IC--TLV2544的接口驱动源代码
💻 H
📖 第 1 页 / 共 2 页
字号:
/*
#define  Ads_I               IDT_7134+0x09A0 //0x0600// 256*2=512 bytes
#define  Ads_T               IDT_7134+0x0858         // 126*2=252 bytes
#define  Ads_AC              IDT_7134+0x0984         // 12*2=24 bytes
#define  Ads_A               IDT_7134+0x09A2         // 300 bytes
#define  Board_I       XBYTE[IDT_7134+0x0AE0]
#define  Board_T       XBYTE[IDT_7134+0x0AE9]
#define  Board_AC      XBYTE[IDT_7134+0x0AF0]
#define  Board_A       XBYTE[IDT_7134+0x0AF1]
#define  Every_board_I       IDT_7134+0x0AE1         // 8 board
#define  Every_board_T       IDT_7134+0x0AEA         // 6 board
#define  Every_board_V       IDT_7134+0x0AF0
#define  Every_board_A       IDT_7134+0x0AF1
#define  Msg_Board     XBYTE[IDT_7134+0x05F0]    
#define  Msg_Flag      XBYTE[IDT_7134+0x05F2]   
#define  Msg_Hand      XBYTE[IDT_7134+0x05FC]
#define  Msg_Main      XBYTE[IDT_7134+0x05FE]
#define  UP_CT               IDT_7134+0x0B00          // 256*2=512 bytes
#define  TanTou              IDT_7134+0x0D00          // 126*1=126 bytes
*/



#define	 State1          XBYTE[PORT_62256-0x1D92]    // XBYTE[0x2FF0]
#define	 State2          XBYTE[PORT_62256-0x1D94]    // XBYTE[0x2FF1]
#define	 State3          XBYTE[PORT_62256-0x1D96]    // XBYTE[0x2FF2]


#define  V_Sample_add    XBYTE[PORT]                 // 电压采样信号选通首地址 Max=16
#define	 I_Sample_add    XBYTE[PORT]                 // 电流采样信号选通首地址 Max=128
#define	 T_Sample_add	 XBYTE[PORT]                 // 温度采样信号选通首地址 Max=112
#define	 U_Sample_add	       MPIO+0x00             // 状态采样信号选通首地址 Max=192
#define  DC_VALUE        XBYTE[MPIO+0x80]
#define  KEYPORT         XBYTE[MPIO+0x80]
#define  LCMDW           XBYTE[MPIO+0xc0]   // 数据口
#define  LCMSR           XBYTE[MPIO+0xc0]   // statue flag read
#define  LCMCW           XBYTE[MPIO+0xc1]   // 命令口
#define  LCMDR           XBYTE[MPIO+0xc1]   // 读数据。光标
#define	 LCDLAMP         XBYTE[MPIO+0x80]   // LCM CCFL控制口


#define  UART_DLL        XBYTE[PORT_16c550+0xf8]         //    ;DLAB=0
#define  UART_DLM        XBYTE[PORT_16c550+0xf9]         //    ;DLAB=1
#define  UART_RBR        XBYTE[PORT_16c550+0xf8]         //    ;DLAB=0
#define  UART_THR        XBYTE[PORT_16c550+0xf8]         //    ;DLAB=1
#define  UART_IER        XBYTE[PORT_16c550+0xf9]
#define  UART_IIR        XBYTE[PORT_16c550+0xfa]
#define  UART_FCR        XBYTE[PORT_16c550+0xfa]
#define  UART_LCR        XBYTE[PORT_16c550+0xfb]
#define  UART_MCR        XBYTE[PORT_16c550+0xfc]
#define  UART_LSR        XBYTE[PORT_16c550+0xfd]
#define  UART_MSR        XBYTE[PORT_16c550+0xfe]
#define  UART_SCR        XBYTE[PORT_16c550+0xff]

void  Tabl9_V();
void  Tabl9_K();
void  unfill(uchar uRow,uchar uCol,uchar uLen,uchar uHigh);
void  fill(uchar uRow,uchar uCol,uchar uLen,uchar uHigh);
void  clear_Key();
void  blockOn(uchar y,uchar x);
void  blockOff(uchar y,uchar x);
void  Tabl_Key();
void  Read_Ads();
void  Read_DRAM();
void  Handle_Ads_Value();
void  Debug_Programm();            //调试程序时用于清空某些地址空间(正式版本中必须删除)

//======================== 函数说明部分 =============================================

void  delay4us();
void  delayms(uchar i);            //延时i(ms)
void  disZF16_33(uchar addr);

//--------- PCF8583.C --------------------------
void  PCF8583_start();
void  PCF8583_stop();
void  PCF8583_si(uchar dat);
uchar PCF8583_so();
uchar PCF8583_rb(uchar addr);      // random read
uchar PCF8583_wb(uchar addr, uchar dat);     // write a byte
void  PCF8583_Init();
void  gettime();
uchar checktime(uchar *rdbuf);


//---------- DLCD.C ----------------------------
uchar fnGetRow();
uchar fnGetCol();
uchar fnPR1(uchar uCmd,uchar uPar1,uchar uPar2);
uchar fnPR11(uchar uCmd,uchar uPar1);
uchar fnPR12(uchar uCmd);
uchar fnPR13(uchar uData);
uchar fnPR21();                                                   // 读数据.光标
bit   fnPR22(void);                                               // 读状态标记
void  fnSetPos(uint  urow, uchar ucol);
void  cursor(uchar uRow, uchar uCol);
void  cls();
void  dishz32(uchar addr);                                        // 显示一个汉字(32*32) 函数
void  cur();
void  disHz16(uchar FirstByte,uchar SecondByte);                  // 显示16*16汉字
void  dishz(uint addr);
void  diszf(uchar addr);                                          // 显示一个ASCII(8*16) 函数
void  diszf12(uchar addr);                                        // 显示一个ASCII(8*12) 函数
char  fnLCMInit();                                                // LCM 初始化
void  Tabl1();                                                    // 电压监测表第三层底线
void  Tabl2();                                                    // 电机运行状态及累计时间表第三层底线
void  Tabl3();                                                    // 电流监测表第三层底线
void  Tabl4();                                                    // 温度监测表第三层底线
void  Tabl9();                                                    // 电流上限设定表第三层底线
void  Tablb();                                                    // 累计时间上限设定表第三层底线
void  Tabld();                                                    // 累计时间上限设定表第三层底线
void  diszf_16(uchar addr);


//------------ TLV2544.C -----------------------
uint  Tlv2544_rb(uchar ch);
void  Tlv2544_wb(uint C_dat);                                     // 向Tlv2544写16bit数据

//------------ ADS7843.C -----------------------
uint  Ads7843_rb(uchar AD_CH);


#define  MWRITE          0x42
#define  MREAD           0x43

//------ ads7843( A/D 通道选择命令字定义 ) -----------------------
#define  CHX             0x94               //通道X+的选择控制字
#define  CHY             0xD4               //通道Y+的选择控制字
#define  CH3             0xA4
#define  CH4             0xE4


//------- 口线定义部分 -------------------

sbit     Led57    = P1^0;                        //=1 亮(高电平有效)
sbit     Light    = P1^0;
sbit     Led58    = P1^2;                        //=1 亮(高电平有效)
sbit     SCLK     = P1^3;                       //SPI 接口控制线
sbit     SDI      = P1^4;                       //SPI 接口控制线
sbit     SDO      = P1^7;                       //SPI 接口控制线
sbit     CS_7843  = P1^5;

sbit     CS_2544  = P1^6;


sbit     SDA      = P3^0;                        //PCF8583 口线定义
sbit     SCK      = P3^1;                        //PCF8583 口线定义
sbit     Pen      = P3^2;                        //触摸
sbit     Speak    = P3^3;                        //蜂鸣器报警(低电平有效) 1:关闭   0:响
sbit     IO_board = P3^5;                        //检测I,T板(上电检测温度采样,电流采样板有否,IO_board=0,说明测试到被检板,否则无)

//--------- max1232口定义 -----------------
sbit     WDR      = P3^4;

sbit     Reset    = P1^6;


//================================= 变量定义部分 ====================================================================
#define  Page_time       0x0f
#define  page_set        0x0e
#define  page_home       0x0b
#define  Esc             0x0c
#define  Page_down       0x0a
#define  Page_up         0x0d
#define  Enter           0x3d
#define  Left            0x3a
#define  Right           0x3b
#define  Delet           0x3c

#define  STARTX	         0
#define  STARTY          0

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -