1、 /工作指示灯sbit DAT = P13; /STH11数据sbit SCK = P14; /STH11时钟sbit RS = P15; /LCD命令/数据端sbit RW = P16; /LCD读/写端sbit LCDE = P17; /LCD使能端sbit send_key= P20; /使能发送短信按键uchar uart_buffMAX_TM; /通信程序中的缓冲uchar idata send_count,receive_count; /发送与接收 数组指针uchar data AT_Command_Type; /当前发送的命令类型uchar data AT_Command_Sta
2、tus; /命令发出以后的返回参数uchar idata para_tempMAX_T; /多用临时用uchar data read_tmp; /读电话本号参数uchar data num_tmp1; /读短信号码参数uchar idata TEL_temp20; /存对方号码uchar data system_server; /系统状态uchar data timer_20ms_cnt; /20ms计数变量 049uchar data timer_S_cnt; /秒计数变量 1个数1sbit txd_rxd_bit; /接收正确标志位bit at_send_bit; /发送标志位。发送完成标
3、志1 接收允许,在发送为0。bit chinit; /进行初始化 标志uchar chping; /准备标志位 与READY有关uchar error; /全局错误变量uchar ack; /全局应答变量uchar data_h; /数据高位uchar data_L; /数据地位uint temp=0; /温度显值uint Humi=0; /湿度显值uchar flag; /Busy标志uchar dis_buf5; /显示缓冲区uchar code dis1 = temp:; /第一行显示表头uchar code dis2 = Humi: /第二行显示表头uchar code dis = 0
4、123456789. /显示代码#define TEMP_ML 0x03 /000 0001 1 温度命令#define HUMI_ML 0x05 /000 0010 1 温度命令/= / 话机的运行状态 ic.system_server系统状态 #define SYS_ALARM 0x03 /处于报警时间设置状态#define SYS_SMSR 0xff /主叫摘机#define SYS_NUMSAVE 0x34 /号码保存#define SYS_FEE 0x35 /?/ 定义 TC35 的命令列表 #define RESET_TC35 3 /复位TC35#define TC35_INIT
5、4 /TC35初始化命令#define CHECK_PIN 9 /检查当前是否要输入PIN码#define SIM_ID 13 /读出SIM卡的卡号,与SIM卡标明的卡号一样#define AT_IPR 22 /设置TC35的内部时钟#define SMONC_ID 26 /?#define SMS_CMGS 31 /SMS 短信发送#define AT_COMMAND 33 /AT 命令#define SMS_CMGR 34 /读一个短信#define PHONE_READ 36 /读电话本#define PHONE_WRITE 37 /写电话本#define SMS_CMGD 38 /删除
6、一个短信#define REQUEST_MOD 42 /请求模式#define CMGS_MUB 51 /发报警短信内容#define SMSS_ID 53 /TC35i模块专用#define SMS_CMGF 57 /SMS 接收方式/=/ AT命令的返回类型 AT_Command_Status 命令发出以后的返回参数#define COMMAND_WAIT 0xff /等待命令回应#define COMMAND_OK 0 /命令发送正确.#define COMMAND_ERROR 4 /命令发送错误.#define COMMAND_UNKNOW 8 /不可识别的返回类型/ 基本的常用常量
7、#define TRUE 1 /正确#define FALSE 0 /错误/ 函数声明 uchar Send_AT_Command(uchar type); /AT指令发送程序 /uchar READ_TEL(uchar r); /进行SIM卡中的1到20条短信号码的读/* void read_sms(void); */ /读写短信程序void send_sms(void); /发送短信 void Initialize_Model(void); /初始化PIN检测void Sys_Init(void); /话机启动的初始化程序,包含定时器,串口等void start(void); /指示灯指示
8、void delay1ms(uchar x); /延时约1ms程序uchar strsearch(uchar *ptr2); /查字符串*ptr2在*ptr1中的位置void read(void); /读两个字节测量结果函数char write(uchar value); /写一个字节 返回应答信号void sht11_start(void); /启动void sht11_rest(void); /复位void comp_temp_Humi(void); /温湿度处理comp_temp_Humivoid measure(uchar ml); /测量温度或者是温度,返回校验值void comp_
9、temp(void); /计算温度comp_tempvoid comp_Humi(void); /计算湿度comp_Humivoid busy(void); /LCD忙标志判断函数void dat_wrt(uchar dat); /写数据子函数void cmd_wrt(uchar cmd); /写命令子函数void init_1602(void); /1602初始化函数void lcd_start(uchar start); /设定显示位置函数uchar dat_adj(uint dat1); /显示数据调整函数void disp(uint dat,uchar k); /显示子函数void print(uchar *str); /字符串显示函数/*主程序*/void main (void) system_server=SYS_SMSR; /系统状态主叫摘机 LED=1; /LED灭 /初始化成功 LED亮 初始化失败LED闪烁4次 RED=0; /工作指示灯 Sys_Init(); /话机启动的初始化程序,包含定时器,串口等 Initialize_Model(); /初始化PIN检测 delay1ms(2000); /
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1