色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何在STM32F4 ARM MCU和Python之間建立USART通信

454398 ? 來源:wv ? 2019-10-16 11:06 ? 次閱讀

步驟1:軟件和硬件要求

在硬件方面,您需要:

STM32F4發(fā)現(xiàn)板(或其他任何STM32板)

USB轉(zhuǎn)TTL轉(zhuǎn)換器

在軟件方面:

STM32CubeMX

Keil uVision5

已安裝串行庫的Python

步驟2:STM32CubeMX配置

首先讓我們了解我們想要做什么。我們希望通過USART從Python將數(shù)據(jù)傳輸?shù)桨迳希z查是否有正確的數(shù)據(jù)并切換LED。因此,我們需要啟用USART和Led。

從“連接性”選項卡中啟用USART2。

將模式更改為異步

波特率更改為9600 Bits/s

無奇偶校驗的字長為8位

無奇偶校驗位

DMA設(shè)置中以特殊模式添加USART2_RX

從NVIC設(shè)置中啟用USART2全局中斷

然后生成代碼:)

通過單擊PD12啟用LED

步驟3:Keil軟件開發(fā)

#include

#include

在字符串操作和定義布爾變量時將需要這些庫。

/* USER CODE BEGIN 2 */

HAL_UART_Receive_DMA(&huart2, (uint8_t *) data_buffer, 1);

/* USER CODE END 2 */

此處,UART

/* USER CODE BEGIN 4 */

void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)

{

/* Prevent unused argument(s) compilation warning */

UNUSED(huart);

/* NOTE: This function should not be modified, when the callback is needed,

the HAL_UART_RxCpltCallback could be implemented in the user file

*/

if(data_buffer[0] != ‘ ’){

data_full[index_] = data_buffer[0];

index_++;

}else{

index_ = 0;

finished = 1;

}

//HAL_UART_Transmit(&huart2, data_buffer, 1, 10);

}

/* USER CODE END 4 */

這是ISR,當(dāng)我們得到一個字節(jié)的字符時,它被激活。所以。我們得到該字節(jié)并將其寫入包含完整接收數(shù)據(jù)的data_full,直到得到‘\ n’。當(dāng)我們得到‘\ n’時,我們使完成標(biāo)志1并在while循環(huán)中:

while (1)

{

/* USER CODE END WHILE */

if(finished){

if(strcmp(data_full, cmp_) == 0){

HAL_GPIO_TogglePin(GPIOD, GPIO_PIN_12);

}

memset(data_full,‘’,strlen(data_full));

finished = 0;

}else{

__NOP ();

}

/* USER CODE BEGIN 3 */

}

如果完成標(biāo)志為HIGH,我們將比較完整接收的數(shù)據(jù)和我們想要的數(shù)據(jù)的內(nèi)容,如果它們是等于我們切換領(lǐng)導(dǎo)。之后,我們清除完成標(biāo)志,等待新數(shù)據(jù),并清除data_full數(shù)組,以免覆蓋該數(shù)組。

步驟4:Python軟件開發(fā)

因此,這里我們要在結(jié)尾處發(fā)送帶有‘/n’的數(shù)字,因為Keil軟件需要查看它才能知道結(jié)尾。

import serial

ser = serial.Serial(‘COM17’) #check that port on your device from Device Manager

ser.write(b‘24 ’)

您應(yīng)該看到每次您發(fā)送“ 24 \ n”時,LED都會切換。如果您發(fā)送其他任何內(nèi)容,它都不會影響它。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    17185

    瀏覽量

    351744
  • USART
    +關(guān)注

    關(guān)注

    1

    文章

    195

    瀏覽量

    30901
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4800

    瀏覽量

    84823
  • STM32F4
    +關(guān)注

    關(guān)注

    3

    文章

    194

    瀏覽量

    28096
