久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術學習與研究
當前位置:單片機教程網 >> STM32 >> 瀏覽文章

關于STM32的GPIO

作者:槍炮紫苑   來源:槍炮紫苑   點擊數:  更新時間:2014年07月09日   【字體:
初學STM32接觸的是點燈程序,其實就是對ARM的GPIO口的熟悉和掌握。
在使用GPIO口前需要對對應的端口進行初始化,初始化的配置程序如下所示。
void GPIO_Configuration(void)
{
  GPIO_InitTypeDef GPIO_InitStructure; //GPIO_InitStruct:指向結構GPIO_InitTypeDef的指針,包含了外設GPIO的配置信息
 
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12|GPIO_Pin_13|GPIO_Pin_14|GPIO_Pin_15; //設置端口
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_OD; //配置為開漏輸出
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz; //IO口最高輸出速度為2MHZ

  GPIO_Init(GPIOB, &GPIO_InitStructure);   //根據GPIO_InitStructure中指定的參數初始化外設GPIOx寄存器
}
以上代碼可以參見STM32的固件庫手冊,里面有對每個函數的詳細說明。
下面是對IO口的設置,這里設置IO口為低時LED燈點亮。
方法一:
GPIOB->BSRR = 0x2000D000;
這里我看了很久都沒有弄明白,哎,這個值對初學者來說很難弄明白。后來查閱STM32103XX的參考手冊才發現有BSRR的寄存器配置詳細解說。看完后才恍然大悟。
前16位為BRy,置1時清楚對應ODRy;后16位為BSy,置1時設置對應ODRy;兩者同時設置時,以BSy有效。



方法二:
GPIO_SetBits(GPIOB, GPIO_Pin_12 | GPIO_Pin_14 | GPIO_Pin_15);
GPIO_ResetBits(GPIOB, GPIO_Pin_13);
這個功能和方法一等效,但是易讀,比較推薦這種寫法,雖然多了一行語句。

方法三:
GPIO_WriteBit(GPIOB, GPIO_Pin_15, Bit_SET);
此方法適用于對單個端口的操作,比較方便。
Bit_SET設置數據端口位,Bit_RESET,清楚數據端口位。
OK,暫時就這么多。

相關文章

主站蜘蛛池模板: 成人在线视频网站 | 激情欧美一区二区三区中文字幕 | 91在线免费视频 | 国产精品久久毛片av大全日韩 | 久久精品网 | 精品一区av | 精品国产一区二区三区久久 | 亚洲精品久久国产高清情趣图文 | 亚洲欧美在线一区 | 天堂资源视频 | 亚洲免费高清 | 欧美精品在线一区二区三区 | 干干干日日日 | 亚洲成人动漫在线观看 | 91精品国产91久久久久久密臀 | 户外露出一区二区三区 | 国产精成人 | 国产三级 | 中文字幕一区二区三区四区不卡 | 免费一区二区三区在线视频 | av在线播放网站 | 天堂中文在线播放 | 国产午夜精品一区二区三区 | 毛片a级 | 精品一区二区三区电影 | 亚洲欧美日韩在线不卡 | 中国一级特黄毛片大片 | 精品久久久久久久久久久久久久 | 亚洲网站在线播放 | 日韩一区二区三区四区五区 | h视频在线观看免费 | 在线中文字幕亚洲 | 欧美三级网站 | 精品欧美一区二区在线观看视频 | 男女精品网站 | 久久亚洲一区 | 欧美精品一区二区三区四区 | 精品中文视频 | 欧美性猛交一区二区三区精品 | 久久婷婷国产麻豆91 | 国产精品一区二区无线 |