|
供大家參考內(nèi)附有電路圖,棒棒
Altium Designer畫的原理圖和PCB圖如下:(51hei附件中可下載工程文件)
51hei.png (53.85 KB, 下載次數(shù): 31)
下載附件
2020-3-25 18:02 上傳
51hei.png (57 KB, 下載次數(shù): 33)
下載附件
2020-3-25 18:02 上傳
單片機(jī)源程序如下:
- /************************************************************
- 程序說明:
- 1.將自己的51單片機(jī)的串口1連接到GSM 232上
- 2.找到程序中前面的#define處,根據(jù)說明修改好自己的單片機(jī)配置,編譯程序
- 2.下載程序
- 3.等待發(fā)送成功
- *************************************************************/
- #include <REG51.H>
- #define uchar unsigned char
- #define uint unsigned int
- #define FOSC_110592M
- //#define FOSC_12M
- //無論接收到信號還是發(fā)送完信號,都會進(jìn)中斷服務(wù)程序的
- /*初始化程序(必須使用,否則無法收發(fā)),次程序?qū)褂枚〞r器1*/
- void SerialInti()//初始化程序(必須使用,否則無法收發(fā))
- {
- TMOD=0x20;//定時器1操作模式2:8位自動重載定時器
- #ifdef FOSC_12M //在這里根據(jù)晶振大小設(shè)置不同的數(shù)值初始化串口
- TH1=0xf3;//裝入初值,波特率2400
- TL1=0xf3;
- #else
- TH1=0xfd;//裝入初值,波特率9600
- TL1=0xfd;
- #endif //end of SOC_12M
-
- TR1=1;//打開定時器
- SM0=0;//設(shè)置串行通訊工作模式,(10為一部發(fā)送,波特率可變,由定時器1的溢出率控制)
- SM1=1;//(同上)在此模式下,定時器溢出一次就發(fā)送一個位的數(shù)據(jù)
- REN=1;//串行接收允許位(要先設(shè)置sm0sm1再開串行允許)
- EA=1;//開總中斷
- ES=1;//開串行口中斷
- }
- /*串行通訊中斷,收發(fā)完成將進(jìn)入該中斷*/
- void Serial_interrupt() interrupt 4
- {
- // a=SBUF;
- P2=SBUF;
- RI=0;//接收中斷信號清零,表示將繼續(xù)接收
- // flag=1;//進(jìn)入中斷的標(biāo)志符號
- }
- void Uart1Send(uchar c)
- {
- SBUF=c;
- while(!TI);//等待發(fā)送完成信號(TI=1)出現(xiàn)
- TI=0;
- }
- //串行口連續(xù)發(fā)送char型數(shù)組,遇到終止號/0將停止
- void Uart1Sends(uchar *str)
- {
- while(*str!='\0')
- {
- SBUF=*str;
- while(!TI);//等待發(fā)送完成信號(TI=1)出現(xiàn)
- TI=0;
- str++;
- }
- }
- //延時函數(shù)大概是1s鐘,不過延時大的話不準(zhǔn)...
- void DelaySec(int sec)
- {
- uint i , j= 0;
- for(i=0; i<sec; i++)
- {
- for(j=0; j<65535; j++)
- {
- }
- }
- }
- void main()
- {
- uchar i = 0;
- SerialInti();
- //程序執(zhí)行到這里,模塊已經(jīng)注冊到了網(wǎng)絡(luò),可以將讓模塊開機(jī),等待模塊注冊到網(wǎng)絡(luò),然后開單片機(jī)電源。
- Uart1Sends("AT+CMGF=1\r\n");
- DelaySec(3);//延時3秒 //延時不準(zhǔn),此處加了這么長的延時 就是單純?yōu)榱?能讓模塊執(zhí)行此條指令,實(shí)際中最好加判斷,判斷模塊是否執(zhí)行成功
- Uart1Sends("AT+CSCS=\"UCS2\"\r\n");
- DelaySec(3);//延時3秒
- Uart1Sends("AT+CSCA?\r\n");
- DelaySec(3);//延時3秒
- Uart1Sends("AT+CSMP=17,167,0,25\r\n");
- DelaySec(3);//延時3秒
- //下面的短信號,短信內(nèi)容都為UNICON編碼,可以用UNICON編碼工具來獲取
- Uart1Sends("AT+CMGS=\"00310033003800310038003200370030003000360039\"");//此處修改為對方的電話號 注意此條指令后不要加回車換行
- DelaySec(5);//延時3秒
- Uart1Sends("4F60597D00680065006C006C006F");
- Uart1Send(0x1a);
- DelaySec(15);//延時20秒
-
- }
復(fù)制代碼
所有資料51hei提供下載:
防幼兒誤鎖車內(nèi)裝置設(shè)計(jì)(含電路圖原理圖,程序).7z
(1.49 MB, 下載次數(shù): 39)
2020-3-25 18:05 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|
評分
-
查看全部評分
|