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

歷史上的今天

今天是:2024年09月13日(星期五)

正在發生

2018年09月13日 | STM32學習筆記之USB庫文件分析

發布者:pengbinyyy 來源: eefocus關鍵字:STM32  USB庫文件 手機看文章 掃描二維碼
隨時隨地手機看文章

主要分析下其他一些文件:

usb_core.c、

usb_init.c、

usb_int.c、

usb_mem.c、

usb_reg.c

usb_sil.c

1、

usb_core.c   --  這個文件從名字上就可知,這是usb的核心文件。這個文件主要是USB在枚舉過程中的一些功能函數。比如控制傳輸的建立階段、數據階段、狀態階段的各種標準請求函數,各個階段的處理函數等。


uint8_t Setup0_Process(void); uint8_t Post0_Process(void); uint8_t Out0_Process(void); uint8_t In0_Process(void); RESULT Standard_SetEndPointFeature(void); RESULT Standard_SetDeviceFeature(void); uint8_t*Standard_GetConfiguration(uint16_t Length); RESULT Standard_SetConfiguration(void); uint8_t *Standard_GetInterface(uint16_t Length); RESULT Standard_SetInterface(void); uint8_t *Standard_GetDescriptorData(uint16_t Length, PONE_DESCRIPTOR pDesc); uint8_t *Standard_GetStatus(uint16_t Length); RESULT Standard_ClearFeature(void); void SetDeviceAddress(uint8_t); void NOP_Process(void);

2、

usb_init.c     -   文件。這個文件很簡單,只有一個函數:void USB_Init(void),這個函數也很簡單,就是注冊usb設備的基本信息:


