打印

STM8L101的串口收发

[复制链接]
4073|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
winrain|  楼主 | 2012-3-6 20:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我使用的是IAR环境单片机使用查询方式接收数据
但是不知道串口中断函数的格式怎么写
如果直接把串口中断的处理函数写到main中,是不是也可以啊?


int main( void )
{
  /* Enable general interrupts */
  enableInterrupts();
  /*High speed internal clock prescaler: 1*/
  CLK_MasterPrescalerConfig(CLK_MasterPrescaler_HSIDiv1);
  /*Set the USART RX and USART TX at high level*/
  GPIO_ExternalPullUpConfig(GPIOC,GPIO_Pin_3|GPIO_Pin_4, ENABLE);

  USART_DeInit();
   USART_Init((uint32_t)9600, USART_WordLength_8D, USART_StopBits_1,
       USART_Parity_Odd, USART_Mode_Rx | USART_Mode_Tx);

  USART_ITConfig(USART_IT_TXE, ENABLE);
  USART_ITConfig(USART_IT_RXNE, ENABLE);
  //查询法
  while(1)
  {
    //当RDR移位寄存器中的数据传递到USART_DR中时,SR的bit5被硬件置1,说明单片机收到数据
    if(USART->SR&0x20)
    {
       data=USART->DR;//把接收到的数据储存到变量data中
    }
    //发送数据
    Send_date(data);
  }//while结束
}//main结束
沙发
香水城| | 2012-3-7 22:52 | 只看该作者
直接把串口中断的处理函数写到main中?  你要怎么写到main中?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

8

帖子

1

粉丝