ମୁକ୍ତ ଉତ୍ସ T5L- ଆଧାରିତ SMTP ମେଲର୍ |

ଇମେଲ ପଠାଇବା କାର୍ଯ୍ୟ ହାସଲ କରିବା ପାଇଁ ୱାଇଫାଇ ମଡ୍ୟୁଲ ମାଧ୍ୟମରେ ଇଞ୍ଜିନିୟର୍ମାନେ T5L ସ୍ମାର୍ଟ ସ୍କ୍ରିନ ବ୍ୟବହାର କରନ୍ତି, ୱାଇଫାଇ ମଡ୍ୟୁଲ ମାଧ୍ୟମରେ, T5L- ଆଧାରିତ smtp ମେଲ ପ୍ରେରକ, ଇଞ୍ଜିନିୟରମାନେ T5L ସ୍ମାର୍ଟ ସ୍କ୍ରିନ ବ୍ୟବହାର କରନ୍ତି | ଆଡମିନିଷ୍ଟ୍ରେଟର୍ଙ୍କୁ, ଗ୍ରହୀତାର ଇମେଲ୍ ଠିକଣା, ଇମେଲ୍ ଟାଇଟଲ୍, ଇମେଲ୍ ବିଷୟବସ୍ତୁ ଏବଂ ଅନ୍ୟାନ୍ୟ ସୂଚନା ପ୍ରବେଶ କରିବାକୁ ସ୍କ୍ରିନର ଅପରେସନ୍ ସ୍କ୍ରିନ୍ରେ ଇନପୁଟ୍ ହୋଇପାରେ |ସୂଚନାଯୋଗ୍ୟ ଯେ ଇମେଲ ବିଷୟବସ୍ତୁ ସାଧା ପାଠ୍ୟ, ବିନ୍ୟାସ ନିୟନ୍ତ୍ରଣ, ପାଠ୍ୟ ରଙ୍ଗ ସେଟିଂ ଏବଂ ଅନ୍ୟାନ୍ୟ ସମ୍ପାଦନା ପଦ୍ଧତିକୁ ମଧ୍ୟ ସମର୍ଥନ କରେ |

1. ପ୍ରୋଗ୍ରାମ୍ ସ୍ଥାପତ୍ୟ

ଇମେଲ ପଠାଇବା କାର୍ଯ୍ୟକୁ ହାସଲ କରିବା ପାଇଁ T5L ସ୍ମାର୍ଟ ସ୍କ୍ରିନ କ୍ରମିକ ପୋର୍ଟ 5 ମାଧ୍ୟମରେ smtp ସର୍ଭର ସହିତ ଯୋଗାଯୋଗ କରିବାକୁ ୱାଇଫାଇ ମଡ୍ୟୁଲକୁ ନିୟନ୍ତ୍ରଣ କରିଥାଏ |

ava (1)

2. ଇଣ୍ଟରଫେସ୍ ବିକାଶ

DGUS ସଫ୍ଟୱେର୍ ସ୍ତରଗୁଡିକର ସୁପରପୋଜିସନ୍ ମାଧ୍ୟମରେ ପ୍ରଦର୍ଶନ ଏବଂ ସ୍ପର୍ଶ କାର୍ଯ୍ୟଗୁଡ଼ିକର ବିକାଶକୁ ସମାପ୍ତ କରେ |ଉପଭୋକ୍ତାମାନେ କେବଳ ପ୍ରସ୍ତୁତ ଚିତ୍ର ସାମଗ୍ରୀକୁ DGUS ସଫ୍ଟୱେୟାରରେ ଲୋଡ୍ କରିବା ଏବଂ ପ୍ରଦର୍ଶନ ଏବଂ ସ୍ପର୍ଶ କାର୍ଯ୍ୟଗୁଡ଼ିକ ସେଟ୍ ଅପ୍ କରିବା ଆବଶ୍ୟକ କରନ୍ତି |

ava (2)

1. C51Sଅଫୱେର୍Design

T5L ସ୍ମାର୍ଟ ସ୍କ୍ରିନ୍ କ୍ରମିକ ପୋର୍ଟ 5 ୱାଇଫାଇ ମଡ୍ୟୁଲ୍ ସହିତ smtp ସର୍ଭର ସହିତ ପାରସ୍ପରିକ କାର୍ଯ୍ୟ ସମାପ୍ତ କରିବାକୁ ଯୋଗାଯୋଗ କରେ |ମୁଖ୍ୟ ସଂକେତର ଏକ ଅଂଶ ନିମ୍ନଲିଖିତ ଅଟେ:

