#include<reg51.h>
#include<stdio.h>
void main()
{
char grade;
grade='B';
switch(grade)
{
case'A':
printf("Very good!");
break;
case'B':
printf("Good!");
break;
case'C':printf("Fine!");
break;
case'D':
printf("Pass!");
break;
default:
printf("Lost!");
}
}
要求是输出GOOD。
这个博客里的资料我之前看过啦,不能不能就这个题目说下怎么改,哪里需要改,具体一些
追答#include
#include
void main(void)
{
SCON = 0x50;
TMOD = 0x20;
TCON = 0x40;
TH1 = 0xE8;
TL1 = 0xE8;
TI = 1;
TR1 = 1;
while(1)
{
printf("This is an example!\n");
}
}
用这个程序,我试过了,可以。
这个跟我的程序有什么关系呢,你把我这个程序改好后粘过来吧,谢谢
初始化串口我试过啦,TI=1后输出的是无穷的Good!而且这个是不需要连单片机的,仿真就可以啦,我的意思是怎么实现仿真条件下输出Good!
追答输出无穷的GOOD是因为你的程序运行完了以后又重新启动了,相当于反复运行。如果只是仿真,你的程序是正确的。你可以直接用KEIL的仿真功能,将程序的输出定义到你的物理串口上去,这样你的物理串口就代替了单片机的串口。
记得仿真的时候,先MODE ,看提示配置串口,在ASSIGN,看提示把仿真的输出连接上去
你能说下这个具体怎么改吗?
追答MODE COM1 9600,0,8,1 //串口1,波特率9600,无校验位,数据位8位,停止位1位
ASSIGN COM1 SOUT //将输入输出分配到COM1上
这个跟我的程序有什么关系呢,你把我这个程序改好后粘过来吧,谢谢
你是在keil里运行的吗?我说的是可是在keil环境下,不是在VC里
追答哦,,那是我不懂了