51單片機的Printf使用方法

來源:互聯網
上載者:User

標籤:單片機   printf   

    今天在群裡面有一個網友提到51單片機使用printf為什麼編譯通過了,但是沒有效果 。這裡將我的筆記翻出來共用一下,這個實驗本身沒有太大的意義,主要是記錄51單片機應該如何使用Printf函數。


實驗名稱:串口通訊之單片機和PC計算梯形面積

MCU型號:STC12C5A60S2(12T模式)

晶振 :11.0592MHZ

實驗內容:利用單片機和PC機串口通訊的工作方式1(傳輸速率可變),(已經晶振為11.0592MHZ)設定傳輸速率為9600B/S,結合定時器1的工作方式2(TH1=0xfd,TL1=0xfd),輸入梯形的上底、下底、高,輸出梯形面積


參考程式:

/*檔案名稱:串口通訊值單片機和PC機計算梯形面積.c建立人:楊瑞建立時間:2013年2月20日開發環境:HOT51增強型單片機開發板程式功用:利用單片機與PC機的串口通訊,計算梯形面積附:利用單片機和PC機的串口通訊的工作方式1(傳輸速率可變),(已知晶振為11.0592MHZ)設定通訊傳輸速率為9600b/s,結合定時器1的工作方式2(TH1=0xfd,TL1=0xfd),輸入上底、下底、高,輸出梯形面積提示:下載程式後,開啟串口工具,需要複位一下。*/#include<reg52.h>#include<stdio.h>#define uint unsigned int #define uchar unsigned charvoid uart(void)//串口通訊初始化{SCON=0x40;//串口通訊工作方式1REN=1;//允許接收TMOD=0x20;//定時器1的工作方式2TH1=0xfd,TL1=0xfd;TI=1;                       //這裡一定要注意TR1=1;//開啟定時器}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);}}



51單片機的Printf使用方法

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.