文章目錄
- 前言
- 一、GPIO是什么?
- 二、使用步驟
- 1.點燈示例:
- 2.小燈回圈亮滅
- 3.按鍵通斷示例:
- 總結
前言
隨著智能計算機行業的不斷發展,眾多領域都離不開“智能”兩個字,對于在校大學生來說,智能車競賽是含金量較高的比賽之一,其吸引眾多愛好者投身其中,在十五屆智能車比賽中盲目掙扎數月,卡在攝像頭問題上,不覺十六屆核心板霸主地位已然易主,從恩智浦轉向沁恒,從一個小白轉向下一個小白,好在與上一年瞎貓似亂摸較好的是,這次似乎有著靠譜學長的幫助,
提示:下面開始第一階段的開發日記,GPIO模塊的學習
一、GPIO是什么?
單片機輸入輸出口,
二、使用步驟
1.點燈示例:
代碼如下(點燈):
int main(void)
{
u8 i=0;
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
Delay_Init();
USART_Printf_Init(115200);
printf("SystemClk:%d\r\n",SystemCoreClock);
printf("GPIO Toggle TEST\r\n");
GPIO_Toggle_INIT();
while(1)
{
Delay_Ms(250);
GPIO_WriteBit(GPIOA, GPIO_Pin_0, i==0);
}
}
2.小燈回圈亮滅
int main(void)
{
u8 i=0;
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
Delay_Init();
USART_Printf_Init(115200);
printf("SystemClk:%d\r\n",SystemCoreClock);
printf("GPIO Toggle TEST\r\n");
GPIO_Toggle_INIT();
while(1)
{
Delay_Ms(250);
GPIO_WriteBit(GPIOA, GPIO_Pin_0, (i==0) ? (i=Bit_SET):(i=Bit_RESET));
}
}
依照電路原理圖給小燈對應引腳寫高低電平,保證電路通斷,小燈亮滅,
3.按鍵通斷示例:
int main(void)
{
u8 i=0;
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
Delay_Init();
USART_Printf_Init(115200);
printf("SystemClk:%d\r\n",SystemCoreClock);
printf("GPIO Toggle TEST\r\n");
GPIO_Toggle_INIT();
GPIO_WriteBit(GPIOB, GPIO_Pin_8, 1);
GPIO_WriteBit(GPIOB, GPIO_Pin_9, 1);
while(1)
{
if(!KEY1){
// Delay_Ms(250);
GPIO_WriteBit(GPIOB, GPIO_Pin_8, 0);
GPIO_WriteBit(GPIOB, GPIO_Pin_9, 0);
Delay_Ms(1000);
GPIO_WriteBit(GPIOB, GPIO_Pin_8, 1);
GPIO_WriteBit(GPIOB, GPIO_Pin_9, 1);
}
}
}
總結
因為期末考試的原因,第一階段作業量少,主要任務為環境配置及GPIO模塊的部分學習,其中.h檔案為函式等變數的申明,.c檔案為方法的具體實作,本次只截取部分代碼,其中的底層初始化配置尤其重要,留待下一階段學習,轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/240121.html
標籤:其他
上一篇:GB28181/RTSP/Ehome協議視頻智能分析平臺EasyCVR分組后呼叫介面沒有回傳對應的通道排查
下一篇:樹莓派——智能推送
