精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

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

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

3天內不再提示

STM32F1 USB外設在USB系統的位置

冬至子 ? 來源:一個早起的程序員 ? 作者:一個早起的程序員 ? 2023-07-17 15:43 ? 次閱讀

1

STM32F1 USB外設在USB系統的位置

STM32F1 USB外設實現了USB2.0全速總線和APB1總線間的接口。看不懂的話看下圖。

圖片

2

STM32F1 USB外設功能描述

USB外設為PC主機和微控制器所實現的功能之間提供了符合USB規范的通信連接。PC主機和微控制器之間的數據傳輸是通過共享一專用的數據緩沖區來完成的,該數據緩沖區能被USB外設直接訪問。這塊專用數據緩沖區的有效大小由所使用的端點數目和每個端點最大的數據包大小所決定(總共有16端點,PMA大小為512字節,可以用多少拿多少,也可以全用),所有端點共享用512字節緩沖區,最多可用于16個單向或8個雙向端點。USB模塊同PC主機通信,根據USB規范實現令牌包的檢測,數據發送/接收的處理,和握手包的處理。整個傳輸的格式由硬件完成,其中包括CRC的生成和校驗。

也就是說16個端點共享一個512字節的緩沖區,我們可以理解為USB HOST就是通過對這些緩沖區的讀寫來實現和設備的數據交互,其實原理大概就是如此。 如果主機發送數據給設備 ,設備會把USB外設接收的數據放入緩沖區,完畢之后通知CPU讀取數據了, 如果主機讀取USB設備的數據 ,CPU會把數據放到緩沖區,然后告訴USB外設可以發送數據了,USB外設會把緩沖區的數據通過總線發送給主機。

2

STM32F1 USB外設主要特征

1.符合USB2.0全速設備的技術規范。

2.可配置1到8個USB雙向端點,我們可以理解為8個IN端點和8個OUT端點,也就是每一個雙向端點可以被配置為一個IN端點和一個OUT端點,但是這兩個端點共用一個端點寄存器,兩個端點的類型必須是一致的(控制端點、中斷端點、批量端點、同步端點)。

3.外設硬件自動為每一個PID和Packet字段生成CRC效驗,并和其他字段組成一個完整的USB Packet。

4.支持控制傳輸、中斷傳輸、同步傳輸、批量傳輸。

5.支持同步傳輸和批量傳輸雙緩沖機制,比如說我們采集ADC或者接收外部傳感器的數據時必須保持數據的完整性,就可以使用雙緩沖機制防止丟數。

6.支持對自己的掛起和恢復操作。

7.幀鎖定時鐘脈沖生成。當收到一個SOF幀開始包,可以生成一個脈沖信號給其他模塊使用,如果SOF中斷使能,會進入SOF中斷處理函數。

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

    關注

    48

    文章

    7496

    瀏覽量

    151085
  • USB接口
    +關注

    關注

    9

    文章

    700

    瀏覽量

    55582
  • 中斷處理
    +關注

    關注

    0

    文章

    94

    瀏覽量

    10961
  • stm32f1
    +關注

    關注

    1

    文章

    56

    瀏覽量

    12188
  • CRC效驗
    +關注

    關注

    0

    文章

    30

    瀏覽量

    1093
