久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標(biāo)題:
GPIO控制流水燈的心得
[打印本頁]
作者:
51黑ren
時間:
2015-12-27 03:45
標(biāo)題:
GPIO控制流水燈的心得
原來學(xué)習(xí)的STM32真的是太膚淺,覺得配置GPIO很簡單,用GPIO控制流流水燈也不過如此,今天我自己真正配置了一遍,才知道能學(xué)習(xí)的東西有很多。
1、stm32f10x.h 這個函數(shù)才是ST公司的庫函數(shù),平時調(diào)用的bsp_led.h是野火公司寫的用戶函數(shù),所以還有寫程序不易直接調(diào)用,還要自己親自來寫。
2、首先,在main.c中,調(diào)用的頭文件,必有#include "stm32f10x.h",其次就是自己寫的用戶函數(shù)。
上面是我自己寫的用戶函數(shù)(PS:其實(shí)也是學(xué)來的)
3、#ifndef __LED_H
#define __LED_H
.........
#endif
預(yù)處理,條件編譯。如果第一次已經(jīng)編譯過了,防止重復(fù)編譯的代碼。
__LED_H:這個部分寫什么都無所謂,這樣寫就是為了易懂程序。
4、#define LED1_OFF LED_OFF(GPIOB,GPIO_Pin_0)
#define LED_OFF(p,i) {p->BSRR=i;}
對這兩句說明下,其他類似。
其實(shí)也就是宏定義,其實(shí)也沒啥,p、i。也就是上一句的GPIOB,GPIO_Pin_0.
在stm3f10x.h里面有他的宏定義 #defineGPIOB ((GPIO_TypeDef *) GPIOB_BASE)
#defineGPIOB_BASE (APB2PERIPH_BASE + 0x0C00)
在stm32f10x_gpio.h中有他們的宏定義#defineGPIO_Pin_0 ((uint16_t)0x0001)
歸根結(jié)底也就是用的寄存器操作,直接給寄存器相應(yīng)的地址寫值。
這樣寫使代碼看上去更加簡潔。
5、#define LED1(a) if(a) \
GPIO_SetBits(GPIOB,GPIO_Pin_0); \
else \
GPIO_ResetBits(GPIOB,GPIO_Pin_0)
這一步,宏定義,為啥每一行后邊還有\(zhòng)呢?
"\"用于#define中,就是表示這一行還沒有結(jié)束。
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
91禁蘑菇在线看
|
美女91网站
|
成人综合婷婷国产精品久久
|
国产无限资源
|
欧美日本在线
|
麻豆av免费观看
|
日本视频在线免费观看
|
亚洲午夜久久
|
中文字幕一区二区三区四区
|
中文精品一区
|
97在线超碰
|
在线播放毛片
|
免费观看av
|
精品亚洲一区二区三区
|
亚洲天堂第一页
|
亚洲成人精品在线
|
国产日本在线观看
|
黄色小视频在线观看免费
|
日韩欧美一区二区三区四区
|
亚洲天堂视频在线观看
|
成人动漫在线看
|
日韩精品视频在线免费观看
|
成人国产在线
|
午夜性影院
|
免费成年人视频
|
日韩精品网
|
亚洲精品久久久蜜桃
|
中文字幕一区二区三区视频
|
99中文字幕
|
欧美日韩国产一区
|
精品国产一区二区三区久久久蜜月
|
亚洲视频免费观看
|
亚洲视频精品
|
春色导航
|
日韩亚洲天堂
|
日韩免费在线观看视频
|
国产伦精品一区二区三区视频黑人
|
四虎色播
|
99精品欧美一区二区蜜桃免费
|
www.日韩
|
狠狠草视频
|