ଶୂନ୍ୟ uart5_init (u32 baud)

{

SCON3T = 0x80;

SCON3R = 0x80;

baud = (u32) ((ଡବଲ୍) (FOSC / 8.0) / baud);

BODE3_DIV_H = (ବାଉଡ୍ >> 8) & 0xff;

BODE3_DIV_L = ବାଉଡ୍ & 0xff;

ES3R = 0;

ES3T = 0;

}

ଶୂନ୍ୟ u5_send_byte (u8 ବାଇଟ୍)

{

SBUF3_TX = ବାଇଟ୍;

ଯେତେବେଳେ (! (SCON3T & 0x01));

SCON3T & = 0xfe;

}

ଶୂନ୍ୟ u5_send_bytes (u8 * ବାଇଟ୍, u16 ଲେନ୍)

{

u16 i;

ପାଇଁ (i = 0; i

{

SBUF3_TX = ବାଇଟ୍;

ଯେତେବେଳେ (! (SCON3T & 0x01));

SCON3T & = 0xfe;

}

}

ଶୂନ୍ୟ get_input (u8 * val, u8 len)

{

u8 i;

ପାଇଁ (i = 0; i

{

ଯଦି (val == 0xff)

{

val = 0x00;

val [i + 1] = 0x00;

ଫେରସ୍ତ;

}

}

}

u8 esp8266_send_cmd (u8 * cmd, u8 * ack, u16 ଅପେକ୍ଷା ସମୟ, u8 କ୍ଲିଅର୍ ବଫର୍)

{

u8 res = 0;

rx_sta = 0;

if (ack && waittime && cmd)

{

ଯେତେବେଳେ (- ଅପେକ୍ଷା ସମୟ)

{

sys_delay_ms (10);

ଯଦି (rx_sta & 0X8000)

{

ଯଦି (esp8266_check_respond (ack))

ବିରତି;

}

}

ଯଦି (ଅପେକ୍ଷା ସମୟ == 0) res = 1;

if (clearBuffer == 1) rx_sta = 0;

}

ଫେରସ୍ତ res;

}

typedef struct {

u8 cmd;

u8 ଇମେଲ୍ [20];

u8 ନାମ [20];

u8 ଆଖ୍ୟା [20];

u8 msg [60];

} EMAIL_INFO;

EMAIL_INFO email_info;

u8 ପ୍ରତିକ୍ରିୟା [80];

u8 wifi_name [30];

u8 wifi_passwd [30];

u8 ସର୍ଭର [30];

u8 ପୋର୍ଟ [30];

u8 ଉପଯୋଗକର୍ତ୍ତା ନାମ [30];

u8 auth_code [30];

u8 rx_sta;

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

ଯଦି (btn_val)

{

ଯଦି (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));

ଯଦି (rx_sta)

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

} ଅନ୍ୟଥା ଯଦି (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);

} ଅନ୍ୟଥା ଯଦି (btn_val == 3)

{

sys_read_vp (0x3200, ସର୍ଭର, 15);

sys_read_vp (0x3220, ପୋର୍ଟ, 15);

sys_read_vp (0x3240, ଉପଯୋଗକର୍ତ୍ତା ନାମ, 15);

sys_read_vp (0x3260, auth_code, 15);

get_input (ସର୍ଭର, 30);

get_input (ପୋର୍ଟ, 30);

get_input (ଉପଯୋଗକର୍ତ୍ତା ନାମ, 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);

ଯଦି (btn_val2! = ପୁରୁଣା_ଭାଲ୍)

{

ଯଦି (btn_val2 == 1)

sys_write_vp (0x3060, "ଏହା T5L ରୁ ଏକ ଇମେଲ୍! \ 0 \ 0", 30);

ଅନ୍ୟଥା ଯଦି (btn_val2 == 2)

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

ଅନ୍ୟଥା ଯଦି (btn_val2 == 3)

sys_write_vp (0x3060, "ବୋଲ୍ଡ |ଲାଲ୍ |\ 0 \ 0 ", 30);

old_val = btn_val2;

}


ପୋଷ୍ଟ ସମୟ: ଅକ୍ଟୋବର -20-2023 |