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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2734|回復: 11
打印 上一主題 下一主題
收起左側

STC15W408AS單片機485通訊問題

[復制鏈接]
跳轉到指定樓層
樓主
ID:331575 發(fā)表于 2022-8-8 16:22 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
目前使用串口3,P16與P17,控制SP485芯片,之前懷疑HYM芯片與SP485芯片不能替換,但是更換HYM芯片一樣還是不能通訊。
程序為測試程序,只發(fā)送不接收,目前串口無任何反應,
P16與P17需要用到內部時鐘,TNOW(P14)也設置為推挽輸出模式,電平已經拉高。
希望大神幫忙看一看哪里有問題。。。


#include        "config.h"
#include        "USART1.h"
#include        "delay.h"
#include        "GPIO.h"
u8        idata CRC[2];
u8 data1,data2;
u8 pf;
u8 flag,flag1;
sbit key2=P1^4;

#define FOSC 11059200L
sbit T0CLKO   = P3^5;               //定時器0的時鐘輸出腳
#define F38_4KHz (65536-FOSC/2/38400)    //1T模式
//#define F38_4KHz (65536-FOSC/2/12/38400) //12T模式

//-----------------------------------------------

void timet0()
{


    AUXR |= 0x80;                   //定時器0為1T模式
//  AUXR &= ~0x80;                  //定時器0為12T模式

    TMOD = 0x00;                    //設置定時器為模式0(16位自動重裝載)

    TMOD &= ~0x04;                  //C/T0=0, 對內部時鐘進行時鐘輸出
//  TMOD |= 0x04;                   //C/T0=1, 對T0引腳的外部時鐘進行時鐘輸出

    TL0 = F38_4KHz;                 //初始化計時值
    TH0 = F38_4KHz >> 8;
    TR0 = 1;
    INT_CLKO = 0x01;                //使能定時器0的時鐘輸出功能
        }

void        GPIO_config(void)
{
        GPIO_InitTypeDef        GPIO_InitStructure;                //結構定義
        GPIO_InitStructure.Pin  = GPIO_Pin_4|GPIO_Pin_6|GPIO_Pin_7;                //指定要初始化的IO, GPIO_Pin_0 ~ GPIO_Pin_7, 或操作
        GPIO_InitStructure.Mode = GPIO_OUT_PP;                //指定IO的輸入或輸出方式,GPIO_PullUp,GPIO_HighZ,GPIO_OUT_OD,GPIO_OUT_PP
        GPIO_Inilize(GPIO_P1,&GPIO_InitStructure);        //初始化
}



void        UART_config(void)
{
        COMx_InitDefine                COMx_InitStructure;                                        //結構定義
        COMx_InitStructure.UART_Mode      = UART_8bit_BRTx;                //模式,       UART_ShiftRight,UART_8bit_BRTx,UART_9bit,UART_9bit_BRTx
        COMx_InitStructure.UART_BRT_Use   = BRT_Timer2;                        //使用波特率,   BRT_Timer1, BRT_Timer2 (注意: 串口2固定使用BRT_Timer2)
        COMx_InitStructure.UART_BaudRate  = 19200ul;                        //波特率, 一般 110 ~ 115200
        COMx_InitStructure.UART_RxEnable  = ENABLE;                                //接收允許,   ENABLE或DISABLE
        COMx_InitStructure.BaudRateDouble = DISABLE;                        //波特率加倍, ENABLE或DISABLE
        COMx_InitStructure.UART_Interrupt = ENABLE;                                //中斷允許,   ENABLE或DISABLE
        COMx_InitStructure.UART_Polity    = PolityLow;                        //中斷優(yōu)先級, PolityLow,PolityHigh
        COMx_InitStructure.UART_P_SW      = UART1_SW_P16_P17;        //切換端口
        COMx_InitStructure.UART_RXD_TXD_Short = DISABLE;                //內部短路RXD與TXD, 做中繼, ENABLE,DISABLE
        USART_Configuration(USART1, &COMx_InitStructure);                //初始化串口1 USART1,USART2
        //PrintString1("STC15F2K60S2 UART1 Test Prgramme!\r\n");        //SUART1發(fā)送一個字符串
}