收藏 人收藏

    評論

    相關推薦

    STM32F1系列單片機的時鐘系統

      這是stm32的時鐘系統,時鐘與單片機的關系就好比心臟與人的關系一樣,它為單片機的運行提供時間基準。STM32F1系列單片機的時鐘樹請看圖1
    發表于 03-23 17:44 ?2835次閱讀
    <b class='flag-5'>STM32F1</b>系列單片機的時鐘<b class='flag-5'>系統</b>

    stm32f1做的usb鍵盤,連電腦無法識別怎么解決?

    stm32f1做的usb鍵盤,連電腦無法識別
    發表于 04-11 08:19

    STM32F1的CPU型號

    在講解本節前,筆者先聲明下,筆者在寫這套教程前,參看了很多開發板,目前手頭上的STM32F1不下十余種,每一塊板子最大的區別就是CPU型號不同,外設不同,其最小系統都是一樣的。外設這個
    發表于 08-06 06:41

    STM32F1時鐘系統簡介與相關配置

    :芯片系統內部的時鐘,程序運行的速度由他決定。系統時鐘可來源于HSI,HSE,PLL時鐘?5個藍色方形為STM32F1系列芯片的時鐘源(時鐘源即時鐘的來源, 芯片中所有的時鐘,包括系統
    發表于 08-18 07:05

    STM32F1USB串口該怎樣去使用呢

    STM32F1USB串口該怎樣去使用呢?與STM32F1USB串口基本配置相關的寄存器有哪些呢?
    發表于 12-06 07:09

    STM32F0和STM32F1差異

    帶來的額外工作。如果您的產品需要USB外設,現在就可以訂購一款STM32F070超值系列MCU。?STM32F0x1系列MCU實現了高度的功能集成,提供多種存儲容量和封裝的選擇,為成本
    發表于 08-02 21:46 ?1.6w次閱讀

    STM32F1系列芯片中文參考手冊

    STM32F1系列芯片中文參考手冊(嵌入式開發培訓教程)-STM32F1系列芯片的中文用戶手冊
    發表于 07-30 09:32 ?216次下載
    <b class='flag-5'>STM32F1</b>系列芯片中文參考手冊

    STM32F1官方手冊資料(中英文)

    STM32F1官方手冊資料(中英文)
    發表于 11-05 16:28 ?69次下載

    STM32F1系列產品識別以及編程時容量識別

    STM32F1系列產品識別以及編程時容量識別STM32F1系列產品識別編程時容量識別STM32F1系列產品識別例如:STM32F103VET6STM32代表ARM Cortex-M內核
    發表于 11-23 18:21 ?12次下載
    <b class='flag-5'>STM32F1</b>系列產品識別以及編程時容量識別

    STM32F1F4的區別

    STM32F1F4的區別
    發表于 12-04 13:51 ?24次下載
    <b class='flag-5'>STM32F1</b>和<b class='flag-5'>F</b>4的區別

    STM32f1時鐘系統整理

    STM32f1時鐘系統一、祭出STM32F1的官方時鐘框圖二、寄存器說明1、時鐘控制寄存器RCC_CR第0位:HSION(0,關閉;1,開啟
    發表于 12-14 19:05 ?3次下載
    <b class='flag-5'>STM32f1</b>時鐘<b class='flag-5'>系統</b>整理

    【解決方案】STM32F107VC單片機下運行STM32CubeMX生成的USB_OTG Mass Storage工程,無法識別USB設備的解決辦法

    這是因為:CubeMX生成的代碼里面,沒有響應OTG_FS_IRQn中斷。USB設備模式的電路如下。該電路適合所有的STM32型號。紅框部分為上拉電阻,STM32F1(如STM32F
    發表于 12-28 19:52 ?4次下載
    【解決方案】<b class='flag-5'>STM32F</b>107VC單片機下運行<b class='flag-5'>STM32</b>CubeMX生成的<b class='flag-5'>USB</b>_OTG Mass Storage工程,無法識別<b class='flag-5'>USB</b>設備的解決辦法

    AN3427_從STM32F1移植到STM32F2的應用手冊

    AN3427_從STM32F1移植到STM32F2的應用手冊
    發表于 11-21 17:06 ?10次下載
    AN3427_從<b class='flag-5'>STM32F1</b>移植到<b class='flag-5'>STM32F</b>2的應用手冊

    AN4904_從STM32F1STM32F4的軟件移植

    AN4904_從STM32F1STM32F4的軟件移植
    發表于 11-21 17:06 ?3次下載
    AN4904_從<b class='flag-5'>STM32F1</b>到<b class='flag-5'>STM32F</b>4的軟件移植

    STM32F1系列MCU硬件電路USB/CAN接口設計

    STM32F1系列MCU支持USB2.0接口,查閱芯片規格書知道,當使用全速USB時,需要在信號線DP上上拉1.5kΩ至3.3V,詳細如下圖圈出的note所示。
    發表于 09-27 14:43 ?5295次閱讀
    <b class='flag-5'>STM32F1</b>系列MCU硬件電路<b class='flag-5'>USB</b>/CAN接口設計