久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1898|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

串口發(fā)送X,在LCD上顯示“I RECEIVE X”程序怎么做

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:353444 發(fā)表于 2018-7-6 14:24 | 只看該作者 回帖獎勵 |倒序?yàn)g覽 |閱讀模式
20黑幣
#include "reg52.h"                         //此文件中定義了單片機(jī)的一些特殊功能寄存器
#include "lcd.h"

typedef unsigned int u16;          //對數(shù)據(jù)類型進(jìn)行聲明定義
typedef unsigned char u8;
unsigned char i = 0;
unsigned char str[16];
u8 Temp;

void delayms(uint ms)
{
        while(ms--)
        {
                for(i=0;i<120;i++);
        }
}

void UsartInit()
{
        SCON=0X50;                        //設(shè)置為工作方式1
        TMOD=0X20;                        //設(shè)置計(jì)數(shù)器工作方式2
        PCON=0X80;                        //波特率加倍
        TH1=0XF3;                                //計(jì)數(shù)器初始值設(shè)置,注意波特率是4800的
        TL1=0XF3;
        ES=1;                                                //打開接收中斷
        EA=1;                                                //打開總中斷
        TR1=1;                                        //打開計(jì)數(shù)器
}

void uart_send_byte(unsigned char byte)
{
    SBUF = byte;
    //TI位自動置1,手動清0
    while(!TI);//while(TI != 1);
    TI = 0;
}


void uart_send_string(unsigned char *string)
{
            while(*string)
        {
                   uart_send_byte(*string);
                string++;
        }  
}

void uart_rcv_str()
{
    u8 temp,bitnum = 0;
        while(1)
        {
                   if(RI)
                {
                           RI = 0;
                        temp = SBUF;
                        if(temp == ';')
                        {
                                   str[bitnum] = '\0';
                                break;
                        }
                        else
                        {
                                  str[bitnum] = temp;
                                  bitnum++;
                        }
                }
        }
}


void LCD_Write_String(uchar x,uchar y,uchar *str)
{
        u8 n=0;
        u8 *temp;
        temp=str;
        while(*str++!='\0') n++;
        if(y==0)
        {
                LcdWriteCom(0x80|x);
        }
        if(y==1)
        {
                LcdWriteCom(0xc0|x);
        }
        for(i=0;i<n;i++)
        {
                LcdWriteCom(temp[i]);
        }
}



void Usart() interrupt 4
{

   if(RI)                        //判斷是接收中斷產(chǎn)生
     {
              RI=0;                      //標(biāo)志位清零
              Temp=SBUF;                 //讀入緩沖區(qū)的值
              P1=Temp;
              if(i < 10)
              {
                str[i] = Temp;
                i++;
              }
              if(i == 9)
              {
                 str[i] = '\0';
                 LCD_Write_String(1,0,str);
              }                   //把值輸出到P1口,用于觀察
              SBUF=Temp;                 //把接收到的值再發(fā)回電腦端
             }
           if(TI)                        //如果是發(fā)送標(biāo)志位,清零
            TI=0;
}

void main(void)
{
        UsartInit();
        LcdInit();
        uart_send_string("I received is:");
    while(1)
        {
                uart_send_string("I rcvd is:");
                uart_rcv_str();
                uart_send_string(str);
                uart_send_string("\n");
                LCD_Write_String(0,0,"I received is:");
                LCD_Write_String(1,1,str);
                if(RI)
                {
                           uart_send_string("I received is:");


                        while(SBUF)
                        {
                                uart_send_byte(SBUF);
                                SBUF++;
                        }


                        uart_send_byte('\n');
                        uart_send_string("\n");
                        delayms(5);


                        RI = 0;
                }
                LCD_Write_String(2,1,str);

        }               
}

或者幫我看看?????????

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 午夜免费在线观看 | 成人免费毛片片v | 欧美精品乱码久久久久久按摩 | 午夜三级视频 | 日韩精品一区二区三区中文字幕 | 人操人免费视频 | av日韩一区 | 一区二区在线不卡 | www.yw193.com| 91精品久久久久久久久 | 一级在线毛片 | 国产一区二区麻豆 | 色婷婷av久久久久久久 | 午夜精品视频在线观看 | 羞视频在线观看 | 国产精品免费在线 | 亚洲视频精品 | 欧美精品一区在线观看 | 国产精品污www一区二区三区 | 国产日韩欧美精品 | 精品在线观看入口 | 黄色一级大片在线免费看产 | 久久精品亚洲精品国产欧美kt∨ | 欧美中文字幕在线观看 | 欧美久久视频 | 亚洲小说图片 | www.黄色在线观看 | 色网站在线 | 国产一区二区三区免费 | 欧美激情久久久久久 | www.五月婷婷.com | 精品国偷自产在线 | 亚洲成色777777在线观看影院 | 亚洲国产精品一区二区久久 | 99热精品在线观看 | 黄色亚洲 | 人人看人人搞 | 日韩在线xx | 国产精品视频网 | 国产91在线 | 亚洲 | 亚洲成人一区 |