void send(void)
{     
        key2=1;
              delay_ms(200);
       SBUF=0x01;
       while(TI==0)
         {
           ;
         }
       TI=0;
       key2=0;
      delay_ms(200);
        key2=1;
       if(data1!=0x01)
         {
           SBUF=0x0f;
            while(TI==0)
            {
                ;
            }
            TI=0;
         }
       else{
            SBUF=0x09;
            while(TI==0)
            {
                ;
            }
            TI=0;

           }
}
/**********************************************/
void main(void)
{
        u8        i;
  u16 data1;
        u8 data2=0;

  timet0();
        UART_config();
        GPIO_config();
        EA = 1;

        while (1)
        {
                    if(key2==1)
              send();
        delay_ms(200);
                 
        }
}



51hei圖片_20220808161406.jpg (61.39 KB, 下載次數: 28)

51hei圖片_20220808161406.jpg
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:213173 發(fā)表于 2022-8-9 06:48 | 只看該作者
STC15W408AS哪來的串口3?

評分

參與人數 1黑幣 +15 收起 理由
wpppmlah + 15 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

板凳
ID:752974 發(fā)表于 2022-8-9 09:59 | 只看該作者
485和UART沒有太大的區(qū)別,使用485主要注意兩點,一是485是單雙工,注意收發(fā)數據是分時進行的,二是硬件上的收發(fā)控制,也就是圖中的TNOW信號,高電平發(fā)送,低電平接收。
回復

使用道具 舉報

地板
ID:123289 發(fā)表于 2022-8-9 10:02 | 只看該作者
記住永遠的法則:要控制什么,就必須先了解什么!!!
先讀通芯片手冊。
回復

使用道具 舉報

