娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

歷史上的今天

今天是:2025年06月15日(星期日)

2019年06月15日 | STM32CubeMX學習教程之六:USART串口輸出和printf( )重定向到串口

發布者:夢中徐來 來源: eefocus關鍵字:STM32CubeMX  USART  串口輸出  重定向 手機看文章 掃描二維碼
隨時隨地手機看文章

軟件:


STM32CubeMX V4.25.0  


System Workbench V2.4


固件庫版本:

STM32Cube FW_F1 V1.6.1


硬件:


OneNet 麒麟座V2.3


在STM32CubeMX中新建項目,選擇正確的MCU型號



首先設置RCC和SYS,如下圖


然后根據板子實際情況設置時鐘(麒麟座外部晶振是12M,STM32F103x的最高主頻是72M),如下圖


配置USART1為Asychronous模式


 


可以看到PA9和PA10被配置為了USART1_TX, USART1_RX。

UART1配置用默認的115200,8, None和1就好。


Project - setting ,ToolChain/IDE選擇 SW4STM32


勾選這里


保存以后,點擊任務欄的生成代碼圖標


生成完畢以后在彈出的對話框點擊"Open Project", System Workbench自動打開Eclipse并導入和打開了項目。


編輯main.c, 添加如下代碼,其中17為字符串長度(r和n各占一個字符),10為超時時間:


  /* USER CODE BEGIN WHILE */

  while (1)

  {

 

  /* USER CODE END WHILE */

 

  /* USER CODE BEGIN 3 */

  HAL_UART_Transmit(&huart1,"rnUART Transmitrn",17,10);

  HAL_Delay(1000);

  }

  /* USER CODE END 3 */

 


 


 


然后右鍵點擊項目,選擇Properties, Run-Debug Settings, 點擊右側的New,在彈出對話框中選擇Ac6 STM32 Debugging。


