Mailer SMTP foinse oscailte atá bunaithe ar T5L

An cheist seo chun tú a bhrú ar chás foinse oscailte an-phraiticiúil Fóram Forbróirí Diwen a bhuaigh duaiseanna - seoltóir ríomhphoist smtp bunaithe ar T5L , úsáideann innealtóirí an scáileán cliste T5L , tríd an modúl wifi chun rochtain a fháil ar an bhfreastalaí smtp , chun an fheidhm a bhaineann le ríomhphoist a sheoladh a bhaint amach chuig an riarthóir , is féidir oibriú an scáileáin chun seoladh ríomhphoist an fhaighteora a chur isteach, teideal ríomhphoist, ábhar ríomhphoist agus faisnéis eile a ionchur ar an scáileán.Is fiú a thabhairt faoi deara go dtacaíonn an t-ábhar ríomhphoist freisin le gnáth-théacs, rialuithe cumraíochta, socrú dath an téacs agus modhanna eagarthóireachta eile.

Ailtireacht 1.Programme

Rialaíonn scáileán cliste T5L an modúl wifi chun idirghníomhú le freastalaí smtp trí phort srathach 5 chun feidhm seolta ríomhphoist a bhaint amach.

ava (1)

Forbairt 2.Interface

Críochnaíonn bogearraí DGUS forbairt feidhmeanna taispeána agus tadhaill trí fhorshuíomh sraitheanna.Ní gá d’úsáideoirí ach na hábhair pictiúir ullmhaithe a luchtú isteach i mbogearraí DGUS agus na feidhmeanna taispeána agus tadhaill a shocrú.

ava (2)

1. C51SearraíDcomhartha

Déanann calafort sraitheach scáileán cliste T5L 5 cumarsáid le modúl wifi chun an idirghníomhú le freastalaí smtp a chomhlánú.Seo a leanas cuid den phríomhchód:

ar neamhní uart5_init(u32 baud)

{

SCON3T = 0x80;

SCON3R = 0x80;

baud = (u32)((dúbailte)(FOSC/8.0)/baud);

BODE3_DIV_H = (baud>>8)&0xff;

BODE3_DIV_L = baud&0xff;

ES3R = 0;

ES3T = 0;

}

ar neamhní u5_send_byte(u8 byte)

{

SBUF3_TX = beart;

agus(!(SCON3T&0x01));

SCON3T &= 0xfe;

}

ar neamhní u5_send_bytes(u8 *bearta, u16 len)

{

u16 i;

le haghaidh(i=0;i

{

SBUF3_TX = bearta;

agus(!(SCON3T&0x01));

SCON3T &= 0xfe;

}

}

get_input ar neamhní(u8 * val, u8 len)

{

u8 i;

le haghaidh(i=0;i

{

má(val==0xff)

{

val = 0x00;

val[i+1] = 0x00;

filleadh ;

}

}

}

u8 esp8266_send_cmd(u8 * cmd, u8 *ack, u16 am feithimh, u8 soiléirBuffer)

{

u8 ath=0;

rx_sta=0;

má(ack&&waittime&&cmd)

{

fad (-- am feithimh)

{

sys_delay_ms(10);

má(rx_sta&0X8000)

{

má (esp8266_check_respond(ack))

briseadh ;

}

}

má tá(waittime==0)res=1;

má tá(clearBuffer==1)rx_sta=0;

}

aischuir;

}

struchtúr typedef{

u8 cmd;

ríomhphost u8[20];

u8 ainm[20];

u8 teideal[20];

u8 msg[60];

}EMAIL_INFO;

EMAIL_INFO ríomhphost_info;

u8 freagairt[80];

u8 wifi_name[30];

u8 wifi_passwd[30];

freastalaí u8[30];

calafort u8[30];

u8 ainm úsáideora[30];

u8 cód_údar[30];

u8 rx_sta;

sys_read_vp(0x1000,(u8*)&btn_val,1);

má(btn_val)

{

má(btn_val==1)

{

sys_read_vp(0x3000, email_info.name, 10);

sys_read_vp(0x3020, email_info.email,10);

sys_read_vp(0x3040, email_info.title,10);

sys_read_vp(0x3060, email_info.msg, 30);

get_input(email_info.name,20);

get_input(email_info.email,20);

get_input(email_info.title,20);

get_input(email_info.msg,60);

send_packet((u8*)&email_info, sizeof(EMAIL_INFO));

má(rx_sta)

send_mail(email_info.email, email_info.title, email_info.msg);

}eile má(btn_val==2)

{

sys_read_vp(0x3100, wifi_name,15);

sys_read_vp(0x3120, wifi_passwd,15);

get_input(wifi_name,30);

get_input(wifi_passwd,30);

}eile má(btn_val==3)

{

sys_read_vp(0x3200, freastalaí,15);

sys_read_vp(0x3220,port,15);

sys_read_vp(0x3240,ainm úsáideora,15);

sys_read_vp(0x3260,auth_code,15);

get_input(freastalaí,30);

faigh_input(port, 30);

get_input(ainm úsáideora, 30);

get_input(auth_code,30);

}

 

btn_val = 0;

sys_write_vp(0x1000,(u8*)&btn_val,1);

}

sys_read_vp(0x2050,(u8*)&btn_val2,1);

má(btn_val2!=old_val)

{

má(btn_val2==1)

sys_write_vp(0x3060,"Seo ríomhphost ó T5L!\0\0",30);

eile má(btn_val2==2)

sys_write_vp(0x3060," \0\0",30);

eile má(btn_val2==3)

sys_write_vp(0x3060,"TromDearg\0\0",30);

sean_val = btn_val2;

}


Am postála: Oct-31-2023