久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: 51單片機printf函數源代碼怎么找 [打印本頁]

作者: 滄興電子    時間: 2022-12-2 22:37
標題: 51單片機printf函數源代碼怎么找
通過STDIO.H文件,找到頭文件函數聲明,但是源文件C代碼找不到


作者: Hephaestus    時間: 2022-12-3 00:53
源碼在庫文件里面,商業秘密怎么可能讓你知道?

開源免費的SDCC里面有printf源碼,在lib\src目錄下面。
作者: Longan.Wang    時間: 2022-12-5 15:57
精神可嘉!但,沒有必要。。。!
作者: angmall    時間: 2022-12-5 18:30
我先在知道想要在51單片機使用printf有兩種辦法,一種是用庫自己的printf,一種是寫自己的printf,不過都很簡單,

自己寫printf。


  1. void sendstring(unsigned char *string)//這個是字符串發送函數
  2. {
  3.         while(*string!='\0')   //判斷是否到字符串的尾端
  4.         {
  5.                 sendbyte(*string);
  6.                 string++;
  7.         }
  8. }
  9. void uart_printf(char *fmt,...)//這個是我們的printf函數
  10. {
  11.         va_list ap;//typedef char *va_list; va_list是char型的指針

  12.         char xdata string[1024];//訪問外部RAM 兩字節對齊

  13.         va_start(ap,fmt);//這個函數的功能是,找到第一個可變形參的地址,并把地址賦給ap
  14.         vsprintf(string,fmt,ap);//其實這個函數才是核心函數,沒研究。。。
  15.         sendstring(string);//這個函數就是發送字符串函數,通過上一個函數,就把該提取的東西都提取了
  16.         va_end(ap);//結束函數
  17. }
復制代碼

作者: Y_G_G    時間: 2022-12-5 20:59
當初剛剛學C語言的時候還能找到,現在找不到了,網上找了,你自己看一下就明白了printf是通過putchar函數發送的,所以,printf并沒有跟8051有關的語句
在putchar函數中是使用串口進行發送的,你可以通過更改putchar還更改printf的功能
https://www.cnblogs.com/jqdy/p/12255620.html?ivk_sa=1024320u





歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 91成人免费电影 | 国产精品福利视频 | 久久久久久久国产 | 日本免费视频在线观看 | 国产乱码久久久久久一区二区 | 亚洲一在线 | 中文字幕成人 | 国产婷婷在线视频 | 成人国产精品久久 | 97超碰人人| 干干天天 | 色网站在线免费观看 | 91视频.com | 国产免费福利在线 | 国产精品无码久久久久 | www.国产91| 亚洲电影第1页 | 亚洲视频在线观看 | 91人人澡人人爽 | 美日韩免费视频 | 国产日韩一区二区三免费 | 亚州av在线 | 色婷婷精品国产一区二区三区 | hsck成人网| 国产精品美女久久久久久免费 | 亚洲视频在线一区 | 国外成人在线视频 | 一级做a毛片 | 中文字幕第三页 | 日韩欧美视频 | 一区中文字幕 | 成人免费视频网站在线观看 | 国产成人免费 | 久久婷婷av | av网站免费观看 | 久久久不卡网国产精品一区 | 久久精品国产一区二区三区 | 91pron在线 | 久久久久久久久国产精品 | 亚洲视频在线一区 | 国产免费又黄又爽又刺激蜜月al |