Printf在51單片機(jī)的使用方法
實(shí)驗(yàn)名稱:串口通信之單片機(jī)和PC計(jì)算梯形面積
MCU型號(hào):STC12C5A60S2(12T模式)
晶振 :11.0592MHZ
實(shí)驗(yàn)內(nèi)容:利用單片機(jī)和PC機(jī)串口通信的工作方式1(波特率可變),(已經(jīng)晶振為11.0592MHZ)設(shè)置波特率為9600B/S,結(jié)合定時(shí)器1的工作方式2(TH1=0xfd,TL1=0xfd),輸入梯形的上底、下底、高,輸出梯形面積
效果圖:
參考程序:
/*
文件名:串口通信值單片機(jī)和PC機(jī)計(jì)算梯形面積.c
創(chuàng)建人:楊瑞
創(chuàng)建時(shí)間:2013年2月20日
開發(fā)環(huán)境:HOT51增強(qiáng)型單片機(jī)開發(fā)板
程序功用:利用單片機(jī)與PC機(jī)的串口通信,計(jì)算梯形面積
附:利用單片機(jī)和PC機(jī)的串口通信的工作方式1(波特率可變),(已知晶振為11.0592MHZ)設(shè)置通信波特率為9600b/s,結(jié)合定時(shí)器1的工作方式2(TH1=0xfd,TL1=0xfd),輸入上底、下底、高,輸出梯形面積
提示:下載程序后,打開串口工具,需要復(fù)位一下。
*/
#include
#include
#define uint unsigned int
#define uchar unsigned char
void uart(void) //串口通信初始化
{
SCON=0x40; //串口通信工作方式1
REN=1; //允許接收
TMOD=0x20; //定時(shí)器1的工作方式2
TH1=0xfd,TL1=0xfd;
TI=1; //這里一定要注意
TR1=1; //打開定時(shí)器
}
void main(void)
{
uint up=0,down=0,high=0;
uint result ;
uart();
while(1)
{
printf("********************************\r\n");
printf("Please input up,dowm,high:\r\n");
scanf("%d%d%d",&up,&down,&high) ;
printf("\r\nResult=%d\r\n",result=(up+down)*high/2);
}
}