收藏 人收藏

    評論

    相關(guān)推薦

    STM32項目實戰(zhàn):基于STM32F4的智能燈光控制系統(tǒng)(LVGL),附項目教程/源碼

    《智能燈光控制系統(tǒng)_STM32F4》項目完整文檔、項目源碼,私信小雯老師免費領(lǐng)取。STM32項目實戰(zhàn)之“智能燈光控制系統(tǒng)”(基于STM32F4)今天小編來分享一個《智能燈光控制系統(tǒng)》的項目案例,硬件
    的頭像 發(fā)表于 10-17 16:16 ?886次閱讀
    <b class='flag-5'>STM32</b>項目實戰(zhàn):基于<b class='flag-5'>STM32F4</b>的智能燈光控制系統(tǒng)(LVGL),附項目教程/源碼

    【GD32 MCU 移植教程】9、從 STM32F10x 系列移植到 GD32F30x 系列

    GD32F30x 系列 MCU 是基于 Arm? Cortex?-M4 處理器的 32 位通用微控制器,與 STM32F10x 系列
    的頭像 發(fā)表于 09-07 09:57 ?868次閱讀
    【GD32 <b class='flag-5'>MCU</b> 移植教程】9、從 <b class='flag-5'>STM32F</b>10x 系列移植到 GD32<b class='flag-5'>F</b>30x 系列

    【GD32 MCU 移植教程】8、從 STM32F4xx 系列移植到 GD32F4xx 系

    GD32F4xx 系列 MCU 是基于 Arm? Cortex?-M4 處理器的 32 位通用微控制器,與 STM32F4xx系列
    的頭像 發(fā)表于 09-06 09:40 ?1406次閱讀
    【GD32 <b class='flag-5'>MCU</b> 移植教程】8、從 <b class='flag-5'>STM32F4</b>xx 系列移植到 GD32<b class='flag-5'>F4</b>xx 系

    STM32F40xxx、STM32F41xxx、STM32F42xxx、STM32F43xxx中文手冊

    STM32F4系列單片機中文手冊
    發(fā)表于 08-08 14:32 ?2次下載

    請問stm32f4的dsp庫里面fir函數(shù)如何使用?

    請問在stm32f4 的dsp庫里面有好幾個關(guān)于fir的函數(shù),因為沒有源碼,我也沒有什么關(guān)于這個dsp函數(shù)的介紹,所以看不懂這些函數(shù)怎么用呢。比如說void arm
    發(fā)表于 05-17 08:07

    STM32f4采集的視頻怎么在電腦顯示?

    我用stm32f4采集到的視頻想通過網(wǎng)線傳輸?shù)诫娔X,在電腦上顯示采集到的視頻,有沒有大神做個過視頻傳輸啊,我該怎么弄啊???
    發(fā)表于 05-14 08:25

    stm32f4批量燒錄,用什么軟件?

    請問,stm32f4批量燒錄,用什么軟件
    發(fā)表于 05-09 06:02

    stm32f4 FLASH_ProgramDoubleWord函數(shù)數(shù)據(jù)不能寫入flash的原因?

    STM32F401芯片,調(diào)用flash寫函數(shù)時,如果寫一個字,也就是調(diào)用stm32f4 FLASH_ProgramWord函數(shù),能正確寫入;如果換成stm32f4 FLASH_ProgramDoubleWord函數(shù),數(shù)據(jù)不能寫
    發(fā)表于 04-12 06:50

    stm32F4 64位變量操作異常怎么解決?

    stm32F4 64位變量使用報錯解決
    發(fā)表于 04-02 07:16

    STM32F4系列USB OTG FS如何使用自定義的USB端點?

    我們公司有一款設(shè)備,使用了0X06和0X88這兩個端點和上位機通信,現(xiàn)在我計劃使用STM32F4系列單片機替代。但是看F4的參考手冊,它的端點只有0,1,2,3這四個,請問我可以通過配置寄存器的方式讓
    發(fā)表于 04-02 07:12

    STM32F4內(nèi)部的DAC可以分時復(fù)用嗎?

    請問,STM32F4內(nèi)部的DAC可以分時復(fù)用嗎?
    發(fā)表于 03-28 08:38

    請問引腳數(shù)相同的STM32F2的程序可以直接運行在STM32F4的上嗎?

    引腳數(shù)相同的STM32F2的程序可以直接運行在STM32F4的芯片上嗎?手冊上說F4全兼容F2的軟件
    發(fā)表于 03-27 07:43

    STM32F4的裸機源碼可以移植到linux ARM上運行嗎? 具體需要怎么實現(xiàn)呢?

    STM32F4的裸機源碼可以移植到linux ARM開發(fā)板上運行嗎? 具體需要怎么實現(xiàn)呢?
    發(fā)表于 03-20 07:00

    Arm?Cortex?-M4 32位MCU GD32F303xB數(shù)據(jù)手冊

    電子發(fā)燒友網(wǎng)站提供《Arm?Cortex?-M4 32位MCU GD32F303xB數(shù)據(jù)手冊.pdf》資料免費下載
    發(fā)表于 01-14 09:54 ?0次下載
    <b class='flag-5'>Arm</b>?Cortex?-M<b class='flag-5'>4</b> 32位<b class='flag-5'>MCU</b> GD32<b class='flag-5'>F</b>303xB數(shù)據(jù)手冊

    Arm?Cortex?-M4 32位MCU GD32F303xx數(shù)據(jù)手冊

    電子發(fā)燒友網(wǎng)站提供《Arm?Cortex?-M4 32位MCU GD32F303xx數(shù)據(jù)手冊.pdf》資料免費下載
    發(fā)表于 01-14 09:49 ?9次下載
    <b class='flag-5'>Arm</b>?Cortex?-M<b class='flag-5'>4</b> 32位<b class='flag-5'>MCU</b> GD32<b class='flag-5'>F</b>303xx數(shù)據(jù)手冊
    主站蜘蛛池模板: 69人体阴展网| 亚洲视频91| 精品网站一区二区三区网站| 国产激情视频在线| 被同桌摸出水来了好爽的视频| 在线免费视频a| 亚洲中文字幕无码一去台湾 | 一本大道手机在线看| 亚洲国产精品一区二区第一页| 特污兔午夜影视院| 乌克兰16~18sex| 偷窥美女3| 无颜之月5集全免费看无删除| 视频一区亚洲视频无码| 十分钟视频影院免费| 视频一区国产在线二区| 午夜理论在线观看不卡大地影院| 天天爽夜夜爽| 亚洲 自拍 欧洲 视频二区| 亚洲AV永久无码精品老司机蜜桃| 亚州综合网| 亚洲欧美综合视频| 伊人久久大香网| 最近免费中文字幕完整版HD | 国内精品乱码卡一卡2卡三卡| 国产免费啪嗒啪嗒视频看看| 国产区精品综合在线| 后入内射国产一区二区| 久久精品观看| 男女交性视频无遮挡全过程| 欧美高清69vivo| 青青青草免费| 同桌上课把奶露出来给我玩| 亚洲国产免费观看视频| 一品道门在线视频| 97久久久久| 东北小伙FREECHINESE野外| 国产睡熟迷奷系列网站| 久久精品小视频| 秋霞伦理电影在2017韩国在线伦| 少妇高潮惨叫久久久久久欧美|