www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 單片機 > 單片機
[導(dǎo)讀]接觸STM32有一段時間了,也算是簡單入了門,但由于一些原因,今天才來寫本應(yīng)該是入門級的按鍵相關(guān)程序,分為掃描模式和中斷模式MCU:STM32F334C81.掃描模式首先配置按鍵引腳為上拉輸入模式,根據(jù)原理圖按鍵接PA0,按

接觸STM32有一段時間了,也算是簡單入了門,但由于一些原因,今天才來寫本應(yīng)該是入門級的按鍵相關(guān)程序,分為掃描模式和中斷模式


MCU:STM32F334C8

1.掃描模式

首先配置按鍵引腳為上拉輸入模式,根據(jù)原理圖按鍵接PA0,按鍵沒有按下的時候引腳輸入為低電平0,按鍵按下輸入高電平1,松開又回到低電平0

然后在死循環(huán)中不斷讀取相應(yīng)引腳的輸入狀態(tài),并根據(jù)返回結(jié)果判斷按鍵是否按下,做出相應(yīng)處理

下面的代碼完成的功能是:按鍵第一次按下,點亮燈,再按一次,熄滅,重復(fù)。


#include"Userkey.h"u8flag=0;voidkey_GPIO_Config(void){GPIO_InitTypeDefGPIO_InitStructure;RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA,ENABLE);GPIO_InitStructure.GPIO_Pin=GPIO_Pin_0;GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IN;GPIO_InitStructure.GPIO_PuPd=GPIO_PuPd_UP;GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;GPIO_Init(GPIOA,&GPIO_InitStructure);}voidkey_scanmode(void){key_GPIO_Config();while(1){if(GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_0)){flag=~flag;if(flag)//第1?3?5,,次按下{GPIO_SetBits(GPIOB,GPIO_Pin_6);}else//第2?4?6,,,次按下{GPIO_ResetBits(GPIOB,GPIO_Pin_6);}}}}




2.中斷模式

第一步和上面相同,將接按鍵的引腳配置為上拉輸入,然后配置相應(yīng)中斷,PA0對應(yīng)外部中斷0

功能:按鍵按下,點亮LED并向串口發(fā)送按鍵按下到PC,按鍵松開,關(guān)掉LED并發(fā)送按鍵松開

voidkey_interruptmode(void){EXTI_InitTypeDefEXTI_InitStructure;NVIC_InitTypeDefNVIC_InitStruct;key_GPIO_Config();NVIC_InitStruct.NVIC_IRQChannel=EXTI0_IRQn;NVIC_InitStruct.NVIC_IRQChannelPreemptionPriority=0;NVIC_InitStruct.NVIC_IRQChannelSubPriority=1;NVIC_InitStruct.NVIC_IRQChannelCmd=ENABLE;NVIC_Init(&NVIC_InitStruct);SYSCFG_EXTILineConfig(EXTI_PortSourceGPIOA,EXTI_PinSource0);EXTI_ClearITPendingBit(EXTI_Line0);EXTI_InitStructure.EXTI_Line=EXTI_Line0;EXTI_InitStructure.EXTI_LineCmd=ENABLE;EXTI_InitStructure.EXTI_Mode=EXTI_Mode_Interrupt;EXTI_InitStructure.EXTI_Trigger=EXTI_Trigger_Rising_Falling;EXTI_Init(&EXTI_InitStructure);}voidEXTI0_IRQHandler(void){if(EXTI_GetITStatus(EXTI_Line0)){if(GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_0))//按鍵按下{GPIO_SetBits(GPIOB,GPIO_Pin_6);printf("按鍵按下n");//串口打印狀態(tài)}else//按鍵松開{GPIO_ResetBits(GPIOB,GPIO_Pin_6);printf("按鍵松開n");}}EXTI_ClearITPendingBit(EXTI_Line0);}

注:如果要實現(xiàn)和1一樣的功能,將EXTI_Trigger改為上升沿或者下降沿,再改一下中斷處理函數(shù)即可


本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