想通过串口在pc端的串口调试软件上输出一个字符串,程序在软件上模拟调试没问题,但烧写到片子上后,灯能亮,却不能输出字符串,请问是那方面的问题?
程序如下:
#include <at89x52.h>
#include <stdio.h>
void delay100us(unsigned char count)
{
unsigned i,j,k;
for(i=0;i<count;i++)
for(k=0;k<100;k++)
for(j=0;j<125;j++)
;
}
void ledon(void)
{P2_0=0;}
void ledoff(void)
{P2_0=1;}
void main(void)
{
unsigned char a=0;
SCON=0x50;
TMOD=0x20;
TCON=0x40;
TH1=0xfd;
TL1=0xfd;
TI=1;
TR1=1;
while(1)
{
printf("Hello World!\n");
ledon();
delay100us(10);
ledoff();
delay100us(10);
}
}
还有就是串口调试软件的接受计数只有在上电的瞬间加1,稳定后没有变化,这是什么问题?
MCU一般输出TTL电平,与串口电平不一致,需进行接口转换
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) | Powered by Discuz! 7.0.0 |