亚洲春色中文字幕久久久-三上亚,91精品国产亚一区二区三区,久久久九色综合亚洲成色777,涩涩视频下载,国产午夜亚洲精品午夜鲁丝片,国产精品A一区二区三区腾讯导航,影音先锋色情AV在线看片,蜜臀国产在线视频,极品少妇高潮啪啪无码吴梦梦 ,精品人妻无码一区二区三区手机版
標題:
STM8S單片機printf函數重定向到串口
[打印本頁]
作者:
daliu
時間:
2014-9-6 01:02
標題:
STM8S單片機printf函數重定向到串口
printf函數是一個功能非常強大的函數,在單片機的調試過程中經常會要適時地輸出變量的值,這時printf函數是一個非常好的選擇;對于一般的單片機只有串口可以與外界進行通信,所以我們需要將printf函數重定向到串口;在這里會涉及到兩個關鍵問題:函數的重載和函數的重定向問題;
首先是函數重載的問題;函數重載的主要用途之一是利用函數的多態性來實現用多種方法去實現同一接口功能;總而言之不管printf函數是多么的復雜,但是歸根結底使用的最低層的函數是putchar函數;purchar函數與具體的硬件結構打交道;所以實現重載就是根據具體不同的硬件結構去實現不同的putchar實體功能;所以在這里我們只需要修改putchar的實體,要注意函數重載的要求,函數名相同,但是形參不能完全相同;但是在STM8S中按照函數重載的要求定義了兩個putchar函數,庫自帶的putchar原型為:int putchar(char);我在文件中自定義文件為int putchar (unsigned char);編譯會出錯:redeclared external putchar;將函數原型改為
char putchar (char);編譯則能通過;那我只能使用的編譯器COMSIC不支持函數重載功能;
暫時先說到這里了。。。。
作者:
aiyahoo
時間:
2014-10-29 16:51
樓主你說完啊啊
作者:
我本狂妄男
時間:
2014-11-18 21:29
過來學習一下。
作者:
aeqw
時間:
2019-10-2 12:09
原先的STDIO.H中已經有定義了char putchar(char c);
所以重新定義的時候,要不就自己的定義符合STDIO.H內的宣告,要不就修改STDIO.H的宣告。
遇到類似的問題,剛剛已經解決的,順便分享一下!!
歡迎光臨 (http://www.denmoz.com/bbs/)
Powered by Discuz! X3.1