freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于stm32的usb簡易鼠標(biāo)畢業(yè)設(shè)計(jì)論文(編輯修改稿)

2025-07-21 16:13 本頁面
 

【文章內(nèi)容簡介】 于枚舉是否成功,所以程序設(shè)計(jì)的重點(diǎn)在于標(biāo)準(zhǔn)描述符部分的編寫,因?yàn)槊杜e過程就是檢查USB設(shè)備發(fā)送的USB標(biāo)準(zhǔn)請求能否正常返回的過程。USB協(xié)議規(guī)定了標(biāo)準(zhǔn)的設(shè)備請求為八個(gè)字節(jié)。這八字節(jié)在默認(rèn)狀態(tài)下由控制端點(diǎn)零發(fā)出,用在控制傳輸?shù)慕⑦^程中。任何USB設(shè)備都要能夠接收大于八字節(jié)的數(shù)據(jù)。USB協(xié)議規(guī)定了十一個(gè)標(biāo)準(zhǔn)請求。 標(biāo)準(zhǔn)請求及代碼標(biāo)準(zhǔn)請求值標(biāo)準(zhǔn)請求值GET_STATUS0GET_CONFIGURATION8CLEAR_FEATURE1SET_CONFIGURATION9SET_FEATURE3GET_INTERFACE10SET_ADDRESS5SET_INTERFACE11GET_DISCRIPTOR6SYNCH_FRAME12SET_DISCRIPTOR7其中獲取描述符請求GET_DESCRIPTOR在枚舉過程中用的最多。主機(jī)通過發(fā)送獲取描述符的請求獲取設(shè)備的各種描述符,這樣就可以得知設(shè)備的端點(diǎn)情況、設(shè)備類型等各種信息。 獲取描述符請求的結(jié)構(gòu)bmRequestTypebRequestwValuewIndexwLength數(shù)據(jù)過程0x800x06描述符類型和索引0或語言ID描述符長度描述符 在上表中的wValue這一項(xiàng)中,低字節(jié)表示索引號,其具體的作用是在相同種類的描述符中確定一個(gè)描述符。它的高字節(jié),也就是第二字節(jié),用來描述類型編號。設(shè)備在收到描述符請求后,就會按照描述符類型的編號,返回對應(yīng)的描述符。wIndex用在需要獲取字符串的過程中,可以用它來標(biāo)明字符串的語言ID號,其他時(shí)候?yàn)榱恪?描述符類型及編號類型設(shè)備描述符配置描述符字符串描述符接口描述符端點(diǎn)描述符編號12345 對于全速模式和低速模式,只有獲取設(shè)備、配置和字符串描述符這三種。在返回配置描述符的時(shí)候,接口描述符、端點(diǎn)描述符和類特殊描述符(如HID描述符和報(bào)告描述符)要一起返回,這兩類描述符不能單獨(dú)請求返回。字符串描符設(shè)備描述符 配置描述符 接口描述符HID描符符 報(bào)告描符符物理串描符符端點(diǎn)描述符 HID設(shè)備描述符結(jié)構(gòu) USB鼠標(biāo)的運(yùn)行①程序采用JTAG下載,將開發(fā)板通過下載器連接到電腦,并用一根USB數(shù)據(jù)線把開發(fā)板連接到電腦的USB上。②,編譯連接工程。③檢查無誤后,點(diǎn)擊“Target Option”按鈕可查看芯片類型和下載方式,點(diǎn)擊“Debug”設(shè)置完成后,在主界面點(diǎn)擊“Download”下載。④重啟開發(fā)板。電腦會提示“找到新的USB設(shè)備”,因?yàn)槭菢?biāo)準(zhǔn)USB設(shè)備,所電腦會自動安裝驅(qū)動。⑤分別控制開發(fā)板上的四個(gè)鍵,觀察電腦屏幕上鼠標(biāo)光標(biāo)的變化,如果光標(biāo)隨按鍵按下移動,則表明程序運(yùn)行成功,一個(gè)USB簡易鼠標(biāo)就做好了。 硬件實(shí)現(xiàn)。圖 設(shè)備管理器 。 STM32F103開發(fā)板河南城建學(xué)院本科畢業(yè)設(shè)計(jì)(論文) 設(shè)計(jì)總結(jié) 設(shè)計(jì)總結(jié) 隨著計(jì)算機(jī)技術(shù)的發(fā)展,個(gè)人電腦的價(jià)格越來越低,現(xiàn)在基本上每個(gè)家庭都有一臺電腦,而鼠標(biāo)作為與電腦配套的設(shè)備之一,正處于開發(fā)研制的高潮。通過學(xué)習(xí)設(shè)計(jì)USB鼠標(biāo),不僅與時(shí)代接軌,畢業(yè)之后可以從事相關(guān)工作,而且也為嵌入式系統(tǒng)的開發(fā)奠定了基礎(chǔ)。論文研究了基于STM32的嵌入式系統(tǒng)的實(shí)現(xiàn)方案,并對HID協(xié)議和USB的標(biāo)準(zhǔn)請求進(jìn)行了深入學(xué)習(xí),最終實(shí)現(xiàn)了以STM32為核心的USB簡易鼠標(biāo)。此鼠標(biāo)屬于HID類設(shè)備,在現(xiàn)在的各種Windows系統(tǒng)中都可以即插即用,不需要再開發(fā)安裝驅(qū)動程序?,F(xiàn)在的電腦都至少配備了兩個(gè)以上的USB接口,不夠用的話,還可以用USB集線器拓展,非常方便,所以USB設(shè)備的應(yīng)用前景非常廣闊。在完全掌握設(shè)計(jì)USB鼠標(biāo)之后,設(shè)計(jì)其他的HID設(shè)備也會非常簡單。 本論文主要完成了以下工作: 學(xué)習(xí)了USB協(xié)議,并對HID設(shè)備進(jìn)行了深入的研究與分析; 了解STM32單片機(jī),熟練掌握了STM32F103開發(fā)板的使用; 對HID設(shè)備的開發(fā)流程開發(fā)和程序進(jìn)行分析與學(xué)習(xí); 編寫了程序代碼并下載驗(yàn)證,對程序中的錯(cuò)誤經(jīng)過多次的修改,最終達(dá)到理想結(jié)果。 當(dāng)然在設(shè)計(jì)過程中也出現(xiàn)了這樣那樣的問題,特別是在對USB協(xié)議的理解上,因?yàn)槲也皇菍W(xué)嵌入式的,看了一個(gè)月的書都沒弄懂USB是怎么通信的。本來選這個(gè)題目就是為了學(xué)東西,雖然我確實(shí)沒有什么天賦,但不論遇到什么困難,都不能讓我止步。最終在我看完了報(bào)告描述符的實(shí)現(xiàn)方法之后,明白了整個(gè)USB鼠標(biāo)的實(shí)現(xiàn)過程。還有就是設(shè)備有顯示但就是不能工作的問題,通過向同學(xué)和老師請教,原來是報(bào)告描述符的程序出錯(cuò),修改之后就完美運(yùn)行了。附 錄附錄A /******************************************************************* File : * Hardware Environment: stm32f103* Build Environment : RealView MDKARM Version: * Version : * By : fakor******************************************************************//*Includes */include include include include ifdef __GNUC__ /* With GCC/RAISONANCE, small printf (option LD LinkerLibrariesSmall printf set to 39。Yes39。) calls __io_putchar() */ define PUTCHAR_PROTOTYPE int __io_putchar(int ch)else define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)endif /* __GNUC__ *//* Private function prototypes */void Delay (uint32_t nCount)。 49/****************************************************************** Function Name : main* Description : Main program* Input : None* Output : None* Return : None* Attention : None*****************************************************************/int main(void){Set_System()。USB_Interrupts_Config()。Set_USBClock()。USB_Init()。while (1){ if (bDeviceState == CONFIGURED) { if (JoyState() != 0) { Joystick_Send(JoyState())。 } } }}/****************************************************************** Function Name : Delay* Description : Delay Time* Input : nCount: Delay Time* Output : None* Return : None* Attention : None*****************************************************************/void Delay (uint32_t nCount){ for(。 nCount != 0。 nCount) { }}/****************************************************************** Function Name : GPIO_Configuration* Description : Configure GPIO Pin* Input : None* Output : None* Return : None* Attention : None*****************************************************************/void GPIO_Configuration(void){ GPIO_InitTypeDef GPIO_InitStructure。 RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOB , ENABLE)。 /** * LED1 PB15 , LED2 PB14 , LED3 PB13 , LED4 PB12 */ = GPIO_Pin_12 | GPIO_Pin_13 | GPIO_Pin_14 | GPIO_Pin_15。 = GPIO_Speed_50MHz。 = GPIO_Mode_Out_PP。 GPIO_Init(GPIOB, amp。GPIO_InitStructure)。} ifdef USE_FULL_ASSERT/** * @brief Reports the name of the source file and the source line number * where the assert_param error has occurred. * @param file: pointer to the source file name * @param line: assert_param error line source number * @retval None */void assert_failed(uint8_t* file, uint32_t line){ /* User can add his own implementation to report the file name and line number, ex: printf(Wrong parameters value: file %s on line %d\r\n, file, line) */ /* Infinite loop */ while (1) { }}endif/*****************************************************************END FILE*****************************************************************/附錄B /********************************************************************* * File Name : * Author : fakor * Version : * Date : 05/21/2015 * Description : Descriptors for Joystick Mouse Demo*********************************************************************** THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME.* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT,* INDIRECT
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1