5#
ID:155507 發(fā)表于 2022-8-9 10:55 | 只看該作者
可以在STC15W401AS系列 串口1在多個口之間切換






  1. /*---------------------------------------------------------------------*/
  2. /* --- STC MCU Limited ------------------------------------------------*/
  3. /* --- STC15F4K60S4 系列 定時器1用作串口1的波特率發(fā)生器舉例------------*/
  4. /* --- Mobile: (86)13922805190 ----------------------------------------*/
  5. /* --- Fax: 86-0513-55012956,55012947,55012969 ------------------------*/
  6. /* --- Tel: 86-0513-55012928,55012929,55012966-------------------------*/
  7. /* --- Web: www.STCMCU.com --------------------------------------------*/
  8. /* --- Web: www.GXWMCU.com --------------------------------------------*/
  9. /* 如果要在程序中使用此代碼,請在程序中注明使用了STC的資料及程序        */
  10. /* 如果要在文章中應用此代碼,請在文章中注明使用了STC的資料及程序        */
  11. /*---------------------------------------------------------------------*/

  12. //本示例在Keil開發(fā)環(huán)境下請選擇Intel的8058芯片型號進行編譯
  13. //若無特別說明,工作頻率一般為11.0592MHz


  14. #include "reg51.h"
  15. #include "intrins.h"

  16. typedef unsigned char BYTE;
  17. typedef unsigned int WORD;
  18. #define u16  unsigned int
  19. #define u8 unsigned char

  20. #define FOSC 11059200L          //系統頻率
  21. #define BAUD 19200             //串口波特率

  22. #define NONE_PARITY     0       //無校驗
  23. #define ODD_PARITY      1       //奇校驗
  24. #define EVEN_PARITY     2       //偶校驗
  25. #define MARK_PARITY     3       //標記校驗
  26. #define SPACE_PARITY    4       //空白校驗

  27. #define PARITYBIT NONE_PARITY   //定義校驗位

  28. sfr P0M1 = 0x93;
  29. sfr P0M0 = 0x94;
  30. sfr P1M1 = 0x91;
  31. sfr P1M0 = 0x92;
  32. sfr P2M1 = 0x95;
  33. sfr P2M0 = 0x96;
  34. sfr P3M1 = 0xb1;
  35. sfr P3M0 = 0xb2;
  36. sfr P4M1 = 0xb3;
  37. sfr P4M0 = 0xb4;
  38. sfr P5M1 = 0xC9;
  39. sfr P5M0 = 0xCA;
  40. sfr P6M1 = 0xCB;
  41. sfr P6M0 = 0xCC;
  42. sfr P7M1 = 0xE1;
  43. sfr P7M0 = 0xE2;

  44. sfr AUXR  = 0x8e;               //輔助寄存器

  45. sfr P_SW1   = 0xA2;             //外設功能切換寄存器1

  46. #define S1_S0 0x40              //P_SW1.6
  47. #define S1_S1 0x80              //P_SW1.7

  48. u8        idata CRC[2];
  49. u8 data1,data2;
  50. u8 pf;
  51. u8 flag,flag1;
  52. sbit key2=P1^4;

  53. bit busy;

  54. void SendData(BYTE dat);
  55. void SendString(char *s);

  56. void send(void)
  57. {     
  58.         key2=1;
  59.         delay_ms(200);
  60.        SBUF=0x01;
  61.        while(TI==0)
  62.          {
  63.            ;
  64.          }
  65.        TI=0;
  66.        key2=0;
  67.       delay_ms(200);
  68.         key2=1;
  69.        if(data1!=0x01)
  70.          {
  71.            SBUF=0x0f;
  72.             while(TI==0)
  73.             {
  74.                 ;
  75.             }
  76.             TI=0;
  77.          }
  78.        else{
  79.             SBUF=0x09;
  80.             while(TI==0)
  81.             {
  82.                 ;
  83.             }
  84.             TI=0;

  85.            }
  86. }

  87. void main()
  88. {
  89.     u8        i;
  90.     u16 data1;
  91.     u8 data2=0;
  92.        
  93.     P0M0 = 0x00;
  94.     P0M1 = 0x00;
  95.     P1M0 = 0x00;
  96.     P1M1 = 0x00;
  97.     P2M0 = 0x00;
  98.     P2M1 = 0x00;
  99.     P3M0 = 0x00;
  100.     P3M1 = 0x00;
  101.     P4M0 = 0x00;
  102.     P4M1 = 0x00;
  103.     P5M0 = 0x00;
  104.     P5M1 = 0x00;
  105.     P6M0 = 0x00;
  106.     P6M1 = 0x00;
  107.     P7M0 = 0x00;
  108.     P7M1 = 0x00;

  109. //    ACC = P_SW1;
  110. //    ACC &= ~(S1_S0 | S1_S1);    //S1_S0=0 S1_S1=0
  111. //    P_SW1 = ACC;                //(P3.0/RxD, P3.1/TxD)
  112.    
  113. //  ACC = P_SW1;
  114. //  ACC &= ~(S1_S0 | S1_S1);    //S1_S0=1 S1_S1=0
  115. //  ACC |= S1_S0;               //(P3.6/RxD_2, P3.7/TxD_2)
  116. //  P_SW1 = ACC;  
  117. //  
  118.     ACC = P_SW1;
  119.     ACC &= ~(S1_S0 | S1_S1);    //S1_S0=0 S1_S1=1
  120.     ACC |= S1_S1;               //(P1.6/RxD_3, P1.7/TxD_3)
  121.     P_SW1 = ACC;  

  122. #if (PARITYBIT == NONE_PARITY)
  123.     SCON = 0x50;                //8位可變波特率
  124. #elif (PARITYBIT == ODD_PARITY) || (PARITYBIT == EVEN_PARITY) || (PARITYBIT == MARK_PARITY)
  125.     SCON = 0xda;                //9位可變波特率,校驗位初始為1
  126. #elif (PARITYBIT == SPACE_PARITY)
  127.     SCON = 0xd2;                //9位可變波特率,校驗位初始為0
  128. #endif

  129.     AUXR = 0x40;                //定時器1為1T模式
  130.     TMOD = 0x00;                //定時器1為模式0(16位自動重載)
  131.     TL1 = (65536 - (FOSC/4/BAUD));   //設置波特率重裝值
  132.     TH1 = (65536 - (FOSC/4/BAUD))>>8;
  133.     TR1 = 1;                    //定時器1開始啟動
  134.     ES = 1;                     //使能串口中斷
  135.     EA = 1;


  136.     while (1)
  137.     {
  138.         if(key2==1)
  139.         send();
  140.                 delay_ms(200);
  141.             
  142.     }

  143. }

  144. /*----------------------------
  145. UART 中斷服務程序
  146. -----------------------------*/
  147. void Uart() interrupt 4
  148. {
  149.     if (RI)
  150.     {
  151.         RI = 0;                 //清除RI位
  152.         P0 = SBUF;              //P0顯示串口數據
  153.         P22 = RB8;              //P2.2顯示校驗位
  154.     }
  155.     if (TI)
  156.     {
  157.         TI = 0;                 //清除TI位
  158.         busy = 0;               //清忙標志
  159.     }
  160. }

  161. /*----------------------------
  162. 發(fā)送串口數據
  163. ----------------------------*/
  164. void SendData(BYTE dat)
  165. {
  166.     while (busy);               //等待前面的數據發(fā)送完成
  167.     ACC = dat;                  //獲取校驗位P (PSW.0)
  168.     if (P)                      //根據P來設置校驗位
  169.     {
  170. #if (PARITYBIT == ODD_PARITY)
  171.         TB8 = 0;                //設置校驗位為0
  172. #elif (PARITYBIT == EVEN_PARITY)
  173.         TB8 = 1;                //設置校驗位為1
  174. #endif
  175.     }
  176.     else
  177.     {
  178. #if (PARITYBIT == ODD_PARITY)
  179.         TB8 = 1;                //設置校驗位為1
  180. #elif (PARITYBIT == EVEN_PARITY)
  181.         TB8 = 0;                //設置校驗位為0
  182. #endif
  183.     }
  184.     busy = 1;
  185.     SBUF = ACC;                 //寫數據到UART數據寄存器
  186. }

  187. /*----------------------------
  188. 發(fā)送字符串
  189. ----------------------------*/
  190. void SendString(char *s)
  191. {
  192.     while (*s)                  //檢測字符串結束標志
  193.     {
  194.         SendData(*s++);         //發(fā)送當前字符
  195.     }
  196. }