/******************************************************************************* * Function Name : USB_Init * Description : USB系統初始化 * Input : None. * Output : None. * Return : None. *******************************************************************************/ void USB_Init(void) { pInformation = &Device_Info; //注冊設備信息結構體 pInformation->ControlState = 2; //控制狀態為IN_DATA pProperty = &Device_Property; //注冊設備的常用一些函數結構體 pUser_Standard_Requests = &User_Standard_Requests; /* Initialize devices one by one */ pProperty->Init(); //注冊初始化函數 }

至于pProperty->Init()這樣的寫法,就是執行pProperty這個結構體的Init函數指針指向的函數,我們在usb_prop.c的DEVICE_PROP Device_Property中曾注冊過初始化函數CustomHID_init()。


3、

usb_int.c    -   文件,這個文件定義了兩個中斷中斷服務程序:低優先級的端點正確傳輸中斷服務程序void CTR_LP(void)和高優先級端點正確傳輸的中斷服務程序void CTR_HP(void)。我們這個工程只使用了void CTR_LP(void)這個函數,CTR_LP在usb.istr.c文件的ISTR中斷事件的中斷服務程序USB_Istr中如果數據或請求正確傳輸正確就會被調用。

4、

usb_mem.c  -  主要有兩個內存中的數據搬移函數:一個是從PMA緩沖區中拷貝數據到用戶指定的內存空間PMAToUserBufferCopy(),很明顯這個函數是在端點接收到數據后才會使用到的;另一個是從用戶空間拷貝數據到PMA緩沖區中,在端點要發送數據數才會被調用。

5、

usb_reg.c  -    文件,是跟stm32的USB相關寄存器相關的代碼。看這段代碼就要閱讀stm32寄存器了。這個函數定義了設置和讀取各個寄存器的值或某位的值,具體的看代碼。

6、

usb_sil.c   -   文件。端點具體的接發數據函數就在這里定義。這個文件也很簡單,只有三個函數:USB_SIL_Init()初始化USB設備IP和端點;USB_SIL_Write()往選中的端點中寫入數據;USB_SIL_Read()從選中的端點中讀出數據


關鍵字:STM32  USB庫文件 引用地址:STM32學習筆記之USB庫文件分析

上一篇:STM32官方庫文件分析及使用
下一篇:STM32F0在IAR新建工程

推薦閱讀

? ????集微網9月12日報道(記者 張軼群)與高通將近兩年的交易案因為收購期的“靜默”,一度讓恩智浦顯得有些沉寂。如今,隨著交易的終止,恩智浦又以獨立的姿態出現在世人面前。?日前,恩智浦在深圳舉行了“2018恩智浦未來科技峰會”,提供了超過100個小時的技術研討會百余項演示,覆蓋嵌入式人工智能、物聯網、邊緣計算、安全互聯汽車等領域,同...
(文章來源:中科羅伯特機器人學院) 工業機器人的普及已經成為我國工業發展中的重要一環,但人才的大量匱乏,卻讓我國的機器人產業止步不前,為了應對和解決我國工業機器人技術技能人才的培養和發展問題, 在2017年中共中央、國務院印發的《新時期產業工人隊伍建設改革方案》,提出了“構建產業工人技能形成體系”,著力提升產業工人的技能素質的要求...
微軟的雙屏Surface Duo將于明天在美國推出,該公司的首款Android設備已經醞釀了多年。在接受The Verge的長篇采訪時,Surface發明者、微軟首席產品官Panos Panay透露了很多有趣的細節,介紹了Surface Duo的誕生過程,微軟為何最終選擇了Android而不是基于Windows的操作系統。  據Panay介紹,微軟在2014年左右開始研發雙屏移動設備,此前...
LED原理圖及2440寄存器說明匯編語言編寫控制LED燈.text /*.text部分是處理器開始執行代碼的地方,指定了后續編譯出來的內容放在代碼段*/.global _start; /*.global關鍵字用來讓一個符號對鏈接器可見,可以供其他鏈接對象模塊使用;*/ /* 告訴編譯器后續跟的是一個全局可見的名字*/ /*.gl...

史海拾趣

問答坊 | AI 解惑

EM78P156中文

有要的就下吧,記得頂一下。別沉了…

查看全部問答∨

北京2008安防展上的新動向---3

3、“平安城市”的概念成為新時期的監控行業的熱點。除了網絡化、無線有線結合、高倍數鏡頭的趨勢外,專門開發的高性能的攝像機和光學鏡頭引起了參觀者的興趣。高分辨率、超寬動態、超低照度。…

查看全部問答∨

智能車信息回放系統6

智能車信息回放系統6…

查看全部問答∨

[尋求] 飛思卡爾HCS08系列單片機高手

飛思卡爾HCS08系列單片機, 需要在CodeWarrior的環境下用C語言編程, 單片機需要通過SPI送8位指令給一個IC, 然后接受16位數據. 3次操作后對所接受的數據進行計算, 把得到的結果送到RS232 IC. 已有部分源程序. 并要把初始化數據寫到EEPROM 或 FLASH. ...…

查看全部問答∨

WinCE初學者求一道具體API編程題

WinCE API 編程: 實現簡單的畫圖。至少能畫線、矩形、圓等;能選擇畫筆的粗細、顏色;筆刷的顏色等。…

查看全部問答∨

已有文件abc.inf和abc.sys,如何用wise打包驅動?

reference manual已閱,但是依然沒有找到方法。 基本的使用我已經明白,設計到inf如何使用的部分不是很清楚,目前已經完成的操作就是: 1.拷貝文件。 abc.sys -> $(WINNT)\\System32\\DRIVERS abc.inf -> $(WINNT)\\inf 2.寫注冊表 [HKEY ...…

查看全部問答∨

請教大家一個Directx的問題

我在vs2005下開發CE程序,已經安裝dx81sdk,并在vs中配置了dxsdk的頭文件和庫文件,路徑均在最前面.在程序中也引用了dxguid.lib ddraw.lib,程序很簡單,只有幾句: LPDIRECTDRAW lpDD=NULL; if(FAILED(DirectDrawCreate(NULL , &lpDD , NULL))) re ...…

查看全部問答∨

CE下怎么因隱藏掉開始菜單啊(不用aygshell中SH打頭的函數)

CE下怎么因隱藏掉開始菜單啊(不用aygshell中SH打頭的函數)…

查看全部問答∨

Freescale 的智能電表產品方案

          筆者在上海參加FTF ,聽中國電力科學院首席專家胡學浩中國智能電網發展戰略部署和實踐的報告,智能電網就是SMART GRID ,中國建設堅強智能電網意義重大,具體實施是三步走。筆者對智能電網的智 ...…

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

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

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

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發圈

 
機器人開發圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業務審批[2006]字第258號函 京公網安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 庄浪县| 仲巴县| 凤台县| 修水县| 平顶山市| 安宁市| 庐江县| 平遥县| 贵溪市| 营口市| 措勤县| 甘孜县| 雅安市| 徐汇区| 蛟河市| 革吉县| 合山市| 营口市| 梅州市| 大名县| 利川市| 原平市| 潮州市| 农安县| 新建县| 元阳县| 神池县| 黄山市| 西乡县| 杭锦后旗| 绵阳市| 东乡| 泰安市| 文登市| 仙桃市| 阜康市| 塘沽区| 明水县| 临湘市| 东兴市| 东乡族自治县|