在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

rt-thread studio新建stm32f407工程

冬至子 ? 來源:YZRD ? 作者:YZRD ? 2023-10-12 17:42 ? 次閱讀

rt-thread studio新建stm32f407工程,使用的版本是:2.2.6,stm32f4的支持包版本為0.2.2。先不用0.2.3,因為使用0.2.3建立的模板編譯會報錯。。

按照模板新建工程,默認使用內部時鐘,編譯,正常,串口1輸出正常。修改為外部晶振,按照要求修改了代碼,如下:

void system_clock_config(int target_freq_mhz)
{
#if false
RCC_OscInitTypeDef RCC_OscInitStruct = { 0 };
RCC_ClkInitTypeDef RCC_ClkInitStruct = { 0 };
/** Configure the main internal regulator output voltage
/
__HAL_RCC_PWR_CLK_ENABLE();
__HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1);
/
* Initializes the CPU, AHB and APB busses clocks
/
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI;
RCC_OscInitStruct.HSIState = RCC_HSI_ON;
RCC_OscInitStruct.HSICalibrationValue = RCC_HSICALIBRATION_DEFAULT;
RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSI;
RCC_OscInitStruct.PLL.PLLM = 8;
RCC_OscInitStruct.PLL.PLLN = target_freq_mhz;
RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2;
RCC_OscInitStruct.PLL.PLLQ = 4;
if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
{
Error_Handler();
}
/
* Initializes the CPU, AHB and APB busses clocks
/
RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK | RCC_CLOCKTYPE_SYSCLK | RCC_CLOCKTYPE_PCLK1 | RCC_CLOCKTYPE_PCLK2;
RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV4;
RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV2;
if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_5) != HAL_OK)
{
Error_Handler();
}
#else
RCC_OscInitTypeDef RCC_OscInitStruct = {0};
RCC_ClkInitTypeDef RCC_ClkInitStruct = {0};
/
* Configure the main internal regulator output voltage
/
__HAL_RCC_PWR_CLK_ENABLE();
__HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1);
/
* Initializes the RCC Oscillators according to the specified parameters

in the RCC_OscInitTypeDef structure.
/
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE;
RCC_OscInitStruct.HSEState = RCC_HSE_ON;
RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
RCC_OscInitStruct.PLL.PLLM = 25;
RCC_OscInitStruct.PLL.PLLN = 336;
RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2;
RCC_OscInitStruct.PLL.PLLQ = 4;
if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
{
Error_Handler();
}
/
* Initializes the CPU, AHB and APB buses clocks
*/
RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
|RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2;
RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV4;
RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV2;
if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_5) != HAL_OK)
{
Error_Handler();
}
#endif
}

同時修改了宏定義:

#define BSP_CLOCK_SOURCE ("HSE")
#define BSP_CLOCK_SOURCE_FREQ_MHZ ((int32_t)25)
#define BSP_CLOCK_SYSTEM_FREQ_MHZ ((int32_t)168)

編譯正常,調試發現輸出不正常,亂碼。

分析應該是時鐘配置不正確,先檢查系統時鐘,發現不是設定的系統時鐘,通過調試發現還需要修改stm32f407zgt6driversstm32f4xx_hal_conf.h文件中的宏定義:

#if !defined (HSE_VALUE)
#define HSE_VALUE ((uint32_t)25000000U) /*!< Value of the External oscillator in Hz /
#endif /
HSE_VALUE */

原先為8M,需要改為實際25M,重新編譯調試,串口1正常輸出。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • RCC
    RCC
    +關注

    關注

    0

    文章

    94

    瀏覽量

    27328
  • 串口輸出
    +關注

    關注

    0

    文章

    16

    瀏覽量

    7605
  • STM32F407
    +關注

    關注

    15

    文章

    188

    瀏覽量

    30154
  • RT-Thread
    +關注

    關注

    31

    文章

    1348

    瀏覽量

    41369
