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

📄 fangdao.h

📁 本代码是用C51开发的
💻 H
字号:
#pragma OPTIMIZE(6,size)   	//优化级别与优化方式
//#pragma LARGE 				//编译模式 SMALL  COMPACT LARGE


#include <ctype.h>			//字符函数
#include <stdio.h>		//一般IO/函数
#include <string.h>			//字符串函数
#include <stdlib.h>			//标准函数
//#include <mach.h>			//数学函数
#include <intrins.h>		//内部函数
#include <stdarg.h>		//变量参数表


typedef unsigned char uchar;
typedef unsigned int uint;
typedef unsigned long ulong;


//#include <struct.h>
//#include <EventDef.h>

	#include <CPU.h>
	sbit OCC     = P1^7;
	sbit OCB     = P1^6;
    #define IO_RING			P2_2
	#define IO_HKS			P3_2
	#define IO_SYNC			P0_3
//	#define IO_IGT			T0
    #define IO_IGT 	 P3_4
    #define BELL  P3_3
	#define IO_OUT			P3_5
	sbit LED_INT0 = P0^0;
	sbit LED_INT1 = P0^1;
	sbit LED_INT2 = P0^2;
	sbit LED_INT3 = P0^3;
	sbit LED_INT4 = P0^4;
	sbit LED_INT5 = P0^5;
	sbit LED_INT6 = P0^6;
	sbit LED_INT7 = P0^7;
	//#define IO_IGT			P0_2
	//LED的背光控制
	//#define Lcd_Backlight_On    	LCD_BL=1
	//#define Lcd_Backlight_Off   	LCD_BL=0
	#define ring_tone_1    		IO_RINGTONE=1
	#define ring_tone_0	   	IO_RINGTONE=0
	//系统休眠与掉电
	sfr WDTC   = 0x9F;
	//sbit WDTC =  WDCON^2;
	//WDTC,9FH:  WDTE -- CLEAR -- -- PS2 PS1 PS0
	//WDTE:   看门狗定时器使能位,1有效
	//CLEAR:  看门狗定时器复位位,1有效
	//PS2 PS0:时钟源分频选择位  0-16-32-64-128-256-512-1024
	#define system_sleep   	P2_2=~P2_2;	//	MISO=1;  //PCON=0x01
	#define system_powerdown	//PCON=0x02
	//#define watch_dog_clear		P2_2=~P2_2;//WDL=0x43//WDCON&=~0x00;
	#define watch_dog_clear		WDTC=0xa3





#define IO_SBT			OCB
#define IO_IRP          T0







//=============================================================================
//                  基本的常用常量
//=============================================================================
#define ON		1
#define OFF		0
#define TRUE	1
#define true    1
#define FALSE	0

//=============================================================================
//                    所有的ICON共用一个16位的标志
//=============================================================================

//=============================================================================
//code  unsigned char SimCard_PinCode[]={"1234"};//SIM卡PIN码
//code  unsigned char SimCard_PinMode =1;
	#define  PIN_MODE_INPUT			0	//0可以使用未启用PIN码的卡,如要求输入PIN码则提示用户输入
    	#define  PIN_MODE_AUTO        	1	//1可以使用未启用PIN码的卡,如要求输入PIN码,则自动输入
	#define  PIN_MODE_ENABLE		2	//2-使用强制启用,并将1234修改为指定PIN码,如不对则提示出错代码.
	#define  PIN_MODE_ONETIMES		3	//3-只使用指定的PIN码来验证,如不对或PIN码没有启用提示出错代码.
	#define  PIN_MODE_ROLL			4	//4-每次使用话机开机时改动一次PIN码.
//============================================================================

//int_case  低   1    1    1       1        1    1     1   1    1     高位
//             键盘 拨号 出错   通话中断  摘机 挂机  振铃
//#define INT_KEY_PRESS       0x01
#define INT_DIAL_SUCCESS    	0x02
#define INT_DIAL_FAILURE	0x04
#define	INT_TALK_STOP		0x08
#define INT_PICKUP         	0x10
#define INT_HANGOFF		0x20
#define	INT_RING		0x40
#define	INT_RINGOFF		0x80