復制代碼





回復

使用道具 舉報

6#
ID:155507 發(fā)表于 2022-8-9 12:48 | 只看該作者
STC15W408AS  有定時器0和定時器2  注意:無定時器1


  1. /*---------------------------------------------------------------------*/
  2. /* --- STC MCU Limited ------------------------------------------------*/
  3. /* --- STC15W408AS 系列 定時器2用作串口1的波特率發(fā)生器舉例------------*/
  4. /* --- Mobile: (86)13922805190 ----------------------------------------*/
  5. /* --- Fax: 86-0513-55012956,55012947,55012969 ------------------------*/
  6. /* --- Tel: 86-0513-55012928,55012929,55012966-------------------------*/
  7. /* --- Web: www.STCMCU.com --------------------------------------------*/
  8. /* --- Web: www.GXWMCU.com --------------------------------------------*/
  9. /* 如果要在程序中使用此代碼,請在程序中注明使用了STC的資料及程序        */
  10. /* 如果要在文章中應用此代碼,請在文章中注明使用了STC的資料及程序        */
  11. /*---------------------------------------------------------------------*/

  12. //本示例在Keil開發(fā)環(huán)境下請選擇Intel的8058芯片型號進行編譯
  13. //若無特別說明,工作頻率一般為11.0592MHz
  14. //STC15W408AS  有定時器0和定時器2 (注意:無定時器1, 有3路CCP可作3個定時器使用)

  15. #include "reg51.h"
  16. #include "intrins.h"

  17. typedef unsigned char BYTE;
  18. typedef unsigned int WORD;
  19. #define u16  unsigned int
  20. #define u8 unsigned char

  21. #define FOSC 11059200L          //系統頻率
  22. #define BAUD 19200             //串口波特率

  23. #define MAIN_Fosc                11059200L        //定義主時鐘
  24. #define Main_Fosc_KHZ        (MAIN_Fosc / 1000)

  25. #define NONE_PARITY     0       //無校驗
  26. #define ODD_PARITY      1       //奇校驗
  27. #define EVEN_PARITY     2       //偶校驗
  28. #define MARK_PARITY     3       //標記校驗
  29. #define SPACE_PARITY    4       //空白校驗

  30. #define PARITYBIT NONE_PARITY   //定義校驗位

  31. sfr P1M1 = 0x91;     //PxM1.n,PxM0.n     =00--->Standard, 為雙向口模式     01--->push-pull 為推挽輸出模式
  32. sfr P1M0 = 0x92;     //                  =10--->pure input,為高阻輸入模式  11--->open drain 為開漏模式
  33. sfr P2M1 = 0x95;
  34. sfr P2M0 = 0x96;
  35. sfr P3M1 = 0xb1;
  36. sfr P3M0 = 0xb2;


  37. //sfr AUXR  = 0x8e;               //輔助寄存器
  38. sfr T2H   = 0xd6;               //定時器2高8位
  39. sfr T2L   = 0xd7;               //定時器2低8位

  40. sfr P_SW1   = 0xA2;             //外設功能切換寄存器1

  41. sfr AUXR      = 0x8e;               //輔助特殊功能寄存器
  42. sfr INT_CLKO  = 0x8f;               //喚醒和時鐘輸出功能寄存器

  43. sbit T0CLKO   = P3^5;               //定時器0的時鐘輸出腳

  44. #define F38_4KHz (65536-FOSC/2/38400)    //1T模式
  45. //#define F38_4KHz (65536-FOSC/2/12/38400) //12T模式

  46. #define S1_S0 0x40              //P_SW1.6
  47. #define S1_S1 0x80              //P_SW1.7

  48. u8 idata CRC[2];
  49. u8 data1,data2;
  50. u8 pf;
  51. u8 flag,flag1;
  52. sbit key2=P1^4;


  53. bit busy;

  54. void SendData(BYTE dat);
  55. void SendString(char *s);

  56. //========================================================================
  57. // 函數: void  delay_ms(unsigned char ms)
  58. // 描述: 延時函數。
  59. // 參數: ms,要延時的ms數, 這里只支持1~255ms. 自動適應主時鐘.
  60. // 返回: none.
  61. // 版本: VER1.0
  62. // 日期: 2013-4-1
  63. // 備注:
  64. //========================================================================
  65. void  delay_ms(unsigned char ms)
  66. {
  67.      unsigned int i;
  68.          do{
  69.               i = MAIN_Fosc / 13000;
  70.                   while(--i)        ;   //14T per loop
  71.      }while(--ms);
  72. }


  73. void send(void)
  74. {     
  75.     key2=1;
  76.     delay_ms(200);
  77.     SBUF=0x01;
  78.     while(TI==0)
  79.        {
  80.          ;
  81.        }
  82.     TI=0;
  83.     key2=0;
  84.     delay_ms(200);
  85.     key2=1;
  86.     if(data1!=0x01)
  87.       {
  88.         SBUF=0x0f;
  89.          while(TI==0)
  90.          {
  91.              ;
  92.          }
  93.          TI=0;
  94.       }
  95.     else{
  96.          SBUF=0x09;
  97.          while(TI==0)
  98.          {
  99.              ;
  100.          }
  101.          TI=0;

  102.     }
  103. }


  104. void main()
  105. {
  106.         u8        i;
  107.     u16 data1;
  108.     u8 data2=0;
  109.        
  110.     P1M0 = 0x00;
  111.     P1M1 = 0x00;
  112.     P2M0 = 0x00;
  113.     P2M1 = 0x00;
  114.     P3M0 = 0x10;    //P3^5為推挽輸出模式
  115.     P3M1 = 0x00;
  116.      //特別注意:若要使用T0CLKO時鐘輸出功能,必須將P3.5口 設置為強推挽輸出模式。
  117.          
  118.     AUXR |= 0x80;                   //定時器0為1T模式
  119. //  AUXR &= ~0x80;                  //定時器0為12T模式

  120.     TMOD = 0x00;                    //設置定時器為模式0(16位自動重裝載)
  121.    
  122.     TMOD &= ~0x04;                  //C/T0=0, 對內部時鐘進行時鐘輸出
  123. //  TMOD |= 0x04;                   //C/T0=1, 對T0引腳的外部時鐘進行時鐘輸出

  124.     TL0 = F38_4KHz;                 //初始化計時值
  125.     TH0 = F38_4KHz >> 8;
  126.     TR0 = 1;
  127.     INT_CLKO = 0x01;                //使能定時器0的時鐘輸出功能

  128. //  ACC = P_SW1;
  129. //  ACC &= ~(S1_S0 | S1_S1);    //S1_S0=0 S1_S1=0
  130. //  P_SW1 = ACC;                //(P3.0/RxD, P3.1/TxD)
  131.    
  132. //  ACC = P_SW1;
  133. //  ACC &= ~(S1_S0 | S1_S1);    //S1_S0=1 S1_S1=0
  134. //  ACC |= S1_S0;               //(P3.6/RxD_2, P3.7/TxD_2)
  135. //  P_SW1 = ACC;  
  136. //  
  137.     ACC = P_SW1;
  138.     ACC &= ~(S1_S0 | S1_S1);    //S1_S0=0 S1_S1=1
  139.     ACC |= S1_S1;               //(P1.6/RxD_3, P1.7/TxD_3)
  140.     P_SW1 = ACC;   

  141. #if (PARITYBIT == NONE_PARITY)
  142.     SCON = 0x50;                //8位可變波特率
  143. #elif (PARITYBIT == ODD_PARITY) || (PARITYBIT == EVEN_PARITY) || (PARITYBIT == MARK_PARITY)
  144.     SCON = 0xda;                //9位可變波特率,校驗位初始為1
  145. #elif (PARITYBIT == SPACE_PARITY)
  146.     SCON = 0xd2;                //9位可變波特率,校驗位初始為0
  147. #endif

  148.     T2L = (65536 - (FOSC/4/BAUD));   //設置波特率重裝值
  149.     T2H = (65536 - (FOSC/4/BAUD))>>8;
  150.     AUXR = 0x14;                //T2為1T模式, 并啟動定時器2
  151.     AUXR |= 0x01;               //選擇定時器2為串口1的波特率發(fā)生器
  152.     ES = 1;                     //使能串口1中斷
  153.     EA = 1;

  154.     while (1)
  155.     {
  156.         if(key2==1)
  157.         send();
  158.                 delay_ms(200);
  159.             
  160.     }
  161. }

  162. /*----------------------------
  163. UART 中斷服務程序
  164. -----------------------------*/
  165. void Uart() interrupt 4
  166. {
  167.     if (RI)
  168.     {
  169.         RI = 0;                 //清除RI位
  170.         P0 = SBUF;              //P0顯示串口數據
  171.         P22 = RB8;              //P2.2顯示校驗位
  172.     }
  173.     if (TI)
  174.     {
  175.         TI = 0;                 //清除TI位
  176.         busy = 0;               //清忙標志
  177.     }
  178. }

  179. /*----------------------------
  180. 發(fā)送串口數據
  181. ----------------------------*/
  182. void SendData(BYTE dat)
  183. {
  184.     while (busy);               //等待前面的數據發(fā)送完成
  185.     ACC = dat;                  //獲取校驗位P (PSW.0)
  186.     if (P)                      //根據P來設置校驗位
  187.     {
  188. #if (PARITYBIT == ODD_PARITY)
  189.         TB8 = 0;                //設置校驗位為0
  190. #elif (PARITYBIT == EVEN_PARITY)
  191.         TB8 = 1;                //設置校驗位為1
  192. #endif
  193.     }
  194.     else
  195.     {
  196. #if (PARITYBIT == ODD_PARITY)
  197.         TB8 = 1;                //設置校驗位為1
  198. #elif (PARITYBIT == EVEN_PARITY)
  199.         TB8 = 0;                //設置校驗位為0
  200. #endif
  201.     }
  202.     busy = 1;
  203.     SBUF = ACC;                 //寫數據到UART數據寄存器
  204. }

  205. /*----------------------------
  206. 發(fā)送字符串
  207. ----------------------------*/
  208. void SendString(char *s)
  209. {
  210.     while (*s)                  //檢測字符串結束標志
  211.     {
  212.         SendData(*s++);         //發(fā)送當前字符
  213.     }
  214. }

