天天看点

PIC单片机printf()函数重定向

基本信息:

系统:Windows10

编译器:MPLAB X IDE V3.26 + XC8 V1.45

单片机:PIC18F66K22

下载器:PICKit3

一、串口初始化

/*

函数名:void USART1_Init( void )

功能:使用的是串口1,串口初始化

*/

void USART1_Init( void )

{
    TRISC6 = 1;
    TRISC7 = 1;        // 输入模式,作复用功能

    TX91 = 0;            // 8位发送
    TXEN1 = 1;
    SYNC1 = 0;            // 异步模式
    BRGH1 = 1;
    RX91 = 0;
    CREN1 = 1;            
    
    SPEN1 = 1;            // 使能串口
    SPBRG1 = 207;        // 波特率9600
}
           

二、printf()函数重定向

printf函数可以完成两件事:它基于你指定的格式字符串和占位符格式化文本,并将改格式化文本发送(打印)到目标(或流)然后它会调用一个putch函数来发送格式化文本的每一个字节。

/*
函数名:void putch( char ch )
功能:重定向printf函数
*/

void putch( char ch )
{
    while( !TX1IF )
        continue;
    TXREG1 = ch;
}
           

                                                                                                               END