
各位大佬们,作为一个单片机小白,我想做一个以51单片机为核心,用DS18B20温度传感器测温度,LCD1602显示,最终通过SIM900A或SIM800C的短信收发功能将温度传输到手机上,手机也可以实时像SIM发短信来查询相关温度的一个小装置。现在我已经能够将温度通过SIM模块发到手机上了,但是手机向SIM发短信查询温度这部分的程序不太会写了,请问下大佬们有程序可以借鉴下的吗?(不要发短信的程序,要收短信部分的,最好能讲一下他的原理,资料上面的感觉有点杂乱,谢谢各位大佬了,如果可以最好能够私聊)
需要串口中断接收才行,哪里不懂你可以在问。。。
void Uart2InterruptReceive(void) interrupt 8
{
unsigned char tmp2;
//char i;
//num2=0;
IE2 &= (~ES2);//关闭串口2中断//ES2 = 0;
if(S2CON & S2RI) //if(S2RI == 1)
{
S2CON &= (~S2RI);//S2RI = 0;
tmp2 = S2BUF;
//Uart1Send(tmp2);
rev_buf2[num2++]=tmp2;
if(num2>=80)
{
num2=0;
//Uart1Sends("GSM B "); 以上全试过可以发送7/23,20:03
}
}
else
{
S2CON &= (~S2TI);//S2TI = 0;
}
IE2 |= ES2;//ES2 = 1
}
一、 设计目的
1、 学习基本理论在实践综合运用的经验,掌握工程系统设计的基本方法、设计步骤,培养综合设计与调试能力。
2、 学会以STC89C52为核心芯片的温度报警器的设计方法和性能指标测试方法。
3、 培养实践技能,提高分析和解决实际问题的能力。
二、 设计任务及要求
1、 设计并制作一个可用显示模块显示实时温度、报警温度,当环境温度超过或低于某个值时,实施报警。主要技术指标要求:
设计温度分辨率为01摄氏度
2、 设计电路结构,画出编程流程框图,选择电路元件,计算确定元件参数,画出实用原理电路图。
二 MCS-51单片机
单片机SCM(Single Chip Microcomputer),即Microcontroller,是把微型计算机主要部分都集成在一个芯片上的单芯片微型计算机。主要包括了微处理器(CPU)、存储器(ROM, RAM)、输入/输出口(I/O口)和定时器/计数器、中断系统等功能部件。单片机自70年代出现以来,已经有了很大的发展,被广泛应用于机械、测量控制、工业自动化、智能接口和智能仪表等许多领域。
1 MCS-51单片机的引脚图:
2 MCS-51单片机的内部结构图:
(1)电源引脚Vcc和Vss:
Vcc(40脚):电源端,+5伏
Vss(20脚):接地端
(2)时钟电路引脚XTAL1和XTAL2
XTAL1(18脚)和XTAL2(19脚):接外部晶体和微调晶体。在89C51
中,它们分别是震荡电路反向放大器的输入端和输出端,震荡电路的频率就是晶体固有频率。
(3) 控制引脚信号RST,ALE,PSEN和EA
RST/VpD(9脚):RST是复位信号输入端,高电平有效。此引脚的第二功能是VpD,即备用电源的输入端。
ALE/PROG(ADDRESS LATCHENABLE/PROGRAMMING(30脚):地址锁存允许信号端。上电后,此端不断向外输出正脉冲信号,此频率为振荡频率fosc的1/6。CPU访问片外存储器时,ALE输出信号作为所存低八位地址的控制信号。
PSEN (PROGRAM STORE ENABLE,29脚):程序存储允许输出信号端。在访问片外程序存储器时,此端定时输出负脉冲作为读片外存储器的选通信号。此引脚接EPROM的OE端。PSEN端有效时,即允许读出EPROM/ROM中的指令代码。
EA/Vpp(ENABLE ADDRESS/VOLTAGE PULSE OF RAMMING,31脚):外部程序存储器地址输入端/固化编程电压输入端。当输入信号EA引脚接高电平时,CPU只访问片内EPROM/ROM并执行内部程序存储器中的指令,但是当PC超过0FFFH时,将自动转去执行片外程序存储器中的内容。当输入信号EA引脚接低电平时,CPU只访问外部EPROM/ROM并执行外部程序存储器中的指令,而不管是否具有片内程序存储器。此引脚的第二功能Vpp是对片内EPROM固化编程时,作为施加较高编程电压的输入端。
(4) 输入/输出端口P0,P1,P2和P3
P0口(P00-P07,39-32脚):一个8为准双向I/O端口。当P0口作为输入口使用时,应首先向锁存器(地址80H)写入全1,此时P0口的全部引脚悬空,可作为高阻抗输入。在CPU访问片外存储器时,P0口分时提供低8位地址和8位数据的复位总线。 P0口的地址/数据分时使用分两种情况:一种是用作输出地址/数据总线,另一种是由P0口输入数据。而且P0口作I/O输出时,输出级属开漏电路,必须接上拉电阻,才有高电平输出。
P1口、P2口(P10-P17,1-8脚;P20-p27,21-28脚):都是上拉电阻的8位准双向I/O端口。每一位可以驱动4个LS型TTL负载。在访问片外EPROM/ROM时,P2口可以输出高8位地址。
P3口(P30-P37,10-17脚):P3口是一个带内部上拉电阻的8位准双向I/O端口。P3每一位都能驱动4个LS型TTL负载。P3口的引脚还具有第二功能。
3单片机的晶振电路:
4单片机的复位电路:
三、显示器件
1 数码管的分类
数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);按能显示多少个“8”可分为1位、2位、4位等等数码管;按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。当某一字段的阴极为高电平时,相应字段就不亮。共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管。共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。当某一字段的阳极为低电平时,相应字段就不亮。
2 等效电路:
3 字形代码与十六进制数的对应关系
试着修改成
if (Smoke==0)
{/// }
else if (Fire==0)
{ //}
else if
写成这样的格式。
以上就是关于gsm短信发送模块,求用过的大佬解答,请问sim900a和sim800c控制程序一样么全部的内容,包括:gsm短信发送模块,求用过的大佬解答,请问sim900a和sim800c控制程序一样么、怎么用51单片机读取sim900a接收的短信、求SIM900A模块与stc89c52的温度短信报警程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)