復制代碼
回復

使用道具 舉報

7#
ID:331575 發(fā)表于 2022-8-9 13:11 | 只看該作者
wulin 發(fā)表于 2022-8-9 06:48
STC15W408AS哪來的串口3?

失誤,串口1,只是將原來的P30-P31放到P17-P16上去
回復

使用道具 舉報

8#
ID:47286 發(fā)表于 2022-8-9 14:48 | 只看該作者
485的A接上拉 B接下拉 電路圖好象是反的

萬用表量一下485第23腳 無發(fā)送時釋放為低 低接收高發(fā)送

單片機的TTL通訊腳準雙向即可
回復

使用道具 舉報

9#
ID:47286 發(fā)表于 2022-8-9 14:50 | 只看該作者
更正 485的AB腳電阻我看錯了
回復

使用道具 舉報

10#
ID:331575 發(fā)表于 2022-8-9 15:44 | 只看該作者
wulin 發(fā)表于 2022-8-9 06:48
STC15W408AS哪來的串口3?

不好意思,打錯了,是串口1,使用的P17-P16引腳
回復

使用道具 舉報

11#
ID:128880 發(fā)表于 2022-8-9 17:11 | 只看該作者
15W408只有一組串口吧。
回復

使用道具 舉報

12#
ID:331575 發(fā)表于 2022-8-11 09:43 | 只看該作者
dzbj 發(fā)表于 2022-8-9 14:48
485的A接上拉 B接下拉 電路圖好象是反的

