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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1285|回復: 2
打印 上一主題 下一主題
收起左側(cè)

十六進制怎么用單片機串口發(fā)送出去?

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:475031 發(fā)表于 2023-6-12 19:28 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
0X03,0XFD,0X10,0XE8,0X00,0X00,0X0C,0X80,0X6B
上面
十六進制怎么串口發(fā)送出去,

下面是我的程序。編譯也沒有錯誤,按鈕按了也沒有見發(fā)送出去。
#include <STC15W204S.h>
#include <intrins.h>
#define uchar unsigned char     //定義一下方便后面使用
#define uint  unsigned int            //定義一下方便后面使用
#define ulong unsigned long            //定義一下方便后面使用               
#define COMM_BAUD_RATE  9600    //串口波特率
#define FOSC 11059200L //晶振設(shè)置,默認使用11.0592M Hz,
sbit KEY1 = P3^3;  //觸發(fā)

void UartInit(void) {
        //8位數(shù)據(jù),可變波特率
        SCON = 0x50;
        //串口1選擇定時器2為波特率發(fā)生器
        AUXR |= 0x01;
        //定時器2時鐘為Fosc,即1T
        AUXR |= 0x04;
        //內(nèi)部RC時鐘設(shè)置為11.0592的定時器2初值設(shè)置
        //設(shè)定定時初值
        T2L = 0xE0;
        //設(shè)定定時初值
        T2H = 0xFE;
        //啟動定時器2
        AUXR |= 0x10;
        //允許UART串口中斷
        ES = 1 ;
        //允許總中斷
        EA = 1 ;
}



void send(uchar dat)
{
        SBUF=dat;                         //發(fā)送指令到SBUF
        while(!TI);                         //等待發(fā)送結(jié)束
        TI=0;                                 //清除結(jié)束標志,以便再發(fā)送數(shù)據(jù)
}
void main()
{
        UartInit();//串口寄存器的初始化設(shè)置

        while(1)
        {
  if(KEY1==0)  //判斷是否按下鍵盤
        {
                  
        send(0X03);                 
        send(0XFD);                 
        send(0X14);                 
        send(0XFF);                  
        send(0X00);                 
        send(0X00);                  
        send(0X00);                 
        send(0X0F);                    
        send(0X6B);         
                 }
                while(KEY1==0);//按鍵鎖定,每按一次count只加1.
                 
        }
        
        }
}


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

使用道具 舉報

沙發(fā)
ID:116103 發(fā)表于 2023-6-12 22:24 | 只看該作者
初始化程序中你開了中斷,ES=1,EA=1,則TI=1時就會進入中斷,而你沒有中斷程序,你是用的查詢方式發(fā)碼,所以要把ES=1關(guān)了,ES=0.  也就是不用中斷。
回復

使用道具 舉報

板凳
ID:213173 發(fā)表于 2023-6-13 07:14 | 只看該作者
  1. #include <STC15W204S.h>
  2. #include <intrins.h>
  3. #define uchar unsigned char     //定義一下方便后面使用
  4. #define uint  unsigned int            //定義一下方便后面使用
  5. #define ulong unsigned long            //定義一下方便后面使用               
  6. #define COMM_BAUD_RATE  9600    //串口波特率
  7. #define FOSC 11059200L //晶振設(shè)置,默認使用11.0592M Hz,
  8. sbit KEY1 = P3^3;  //觸發(fā)

  9. uchar code Table[]={0X03,0Xfd,0X14,0Xff,0X00,0X00,0X00,0X0f,0X6b};

  10. void Delay10ms()                //@11.0592MHz
  11. {
  12.         unsigned char i, j;

  13.         i = 18;
  14.         j = 235;
  15.         do
  16.         {
  17.                 while (--j);
  18.         } while (--i);
  19. }

  20. void UartInit(void)
  21. {
  22.         SCON = 0x50;//8位數(shù)據(jù),可變波特率
  23.         AUXR |= 0x01;//串口1選擇定時器2為波特率發(fā)生器
  24.         AUXR |= 0x04;//定時器2時鐘為Fosc,即1T
  25.         //內(nèi)部RC時鐘設(shè)置為11.0592的定時器2初值設(shè)置
  26.         T2L = 0xE0;//設(shè)定定時初值
  27.         T2H = 0xFE;//設(shè)定定時初值
  28.         AUXR |= 0x10;//啟動定時器2
  29.         ES = 1 ;//允許UART串口中斷
  30.         EA = 1 ;//允許總中斷
  31. }

  32. void send(uchar dat)
  33. {
  34.         SBUF=dat;                         //發(fā)送指令到SBUF
  35.         while(!TI);                         //等待發(fā)送結(jié)束
  36.         TI=0;                                 //清除結(jié)束標志,以便再發(fā)送數(shù)據(jù)
  37. }
  38. void main()
  39. {
  40.         uchar i;
  41.         UartInit();//串口寄存器的初始化設(shè)置
  42.         while(1)
  43.         {
  44.                 if(KEY1==0)  //判斷是否按下鍵盤
  45.                 {
  46.                         Delay10ms();
  47.                         if(KEY1==0)
  48.                         {
  49.                                 for(i=0;i<9;i++)
  50.                                         send(Table[i]);
  51. /*                                send(0X03);                 
  52.                                 send(0XFD);                 
  53.                                 send(0X14);                 
  54.                                 send(0XFF);                  
  55.                                 send(0X00);                 
  56.                                 send(0X00);                  
  57.                                 send(0X00);                 
  58.                                 send(0X0F);                    
  59.                                 send(0X6B);         
  60. */
  61.                         }
  62.                         while(!KEY1);//按鍵鎖定,每按一次count只加1.               
  63.                 }
  64.         }       
  65. }
復制代碼
回復

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復 返回頂部 返回列表
主站蜘蛛池模板: h视频在线免费 | 夜夜骑综合 | 亚洲国产精品一区 | 久久精品国产一区 | 精品一级| 久久久成人免费一区二区 | 精品国产鲁一鲁一区二区张丽 | h在线观看 | 欧美大片一区 | 亚洲日本欧美日韩高观看 | 国产精品久久久久久久久久99 | 一区二区三区中文字幕 | 欧美三级网站 | 天天做日日做 | 亚洲欧美一区二区三区视频 | 青青久在线视频 | 国产精品7777777| 在线视频成人 | 波多野吉衣在线播放 | 九九热精品在线 | 在线观看国产h | 91久久精品一区二区二区 | 国产精品久久久久久久久久久免费看 | 成人av在线播放 | 久久亚洲一区 | 欧美日韩国产精品一区 | 久视频在线观看 | chengrenzaixian| 日本免费黄色一级片 | 久久久久久久久久久久久九 | 九九久久免费视频 | 日韩久久久久久久久久久 | 欧美一级毛片久久99精品蜜桃 | 国产精品成人一区二区三区 | 亚洲男人天堂网 | 麻豆亚洲 | 精品国产久 | 成人网在线观看 | 日韩毛片视频 | 国产一区二区在线免费观看 | 欧美aaa|