然后任務欄上點擊Run圖,當然會報錯的,原因請查看另一篇我的博客(https://blog.csdn.net/toopoo/article/details/79680323),所以需要右鍵點擊  項目名Run.cfg ,給它改個名字,


然后右鍵點擊項目樹里面的項目名稱,選擇“Propeties”,然后在Run/Debug Settings-選擇項目名-Edit-Main-C/C++Application那里點擊“Search Project”,然后選擇出現的默認的elf文件:


然后在Debugger-User Defined-Browse 那里選擇你自己改名的配置文件:


然后右鍵點擊那個新的cfg文件,選擇"Open With - Text Editor", 進行如下更改:


source [find interface/stlink.cfg] 更改為 source [find interface/stlink-v2.cfg]


reset_config srst_only srst_nogate connect_assert_srst 這一行改為 reset_config none 


然后再Run一下,就可以了。



通過串口調試軟件(波特率設為115200)就可以看到它不斷輸出 


UART Transmit

那么如何使用printf( )輸出到串口呢,其實官方有個例程。解壓STM32Cube_FW_F1_V1.6.0.zip文件,


打開STM32Cube_FW_F1_V1.6.0ProjectsSTM3210C_EVALExamplesUARTUART_PrintfSW4STM32STM3210C_EVAL的項目,就可以看到main.c里面做了幾件事情:


/* Private function prototypes -----------------------------------------------*/

#ifdef __GNUC__

/* With GCC, small printf (option LD Linker->Libraries->Small printf

   set to 'Yes') calls __io_putchar() */

#define PUTCHAR_PROTOTYPE int __io_putchar(int ch)

#else

#define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)

#endif /* __GNUC__ */

 

/* Private functions -------------------------------------------------

/* USER CODE BEGIN 0 */

 

PUTCHAR_PROTOTYPE

{

    HAL_UART_Transmit(&huart1 , (uint8_t *)&ch, 1, 0xFFFF);

    return ch;

}

/* USER CODE END 0 */

 


然后修改main.c的輸出內容:


 


  /* USER CODE BEGIN WHILE */

  while (1)

  {

 

  /* USER CODE END WHILE */

 

  /* USER CODE BEGIN 3 */

  printf("printf function UART1 output test~~!rn");

  HAL_UART_Transmit(&huart1,"rnUART Transmitrn",17,10);

  HAL_Delay(1000);

  }

  /* USER CODE END 3 */

 


最后,不要忘記把STM32Cube_FW_F1_V1.6.0ProjectsSTM3210C_EVALExamplesUARTUART_Printfsyscalls.c 文件復制到src目錄,很多教程沒有提到這點。如果不復制這個文件,那么printf()是不起作用的。再Run一次,就能看到你的輸出內容為


 


UART Transmit

printf function UART1 output test~~!

 

UART Transmit

printf function UART1 output test~~!


關鍵字:STM32CubeMX  USART  串口輸出  重定向 引用地址:STM32CubeMX學習教程之六:USART串口輸出和printf( )重定向到串口

上一篇:STM32CubeMX學習筆記1:GPIO輸出LED流水燈
下一篇:STM32Hal庫學習(三)CubeMx學習外部中斷

推薦閱讀

集微網消息,據外媒報道,一家名叫 Wave Computing 人工智能芯片初創企業,剛剛收購了處理器業務的老前輩 —— MIPS Technologies 。成立于 2010 年的 Wave,旨在通過定制處理器來加速 AI 技術的發展。其主要面向那些對 AI 工作很感興趣的企業,或者那些為他人提供算力的計算機數據中心。Wave希望通過此次收購激活其現金流,增加其資產負債...
軟件:STM32CubeMX V4.25.0 System Workbench V2.4固件庫版本:STM32Cube FW_F1 V1.6.1硬件:OneNet 麒麟座V2.3在STM32CubeMX中新建項目,選擇正確的MCU型號 首先設置RCC和SYS,如下圖配置USART1為Asychronous模式UART1配置用默認的115200,8, None和1就好。然后設置PA6引腳為ADC2_IN6, 完整引腳配置如下圖:然后根據板子實際情況設置時鐘(麒麟...
6月15日訊,網絡自媒體爆料美的創始人何享健被劫持,何享健之子何劍鋒跳入自家旁邊的河中游到對岸報警,所幸5名涉案犯罪嫌疑人均已被警方抓獲。在警方通報中,事主何某某現已安全,無人員受傷。據傳,發生劫持事件所在地是美的集團投資開發的豪宅社區君蘭國際高爾夫生活村。案發經過據該自媒體稱,6月14日下午5點半,佛山公安接到報警電話,報案人稱順德區...
上汽乘用車的車輛智能化發展路程中再填新合作伙伴。記者獲悉,上汽乘用車與京東方精電正式簽署戰略合作協議,雙方將依托各自優勢共同推進車載顯示和交互領域的產品創新,在智能座艙顯示及智能化領域共同打造智慧出行新生態。如今,智能座艙已成為汽車產業發展的新興技術趨勢,其中,車載顯示作為智能座艙主要的人機交互界面,隨著屏幕顯示技術的持續發展,...

史海拾趣

問答坊 | AI 解惑

PAC自動化市場的影響及PLC穩固的市場地位

在今天各類制造廠正在持續地將服務范圍從與用戶協商轉向交鑰匙工程全程承包。用戶則把更多的精力集中在提高核心競爭力,而把自動化和控制的功能委托給自動化的供應商。這就創造了對服務和支持的更大需求,而PAC的多功能、多專業的能力正是可利用和 ...…

查看全部問答∨

綠色繪圖軟件

這款繪圖軟件好不好用下載了就知道! …

查看全部問答∨

沒有并口下載線怎么辦!!!

我用的是周立功的EasyFPGA030,它只支持并口下載的,但是現在手上沒有并口的下載線,我的筆記本上也沒有,同學也沒有!!難道又要花幾十甚至幾百去買個并口下載線,望高手指點!!!!!!!!!…

查看全部問答∨

傳感器參數

各位高人:     我現在選用了一個直線位移傳感器PY2系列的     它上面寫的參數是無限分辨率  位移速度是10m/s     如果我希望測量的位移精度達到0.1mm     怎樣從這兩個參數中,判斷是否滿 ...…

查看全部問答∨

linux-2.6.18內核移植及根文件系統的制做(簡易)

linux-2.6.18內核移植及根文件系統的制做(簡易) 一、        去 http://www.kernel.org 下載內核,下面以 linux-2.6.18.tar.bz2 為例。         [root@Binnary ~ ]# tar –jxvf linux-2.6.18.tar.bz2 & ...…

查看全部問答∨

heihei

愛藝購,藝術的天堂,藝術的寶庫,愛好藝術的人都該去看看,獲取能找到一件稀世珍寶歐…

查看全部問答∨

兩段代碼,上一段顯示為0,,下一段顯示為8.。

#include #define uint unsigned int #define uchar unsigned char sbit duan=P2^6;        //申明U1鎖存器的鎖存端        sbit wei=P2^7;        //申U2鎖存器的鎖存端 void ...…

查看全部問答∨

【為C2000做貢獻】ucos在2812上的移植

ucos在2812上的移植,大家也跑跑系統…

查看全部問答∨

modelsim se添加altera庫 還是不工作

問題是這樣的,在modelsim se中添加了altera的庫,可以看到了。但是在在quartus中調用modelsim se進行仿真時,仍然默認的是work這個庫,仍然會編譯一大堆的altera的東西,我自己添加的altera的庫沒有起到作用。 請問大俠們,該怎么設置可以在調用m ...…

查看全部問答∨

msp430g2553的ADC10外部參考電壓問題

我在做msp430g2553的ADC10外部參考電壓時,想設置一個5V以上的外部參考電壓,可怎么也弄不出來!請各位大蝦指教指教! 下面是我的程序: #include #include \"1602-4.h\" #include \"1602-4.c\" /****************************************** ...…

查看全部問答∨
小廣播
設計資源 培訓 開發板 精華推薦

最新單片機文章
何立民專欄 單片機及嵌入式寶典

北京航空航天大學教授,20余年來致力于單片機與嵌入式系統推廣工作。

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發圈

 
機器人開發圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業務審批[2006]字第258號函 京公網安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 绍兴市| 涞水县| 牟定县| 临湘市| 田阳县| 张北县| 麻江县| 通化县| 从化市| 孝昌县| 西畴县| 海安县| 简阳市| 石首市| 常宁市| 高邮市| 巴楚县| 河源市| 苍梧县| 顺昌县| 遵义县| 林州市| 滁州市| 蒲城县| 乐安县| 东莞市| 五家渠市| 元氏县| 永川市| 五原县| 永清县| 呈贡县| 鹤壁市| 广州市| 霍州市| 桂东县| 河东区| 祁阳县| 禹城市| 林周县| 板桥市|