萬用表量一下485第23腳 無發(fā)送時釋放為低 低接收高發(fā)送

高低電平都有變化。。。
回復

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲国产一区二区在线 | 色婷婷久久久久swag精品 | 精品国产青草久久久久福利 | 成人午夜视频在线观看 | 激情av在线 | 久久久久国产精品一区二区 | 欧美一区二区三区一在线观看 | 国产精品成人国产乱一区 | 国产精品日韩欧美一区二区 | 日韩一区二区三区在线 | 欧美激情亚洲天堂 | 久久精品一级 | 国产精品18hdxxxⅹ在线 | 国产成人在线一区 | 久久青草av| 一区二区三区免费观看 | 欧美日本韩国一区二区三区 | 国产精品a久久久久 | 久久免费香蕉视频 | 午夜伊人 | 久久久久亚洲视频 | 亚洲欧美中文日韩在线v日本 | 日本人麻豆 | 美女亚洲一区 | 色影视 | 亚洲人成人一区二区在线观看 | 精品国产乱码久久久久久闺蜜 | 亚洲欧美成人 | 日韩一区二区三区在线视频 | 亚欧洲精品在线视频免费观看 | 日韩2020狼一二三 | 色影视| 青青草原综合久久大伊人精品 | 国产精品久久a | 四虎伊人| 欧美三区视频 | 亚洲欧美一区二区三区国产精品 | 精品乱人伦一区二区三区 | h视频在线观看免费 | 水蜜桃久久夜色精品一区 | 在线2区 |