uart.c

来自「卡尔曼滤波(非矩阵)参考程序」· C语言 代码 · 共 42 行

C
42
字号
#include "main.h"


void UART_Init (void)
{
	//printf("UART_Init\n");
	
	  SCI0CR2=0x2c; //enable Receive Full Interrupt,RX enable,Tx enable
    
    SCI0BDH=0x01; //busclk  8MHz,19200bps,SCI0BDL=0x1a
    SCI0BDL=0xa0; //SCI0BDL=busclk/(16*SCI0BDL)                   
                  //busclk 32MHz, 9600bps,SCI0BDL=0xD0
                  //115200 bps     SCI0BDL=0x11
}                 // 64M 9600    SCI0BDH=0x01; SCI0BDL=0xA0;

void uart_putchar ( unsigned char c)
{
  
  while(!(SCI0SR1&0x80)) ; 		    //keep waiting when not empty  
  SCI0DRL=c;
}


void uart_putstr(char ch[])
{
  unsigned char ptr=0;
  while(ch[ptr]){
      uart_putchar((unsigned char)ch[ptr++]);
  } 
}

unsigned char uart_getchar(void)
{
	//printf("uart_getchar\n");
	
	 byte res=0;
   while(!(SCI0SR1&0x80)) ; 		 //keep waiting when not empty  
   return (SCI0DRL);

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?