STM8s103一直进步了串口中断,示波器测rx端口是有数据的?

2019-07-19 21:24发布

有没有做过这方面的,求解释了?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
7条回答
NE558
1楼-- · 2019-07-20 01:02
回复【3楼】shuaishuai:
---------------------------------
建议你看下管脚复用配置 ,有可能你用的串口是 备用串口呢。。option byte
joe_knight
2楼-- · 2019-07-20 01:45
 精彩回答 2  元偷偷看……
shuaishuai
3楼-- · 2019-07-20 06:17
回复【2楼】joe_knight:
---------------------------------
int main(void)
{
   u8 len ;
  /* Infinite loop */
  
  /*设置内部时钟16M为主时钟*/ 
   
  CLK_HSICmd(ENABLE);
  CLK_HSIPrescalerConfig(CLK_PRESCALER_HSIDIV1);
  /*!<Set High speed internal clock  */
 
  
  
   ADC1_DeInit();
   ADC1_Cmd(DISABLE);
   
   ADC1_SchmittTriggerConfig(ADC1_SCHMITTTRIG_CHANNEL6, ENABLE);
   ADC1_SchmittTriggerConfig(ADC1_SCHMITTTRIG_CHANNEL5, ENABLE);
   
   GPIO_Init(GPIOD, GPIO_PIN_6, GPIO_MODE_IN_FL_NO_IT);
   GPIO_Init(GPIOD, GPIO_PIN_5, GPIO_MODE_OUT_PP_HIGH_FAST);
   
   
   Uart_Init();
    CLK_PeripheralClockConfig(CLK_PERIPHERAL_UART1, ENABLE);
   __enable_interrupt(); 
   printf(" 硬件平台为:%s ","iCreate STM8 开发板");
   UART1_SendString("Serial Communication ---STM8 Development Board of FengChi Electron ",
             sizeof("Serial Communication ---STM8 Development Board of FengChi Electron"));
   
   Delay(0xffff);
   UART1_SendByte(' ');
   Delay(0xffff);
   while (1)
   {
     
       printf(" 硬件平台为:%s ","iCreate STM8 开发板");
      if(UART_RX_NUM&0x80)
      {
        len=UART_RX_NUM&0x3f;/*得到此次接收到的数据长度*/
        UART1_SendString("You sent the messages is:",sizeof("You sent the messages is"));
        UART1_SendString(RxBuffer,len);
        UART1_SendByte(' ');
        UART_RX_NUM=0;
      }
    }

  
  
}




串口就是这样配置的,不知道哪里有问题,不能发送也不能接受,硬件连接没问题啊,>
shuaishuai
4楼-- · 2019-07-20 11:10
回复【4楼】NE558:
---------------------------------
恩谢谢已经解决
NE558
5楼-- · 2019-07-20 14:08
 精彩回答 2  元偷偷看……
shuaishuai
6楼-- · 2019-07-20 16:50
回复【6楼】NE558:
---------------------------------
刚开始使用库函数做的,总是出问题,后来改用寄存器了,就没问题了。。。。

一周热门 更多>