嵌入式Email發(fā)送模塊
一.簡(jiǎn)介:
本文引用地址:http://m.butianyuan.cn/article/201609/305286.htm嵌入式Email發(fā)送模塊是以高性能控制器和Modem芯片為硬件平臺(tái),配以專門為8位單片機(jī)平臺(tái)編寫的TCP/IP協(xié)議棧為固件而構(gòu)成的功能強(qiáng)大的網(wǎng)絡(luò)通信模塊。該模塊提供了從物理層直到應(yīng)用層所有的軟、硬件,有非常簡(jiǎn)潔的用戶接口,具有成本低廉,體積小,二次開發(fā)方便、功能強(qiáng)大等優(yōu)點(diǎn),可以廣泛應(yīng)用于工業(yè)、家電以及各種手持設(shè)備上。
特點(diǎn):
內(nèi)置適用于8bit處理器上的TCP/IP協(xié)議棧固件;
優(yōu)異的性能/價(jià)格比;
提供非常簡(jiǎn)單的用戶接口,方便二次開發(fā);
很大的靈活性,可以根據(jù)用戶的需求開發(fā);
自動(dòng)撥號(hào)、登錄;
自動(dòng)建立PPP協(xié)議網(wǎng)絡(luò)連接;
自動(dòng)獲取IP地址;
自動(dòng)發(fā)送Email
性能參數(shù):
Modem連接速度:1200bps;
用戶接口:9600bps串行接口;
(速率可根據(jù)用戶需求進(jìn)行調(diào)整)
功耗:110mA(工作),20mA(待機(jī));
能發(fā)送的email最大長(zhǎng)度:5k字節(jié);
體積:62mm(長(zhǎng))×47mm(寬)×18mm(高);
應(yīng)用范圍:
工業(yè)設(shè)備;
智能儀器、儀表;
智能網(wǎng)絡(luò)家電;
家庭健康監(jiān)護(hù);
手持設(shè)備;
遠(yuǎn)程控制;
二:引腳說明
Email發(fā)送模塊對(duì)用戶提供了非常簡(jiǎn)單的外部接口,一共只有5根外部引腳,分別是:
VCC電源;
RESET復(fù)位;
RXD串行數(shù)據(jù)輸入;
TXD串行數(shù)據(jù)輸出;
GND電源地;
與用戶MCU的典型連接如下圖所示:
電源
Email發(fā)送模塊所需要的電源為+5V±5%的單電源供電,Modem激活時(shí)電流小于110mA。
復(fù)位
保持Reset引腳10uS以上高電平會(huì)導(dǎo)致模塊內(nèi)部處理器以及Modem復(fù)位。復(fù)位后模塊處于等待命令的狀態(tài),而Modem處于掛機(jī)狀態(tài)。通??梢杂每刂破鞯腉PIO來復(fù)位器件,或者采用以下的上電復(fù)位電路:
串口
串口是Email發(fā)送模塊與外部控制器交換數(shù)據(jù)和命令的唯一界面。用戶控制器的數(shù)據(jù)和命令通過串口RXD引腳輸入;而模塊的各種狀態(tài)則通過TXD反饋給用戶。
模塊串口和8051MCU串口模式1相同,波特率為9600bps,全雙工異步模式。數(shù)據(jù)格式為一位起始位,8位數(shù)據(jù)位和一位停止位,低位在先,無奇偶校驗(yàn)位。輸入電平兼容TTL和CMOS電平。
三:Email模塊的控制
外部的控制器通過Email模塊上的串行口對(duì)模塊進(jìn)行進(jìn)行控制。在復(fù)位之后,器件處于等待狀態(tài),直到接收到有效的串口的數(shù)據(jù)為止。
模塊內(nèi)部定義'/'符號(hào)號(hào)作為分隔符。各項(xiàng)數(shù)據(jù)的輸入都以'/'號(hào)為起始。按照撥入ISP并且發(fā)送一封Email所需要的信息,用戶輸入的數(shù)據(jù)格式是:
/ISP電話號(hào)碼/用戶名/密碼/發(fā)送者Email地址/接受者Email地址/SMTP服務(wù)器IP地址/Email內(nèi)容/++++
在最后面的4個(gè)'+'號(hào)告訴模塊,所有信息已經(jīng)輸入完畢,可以撥號(hào)并且發(fā)送email了。
ISP電話號(hào)碼
為用戶提供撥號(hào)接入的ISP運(yùn)營(yíng)商的電話號(hào)碼,如2631,96890等。
用戶名
撥號(hào)接入的用戶名,如撥2631時(shí)用戶名就是263,撥96890時(shí)用戶名就是96890。
密碼
撥號(hào)接入的用戶密碼,如撥2631時(shí)密碼就是263,撥96890時(shí)密碼就是96890。
發(fā)送者的Email地址
發(fā)送者的Email地址,如 liu_ding@sina.com。
接收者的Email地址
接收者的Email地址,如 hugehard@kimo.com。
SMTP服務(wù)器IP地址
一臺(tái)能夠提供SMTP郵件轉(zhuǎn)發(fā)服務(wù)的服務(wù)器的IP地址。該服務(wù)器必須有固定的IP,并且在轉(zhuǎn)發(fā)郵件時(shí)不要求身份驗(yàn)證。有的服務(wù)器只對(duì)發(fā)送方Email或者接受方Email為該服務(wù)器的注冊(cè)用戶提供轉(zhuǎn)發(fā)服務(wù),比如IP地址為210.59.144.203的 smtp.kimo.com 只為發(fā)送者或接受者為 XXX@kimo.com 的用戶提供轉(zhuǎn)發(fā)服務(wù)。在采用這一類服務(wù)器時(shí)只要使發(fā)送者或接受者的Email符合服務(wù)器要求就可以了。
如果是為大量用戶提供特定服務(wù),建議設(shè)立專用的SMTP服務(wù)器,這樣做將大大提高郵件發(fā)送的成功率。
Email內(nèi)容
發(fā)送方想發(fā)送的內(nèi)容。內(nèi)容可以為字符或數(shù)據(jù)。由于受片內(nèi)存儲(chǔ)器限制,目前能發(fā)送的最大Email為5k字節(jié)。
++++
4個(gè)加號(hào)告訴模塊,所有信息已經(jīng)傳輸完畢,可以開始發(fā)送了。在收到4個(gè)連續(xù)的加號(hào)之后,如果Email Module上接有電話線,那Module將開始撥號(hào)并建立連接和發(fā)送Email。
實(shí)例:
假設(shè)用戶選擇96890為ISP,那么電話號(hào)碼、用戶名和密碼都為96890。
發(fā)送者Email為 liu_ding@sina.com,
接受者Email為 hugehard@kimo.com
采用的SMTP服務(wù)器為 smtp.kimo.com,其IP為210.59.144.203 (D2.3B.90.CB)
Email內(nèi)容為
Hello! This is a email send by an Embedded email module!
根據(jù)以上信息和前面定義的數(shù)據(jù)格式,控制器只要把下面的字符串通過串口送入Module:
/96890/96890/96890/liu_ding@sina.com/hugehard@kimo.com/xD2x3B