STM8S103F3P6的串口通讯例程(寄存器版本)?

2019-07-19 20:38发布

谁有STM8S103F3P6的串口通讯例程(寄存器版本)?发一份给我,谢谢!
qq:1404014534@qq。com
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
6条回答
鼻涕虫买房子
2019-07-20 04:17
void UART1_Init(void)
{   
  UART1_CR2 = 0;           // 禁止UART发送和接收
  UART1_CR1 = 0;           // b5 = 0,允许UART,禁止奇偶校验
        //一个起始位,8个数据位
        UART1_CR3 = 0;           // 1个停止位              
  UART1_BRR2 = 0;
  UART1_BRR1 = 0x0d;  // 实际的波特率分频系数为00D0(208)
// 对应的波特率为2000000/208=9600
  UART1_CR2 = 0x02C;// 允许发送,接收//允许接收中断
}


/********************************************************************************
函数功能:从UART3发送一个字符
输入参数:ch -- 要发送的字符
修改时间:2011 5 26
*********************************************************************************/
void UART1_SendChar(unsigned char ch)
{
        unsigned char i;
  while((UART1_SR & 0x80) == 0x00);  // 若发送寄存器不空,则等待
  UART1_DR = ch;
for(i=0;i<100;i++);        // 将要发送的字符送到数据寄存器  
}


























@far @interrupt void UART1_Recv_IRQHandler (void)
{
  unsigned char ch;
  ch = UART1_DR;          // 读入接收到的字符
  UART1_SendChar(ch);       // 将字符发送出去
}   

一周热门 更多>