当前位置:首页 > 单片机 > 单片机
[导读]对于没有仿真器的板子来说,串口是一个非常好的调试工具,你可以将你需要观察的变量通过串口发送到PC上进行后续分析,进行调试。这里主要介绍在Keil C中怎么使用串口来调试程序。程序代码如下:#include#includevoid

对于没有仿真器的板子来说,串口是一个非常好的调试工具,你可以将你需要观察的变量

通过串口发送到PC上进行后续分析,进行调试。这里主要介绍在Keil C中怎么使用串口来

调试程序。

程序代码如下:

#include

#include

void serial_init(void);

void main()

{

serial_init();

while(1)

{

printf("Hello,Serial Portn";

}

}

void serial_init(void)//串口初始化函数

{

TMOD = 0x20;//T1工作方式1,用于设定波特率

TH1= 0xF3;//波特率4800Bps,12MHz晶振

TL1= 0xF3;

PCON |= 0x80; //SMOD = 1,波特率加倍

SCON = 0x50;//允许发送接收

ES = 0; //禁止串口中断

TI = 1;

TR1= 1;

}

需要注意的是单片机晶振是12MHz(否则波特率设置将不正确)。

建立工程,编译,进入调试界面,选择菜单里的"Peripheraals"-"Serial"项,看到的是串口设置的

界面,可以看到,在未进行串口初始化之前,串口的参数都是0x00,其他选项也没有置位。
按 F10进入单步调试,执行serial_init函数,我们看到串口已经初始化好,波特率为4806。串口初始化好之后,我们就可以使用printf函数 输出自己需要的信息了(注意需要有stdio.h文件)。这里,我们只输出了简单的字符串信息示例。选择菜单"View"-“Serial Window #1”,可以看到空白的
区域,这是串口信息显示的地方,执行printf函数,可以看到在屏幕上打印出了“Hello,Serial Port”字样。

在实际硬件上调试程序过程中,我们在遇到问题时候可以通过这种方式观察相关变量的值,调试程序,程序没问题之后就可以将printf函数去掉了。


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读
关闭