欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

用FPGA給51單片機串口發(fā)送字節(jié)的問題,求幫助

[復(fù)制鏈接]
ID:872683 發(fā)表于 2021-6-18 19:56 | 顯示全部樓層 |閱讀模式
我用FPGA給51單片機,每秒鐘發(fā)送了兩個字節(jié)的數(shù)據(jù),00 00,然后用51采集電壓產(chǎn)生了1個字節(jié),71.現(xiàn)在我想將這三個數(shù)據(jù)從51串口發(fā)送到上位機,我程序是這樣寫的,如圖,在中斷里發(fā)出去。adval是采集到的電壓數(shù)據(jù)。
51hei圖片20210618194838.png

當(dāng)只發(fā)送SBUF的時候,也就是只發(fā)送FPGA給的數(shù)據(jù)的時候,串口顯示00 00,是正確的,但是一旦加上發(fā)送電壓,就會顯示如下
123.png

他會在00 00 之間多發(fā)送一個電壓數(shù)據(jù),71。原因我理解的是 :SBUF一次只能發(fā)送一個字節(jié),所以在FPGA發(fā)送的兩個字節(jié)00 00 之間夾雜了一個71
但是該如何解決這個問題呢,我想讓他發(fā)送的結(jié)果是,00 00 71.
急求各位大佬解決!
回復(fù)

使用道具 舉報

ID:872683 發(fā)表于 2021-6-19 14:57 | 顯示全部樓層
剛剛想到了一個辦法,解決了,就是設(shè)置一個接受標(biāo)識符。代碼如下:
  1. void UART_Routine() interrupt 4       
  2. {
  3.         if(time_ri==0)
  4.         {
  5.                 if(RI==1)
  6.                 {                       
  7.                         RI = 0;
  8.                         Send_Byte(SBUF);
  9.                         time_ri++;
  10.                 }
  11.         }
  12.        
  13.         if(time_ri==1)
  14.         {
  15.                 if(RI==1)
  16.                 {                       
  17.                         RI = 0;
  18.                         Send_Byte(SBUF);
  19.                         time_ri=0;
  20.                         Send_Byte(adval);
  21.                 }
  22.         }

  23. }
復(fù)制代碼

回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

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

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