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

📄 comm.h

📁 这是我在我们公司做的C51加油单片机程序
💻 H
字号:
/* IC卡加油机键盘通讯子模块头文件 */

#include "c:\comp51\reg52.h"
#include "c:\comp51\absacc.h"
#include <intrins.h>
/* 外部地址分配 */

#define DIRECTION	XBYTE[0xc013]	// 数据传送方向控制寄存器,最低位控制方向,发送:1,接收:0

#define     SCL   XBYTE[0xc00B]
#define     SDA   P17
/* 全局数据定义 */

sbit	com_sda=P3^2;			// 串口数据线
bit	is_send;			// 发送/接收标志,1:发送,0:接收
bit	is_over;			// 接收结束标志,1:结束
bit	is_err;				// 奇/偶校验错标志,1:出错

unsigned char xdata	send_buf[256];	// 发送数据缓冲区
unsigned char xdata	rekk[256];	// 接收数据缓冲区
unsigned char data	com_cur;	// 指示当前发送位(共13位,1起始+8数据+1校验+3停止),由0~12指示
unsigned char data	com_tem;	// 发送:D0~D7存放:1起始位+d0~d6;接收:数据缓冲
unsigned char data	com_tem1;	// 发送:D0~D4存放:d7+1校验位+3停止位;接收:数据指针
unsigned char data 	com_limit;	// 接收:数据指针最大偏移量
unsigned char xdata    ack;
extern unsigned char idata comm_status;
extern unsigned char idata sjback[6];
extern unsigned char xdata flash[200];
extern unsigned char idata kaohao[9];
extern unsigned char xdata second,minutes,hour,week,day,month,year;
/* 子函数说明 */

void com_delay();
	/* 等待数据接收完毕(最大延时等待20ms) */
void send(unsigned char offset,unsigned char len);
	/* 发送数据
	   offset:数据缓冲指针偏移量,len:要发送的数据长度 */
unsigned char recv(unsigned char offset,unsigned char len);
	/* 读取数据
	   offset:数据缓冲指针偏移量,len:要读取的数据长度
	   返回值 0:成功 1:奇偶校验错 2:超时 */

void dlu();
void Start_I2c();
void Stop_I2c();
void SendByte(unsigned char c);
unsigned char RcvByte();
unsigned char ISendStr(unsigned char sla,unsigned char suba,unsigned char no);
unsigned char IRcvStr(unsigned char sla,unsigned char suba,unsigned char no);
void Ack_I2c(bit a);
void settime();
void gettime();
unsigned int dw_zk(unsigned int qw);

⌨️ 快捷键说明

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