//话机的运行状态 ic.system_server
#define	SYS_ALARM					0x03
#define	SYS_RING					0x01
#define SYS_PARA					0x05
#define SYS_SBC						0x02
#define	SYS_SMSR					0xff
#define SYS_START					0x30
#define SYS_SMSS					0x31
#define SYS_TEL						0x32



//=============================================================================
//             定义 TC35 的命令列表
//=============================================================================
#define VOICE_DIAL		0  	//语音拨号
#define DTMF_DIAL       2	//通话中拨号
#define RESET_TC35		3	//复位TC35
#define TC35_INIT 		4	//TC35初始化命令
#define CALL_ID 		5	//读来电显示
#define SWITCHOFF_TC35 	7	//关机
#define LOCK_QUERY 		8	//检查是否启用SIM卡的PIN码保护
#define CHECK_PIN 		9	//检查当前是否要输入PIN码
#define PIN_IN_USE    		10	//启用SIM卡的PIN码,要先输入
#define PIN_PASSWORD 		11	//输入SIM卡的PIN码
#define CHANGE_PIN 			12	//修改SIM卡的PIN码 AT^SPWD="SC",1234,5678
#define SIM_ID          	13	//读出SIM卡的卡号,与SIM卡标明的卡号一样
#define REGISTER_CHECK 		14	//检查是否登陆成功
#define SIGNAL_CHECK 		15	//读取信号质量
#define HOOKOFF 			16	//挂机,停止通话
#define PICK_UP         	17 	//摘机
#define VOICE_HANDSET       20  //设为手柄方式
#define SELECT_VOLUME		21	//选择音量,0-4 5级
#define DATATIME_SET  		22	//设置TC35的内部时钟
#define DATATIME_READ 		23	//读出TC35的内部时钟
#define TC35_VERSION    	24	//读出TC35的软件版本
#define TURNOFF_PTONE		25	//关闭提示音
#define SMS_CNMI 			30	//SMS 接收方式
#define SMS_CMGS			31  //SMS 短信发送
#define SIM_CARD_CHECK      32  //查寻是否插入SIM卡
#define AT_COMMAND          33
#define SMS_CMGR			34   //读一个短信
#define PHONE_DL_CHECK      35  //查寻已拨电话
#define PHONE_READ          36  //读电话本
#define PHONE_WRITE         37  //写电话本
#define SMS_CMGD			38
#define MONITOR_ID			39    //读小区
#define PHONE_MC_CHECK      40  //已接来电
#define PHONE_RC_CHECK      41  //未接来电
#define REQUEST_MOD			42
#define TC35_IMEI           50
#define CMGS_MUB			51
#define	CMGS_SM				52
#define	SMSS_ID				53
#define PHONE_SET       	54
#define TC35_SBC	       	55


//===================================================
// 发送短消息内容方式
//====================================================
#define   	smss_tel    	0
#define 	smss_alarm		1
#define		smss_end		2
#define		smss_start		3
#define		smss_para		4
#define	    smss_sbc      	5
#define		smss_atart       6


//=============================================================================
//       AT命令的返回类型 AT_Command_Status
//=============================================================================
#define COMMAND_WAIT		0xff	//等待命令回应
#define COMMAND_OK			0		//命令发送正确.
#define COMMAND_CONNECT		1		//语音拨号接通电话
#define COMMAND_RING		2		//振铃输入
#define COMMAND_NO_CARRIER	3		//语音拨号没有接通
#define COMMAND_ERROR		4		//命令发送错误.
#define COMMAND_NO_DIAL		6		//没有拨号音
#define COMMAND_BUSY		7		//线路忙
#define COMMAND_UNKNOW		8		//不可识别的返回类型


uchar Read_Roll_Pin(void);
uchar Read_MONI_ID(void);
void   send_sms();
uchar Send_AT_Command( uchar type);
void  Sys_Init(void);
void  Initialize_Model(void);
uchar strsearch(uchar *ptr2);
uchar  PHONE_RD();
uchar   READ_TEL(uchar r );
void tel_diat();

//viod  TEL_FIND();

⌨️ 快捷键说明

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