|
1、首先要知道led燈所對應的引腳,在對應芯片的datasheet的中找到它的模塊框圖和時鐘樹種找到上級時鐘并且將其打開。 然后用結構體對其進行初始化,初始化時根據你的需求進行相應的參數配置。
ZET6的datasheet的時鐘樹如圖:
http://www.zg4o1577.cn/bbs/dpj-151738-1.html
2、使用初始化函數將其初始化。
3、找到原理圖,獲知操作的元件需要高電平還是低電平。比如此處led燈需要高電平,可以通過void GPIO_SetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin)這個函數將電平拉高。
如果元件需要低電平可以通過void GPIO_ResetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin)函數拉低電平。
也可以直接通過位操作進行設置電平。
用void GPIO_WriteBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin, BitAction BitVal)函數直接寫入 某模塊所有的電平情況。
操作如下:
比如要對GPIO_Pin_10進行置高電平操作。
可以用GPIO_SetBits(GPIOA,GPIO_Pin_10);
也可以用GPIO_WriteBit(0x01<<10);
上代碼:
void Led_Init()
{
GPIO_InitTypeDef GPIO_InitStructure;
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10|GPIO_Pin_11|GPIO_Pin_12|GPIO_Pin_13;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOE, ENABLE);
GPIO_Init(GPIOE, &GPIO_InitStructure);
}
|
-
圖片
-
-
led.7z
2019-7-7 22:16 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
189.61 KB, 下載次數: 10, 下載積分: 黑幣 -5
點燈
評分
-
查看全部評分
|