收藏 人收藏

    評論

    相關推薦

    RT-Thread Studio新建stm32f407-atk-explorer工程運行qemu失敗,是什么原因引起的?

    RT-Thread Studio新建stm32f407-atk-explorer工程運行qemu失敗,是什么原因引起的?該如何修改?
    發表于 07-16 06:08

    如何使用RT-Thread Studio新建項目

    RT-Thread Studio學習之使用外部時鐘系統簡介新建RT-Thread項目使用外部時鐘簡介本文將基于STM32F407VET芯片介
    發表于 01-20 07:51

    RT-Thread Studio怎么配置STM32F407的TCPSERVER服務呢?

    RT-Thread Studio怎么配置STM32F407的TCPSERVER服務?
    發表于 12-29 14:53

    新建STM32F407工程編譯不通過是何原因?

    stm32f103工程,編譯正常,通過rt-thread studio打開cubemax,不進行任何配置,點擊生成代碼,然后再在rt-thread
    發表于 01-13 14:18

    RS485驅動包的使用

    開發環境:野火的stm32f407rt-thread studio版本是版本: 2.2.6,stm32f4的資源包為0.2.2。工程使用上
    發表于 02-09 14:26

    rt-thread studio新建stm32f407工程

    rt-thread studio新建stm32f407工程,使用的版本是:2.2.6,stm32f
    發表于 02-10 16:49

    RT-Thread中Lan8720和lwip協議棧的使用

    。 修改工程使用外部晶振,可參考第一篇文章rt-thread studio新建stm32f407工程
    發表于 02-13 14:55

    RT-Thread STM32 配置系統時鐘(使用外部晶振)

    RT-Thread STM32 配置系統時鐘開發環境芯片:STM32F103RCT6RT-Thread Studio: V1.0.6(現在已經更新到1.1.3,由于本人使用RTT開發已
    發表于 12-14 18:45 ?15次下載
    <b class='flag-5'>RT-Thread</b> <b class='flag-5'>STM32</b> 配置系統時鐘(使用外部晶振)

    RT-Thread文檔_正點原子探索者 STM32F407 上手指南

    RT-Thread文檔_正點原子探索者 STM32F407 上手指南
    發表于 02-22 18:25 ?15次下載
    <b class='flag-5'>RT-Thread</b>文檔_正點原子探索者 <b class='flag-5'>STM32F407</b> 上手指南

    RT-Thread使用cjson軟件包發送64位長整型數據

    開發環境:野火的stm32f407rt-thread studio版本是版本: 2.2.6,stm32f4的資源包為0.2.2,rt-thread
    的頭像 發表于 10-11 15:09 ?1188次閱讀
    <b class='flag-5'>RT-Thread</b>使用cjson軟件包發送64位長整型數據

    RT-Thread移植使用webserver (lwip+httpd)

    開發環境:野火的stm32f407rt-thread studio版本是版本: 2.2.6,stm32f4的資源包為0.2.2,rt-thread
    的頭像 發表于 10-12 12:49 ?1645次閱讀
    <b class='flag-5'>RT-Thread</b>移植使用webserver (lwip+httpd)

    RT-Thread在Lan8720a和 lwip基礎上移植ntp流程

    開發環境:野火的stm32f407rt-thread studio版本是版本: 2.2.6,stm32f4的資源包為0.2.2。以RT-Threa
    的頭像 發表于 10-12 16:59 ?2371次閱讀
    <b class='flag-5'>RT-Thread</b>在Lan8720a和 lwip基礎上移植ntp流程

    RT-Thread使用Soft RTC(軟件模擬RTC)

    開發環境:野火的stm32f407rt-thread studio版本是版本: 2.2.6,rt-thread 使用版本為4.0.3,stm32f
    的頭像 發表于 10-12 17:39 ?934次閱讀
    <b class='flag-5'>RT-Thread</b>使用Soft RTC(軟件模擬RTC)

    RT-Thread中Lan8720和lwip協議棧的使用

    開發環境:野火的stm32f407rt-thread studio版本是版本: 2.2.6,stm32f4的資源包為0.2.2,Agile Modbus軟件包版本為v1.1.2。
    的頭像 發表于 10-13 10:19 ?2054次閱讀
    <b class='flag-5'>RT-Thread</b>中Lan8720和lwip協議棧的使用

    RS485驅動包的使用

    開發環境:野火的stm32f407rt-thread studio版本是版本: 2.2.6,stm32f4的資源包為0.2.2。工程使用上
    的頭像 發表于 10-13 10:33 ?948次閱讀
    RS485驅動包的使用
    主站蜘蛛池模板: 在线看3344免费视频 | 国产产一区二区三区久久毛片国语 | 看一级特黄a大片日本片 | 午夜免费福利在线 | 毛片色毛片18毛片美女 | 欧美高清免费一级在线 | 国产精品久久在线 | 男女交性视频免费播放视频 | 不卡精品国产_亚洲人成在线 | 天天爱天天做色综合 | 欧美性色欧美a在线观看 | 色综合久久综精品 | 黄色免费的视频 | 亚洲综合成人网在线观看 | 天天干天天爽 | 又粗又长又大真舒服好爽漫画 | 爽爽爽爽爽爽a成人免费视频 | 操她射她 | 日本番囗 | 免费色视频网站 | 翘臀白浆 | 椎名空中文字幕一区二区 | 欧美二级黄色片 | 国产主播在线看 | 四虎最新免费网址 | 亚洲精品久久久久久婷婷 | 国产精品免费看久久久久 | 三级在线观看视频 | 精品三级内地国产在线观看 | 69日本xxxxxxxxx19| 美女又爽又黄视频 | 黄蓉h肉辣文大全 | 亚洲四虎 | 久久久久久久免费 | 一区二区三区四区精品 | 日韩啪啪电影 | 色天天综合色天天看 | 性xxxxhd高清 | 特黄视频 | 免费爱做网站在线看 | 免费国产黄网站在线观看视频 |