找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 6002|回復(fù): 12
收起左側(cè)

1602顯示RS485通信主從溫度發(fā)送含仿真和實(shí)物圖+主機(jī)與叢機(jī)源程序

  [復(fù)制鏈接]
ID:358930 發(fā)表于 2018-11-9 01:46 | 顯示全部樓層 |閱讀模式
RS485通信小改裝,在AB兩線間加一個(gè)小LED燈,可實(shí)時(shí)看到是否在通信,只要一通信就閃爍,接反會(huì)常亮,換個(gè)方向讓LED平時(shí)不亮,通信時(shí)閃爍就行?偼娌缓猛ㄐ诺目蓞⒖。

制作出來的實(shí)物圖如下:
20181109_013230.jpg

電路原理圖如下:
15416988440950.40689689440908094.jpg

單片機(jī)程序源碼(主機(jī)+叢機(jī)都有):
#include<main.h>
#include<1602.h>
#include<ds1302.h>
uchar time[]={40,27,1,9,11,5,18};        //改時(shí)間用,初始化時(shí)間2012年7月25日 23:59: 40
uchar code tab1[]="20  -  -   ";
uchar code tab2[]="T:        :  :";
uchar flag;
uchar wendu;




void delay(uint x)
{
        uint m,n;
        for(m=x;m>0;m--)
        for(n=110;n>0;n--);
}
/****
*******        串口初始化函數(shù)
*****/
void uart_init()
{
        TMOD=0x20;                //9600bps
        SCON=0x50;
        TH1=0xFD;
        TL1=0xFD;
        TR1=1;


        ES=1;
        EA=1;


        UART_EN=0;           //串口一直處于接收狀態(tài)
}




void main()
{
        
        lcd_init();        
        uart_init();
        lcd_write_str(0x80,tab1);
        lcd_write_str(0xc0,tab2);
        //DS1302_set_time(&time);        //初始化時(shí)間,正常后不要,讀1302自己保存的時(shí)間
        //改好時(shí)間后不要這句,再下一次程序以后從1302讀時(shí)間
        while(1)
        {        
                DS1302_read_time(&time);         
                lcd_write_time(0x82,time[6]);  //年
                switch(time[5])                               //星期
                {
                        case 1:        lcd_write_str(0x8c,"MON");break;
                        case 2:        lcd_write_str(0x8c,"TUE");break;
                        case 3:        lcd_write_str(0x8c,"WED");break;
                        case 4:        lcd_write_str(0x8c,"THU");break;
                        case 5:        lcd_write_str(0x8c,"FRI");break;
                        case 6:        lcd_write_str(0x8c,"SAT");break;
                        case 7:        lcd_write_str(0x8c,"SUN");break;
                }
                lcd_write_time(0x85,time[4]);  //月
                lcd_write_time(0x88,time[3]);  //日
                lcd_write_time(0xc8,time[2]);  //時(shí)
                lcd_write_time(0xcb,time[1]);  //分
                lcd_write_time(0xce,time[0]);        //秒
                if(flag==1)                                                   //顯示負(fù)溫度
                {
                        lcd_write_com(0xc2);
                        lcd_write_date('-');
                        lcd_wendu(0xc6,wendu);
                }
                else                                                         //顯示正溫度
                {
                        lcd_write_com(0xc2);
                  lcd_write_date('+');
                        lcd_wendu(0xc3,wendu);
                        lcd_write_com(0xc6);
                        lcd_write_date('C');
                }        
        }
}
/****
*******        串口中斷服務(wù)程序函數(shù)
*****/
void ser() interrupt 4
{
        static uchar string[2],i;
        if(RI)
        {
                RI=0;
                string[i++]=SBUF;
                if(i>1)
                        i=0;
                if(string[0]=='-')
                {         
                        flag=1;                                  //負(fù)溫度
                }
                else
                {         
                         flag=0;
                }
                wendu=string[1];
        }        
}

20181109_013632.jpg
20181109_013131.jpg
0.png

1602顯并RS485溫度(仿真)OK.zip

163.9 KB, 下載次數(shù): 214, 下載積分: 黑幣 -5

評(píng)分

參與人數(shù) 2黑幣 +65 收起 理由
楊雪飛 + 15 感謝分享有價(jià)值的東西
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

ID:423388 發(fā)表于 2018-11-9 08:44 | 顯示全部樓層
感謝分享有價(jià)值的東西
回復(fù)

使用道具 舉報(bào)

ID:92810 發(fā)表于 2018-11-12 15:19 | 顯示全部樓層
學(xué)習(xí)學(xué)習(xí)了,感謝分享了。。。。
回復(fù)

使用道具 舉報(bào)

ID:63317 發(fā)表于 2019-1-29 08:39 | 顯示全部樓層

感謝分享有價(jià)值的東西
回復(fù)

使用道具 舉報(bào)

ID:273662 發(fā)表于 2019-3-28 20:41 | 顯示全部樓層
大佬,為啥我按你的原理圖和代碼做出來的實(shí)物L(fēng)CD1602有背光沒數(shù)據(jù)呀,調(diào)過對(duì)比度和延時(shí)了,還是顯示不出來,硬件應(yīng)該是沒問題的
回復(fù)

使用道具 舉報(bào)

ID:273662 發(fā)表于 2019-3-28 20:43 | 顯示全部樓層
大佬,為啥我按你的原理圖和代碼做出來的實(shí)物L(fēng)CD屏有背光沒數(shù)據(jù)呀,對(duì)比度和延時(shí)都調(diào)過了還是沒用,硬件應(yīng)該沒啥問題,求解!
回復(fù)

使用道具 舉報(bào)

ID:232052 發(fā)表于 2019-5-5 12:44 | 顯示全部樓層
吳明山 發(fā)表于 2019-3-28 20:43
大佬,為啥我按你的原理圖和代碼做出來的實(shí)物L(fēng)CD屏有背光沒數(shù)據(jù)呀,對(duì)比度和延時(shí)都調(diào)過了還是沒用,硬件應(yīng) ...

你們自己都不看的么   引腳改下就好使了
回復(fù)

使用道具 舉報(bào)

ID:471676 發(fā)表于 2019-5-7 17:45 來自觸屏版 | 顯示全部樓層
太棒了
回復(fù)

使用道具 舉報(bào)

ID:471676 發(fā)表于 2019-5-7 17:45 來自觸屏版 | 顯示全部樓層
謝謝大神的分享,很有用
回復(fù)

使用道具 舉報(bào)

ID:47652 發(fā)表于 2019-5-8 20:03 | 顯示全部樓層
想改個(gè)遠(yuǎn)程電壓顯示
回復(fù)

使用道具 舉報(bào)

ID:560110 發(fā)表于 2020-6-24 22:42 | 顯示全部樓層
感謝分享分享到有價(jià)值的東西
回復(fù)

使用道具 舉報(bào)

ID:793949 發(fā)表于 2020-11-14 00:53 來自觸屏版 | 顯示全部樓層
問一下這個(gè)可以多機(jī)通信嗎
回復(fù)

使用道具 舉報(bào)

ID:906435 發(fā)表于 2021-4-18 10:59 | 顯示全部樓層
1137221527 發(fā)表于 2019-5-5 12:44
你們自己都不看的么   引腳改下就好使了

怎么該引腳
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表