新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > STM8學習筆記(二):GPIO的輸入

        STM8學習筆記(二):GPIO的輸入

        作者: 時間:2016-11-24 來源:網絡 收藏
        這兩天有點忙,焊了四個按鍵,在LED燈的基礎上,實現GPIO的輸入

        這次用的是ST公司的官方庫

        本文引用地址:http://www.104case.com/article/201611/320894.htm

        組要的還是要理解GPIO的幾個寄存器的功能

        同時,要好好的理解它官方庫里面的函數定義和用法

        /**************************************************************/

        void GPIO_Configuration(void)
        {
        GPIO_Init(LEDS_PORT, (LED1_PIN | LED2_PIN | LED3_PIN | LED4_PIN |
        LED5_PIN | LED6_PIN | LED7_PIN | LED8_PIN),
        GPIO_MODE_OUT_PP_HIGH_FAST);
        GPIO_Init(KEYS_PORT,(KEY1_PIN | KEY2_PIN | KEY3_PIN | KEY4_PIN),
        GPIO_MODE_IN_PU_NO_IT);//配置PF7,PF6,PF5,PF4上拉輸入
        }

        這個是GPIO的配置

        /****************************************************************/

        #define LEDS_PORT (GPIOD)
        #define LED1_PIN (GPIO_PIN_7)
        #define LED2_PIN (GPIO_PIN_6)
        #define LED3_PIN (GPIO_PIN_5)
        #define LED4_PIN (GPIO_PIN_4)
        #define LED5_PIN (GPIO_PIN_3)
        #define LED6_PIN (GPIO_PIN_2)
        #define LED7_PIN (GPIO_PIN_1)
        #define LED8_PIN (GPIO_PIN_0)

        #define LED1_ON GPIO_WriteLow(LEDS_PORT,(LED1_PIN))
        #define LED1_OFF GPIO_WriteHigh(LEDS_PORT,(LED1_PIN))

        #define LED2_ON GPIO_WriteLow(LEDS_PORT,(LED2_PIN))
        #define LED2_OFF GPIO_WriteHigh(LEDS_PORT,(LED2_PIN))

        #define LED3_ON GPIO_WriteLow(LEDS_PORT,(LED3_PIN))
        #define LED3_OFF GPIO_WriteHigh(LEDS_PORT,(LED3_PIN))

        #define LED4_ON GPIO_WriteLow(LEDS_PORT,(LED4_PIN))
        #define LED4_OFF GPIO_WriteHigh(LEDS_PORT,(LED4_PIN))

        #define LED5_ON GPIO_WriteLow(LEDS_PORT,(LED5_PIN))
        #define LED5_OFF GPIO_WriteHigh(LEDS_PORT,(LED5_PIN))

        #define LED6_ON GPIO_WriteLow(LEDS_PORT,(LED6_PIN))
        #define LED6_OFF GPIO_WriteHigh(LEDS_PORT,(LED6_PIN))

        #define LED7_ON GPIO_WriteLow(LEDS_PORT,(LED7_PIN))
        #define LED7_OFF GPIO_WriteHigh(LEDS_PORT,(LED7_PIN))

        #define LED8_ON GPIO_WriteLow(LEDS_PORT,(LED8_PIN))
        #define LED8_OFF GPIO_WriteHigh(LEDS_PORT,(LED8_PIN))

        #define KEYS_PORT (GPIOF)
        #define KEY1_PIN (GPIO_PIN_7)
        #define KEY2_PIN (GPIO_PIN_6)
        #define KEY3_PIN (GPIO_PIN_5)
        #define KEY4_PIN (GPIO_PIN_4)

        這個是IO的一些定義

        呵呵,太長了,具體工程在附件中,寫的有點冗長。。。

        不停的總結,不停的進步



        評論


        技術專區

        關閉
        主站蜘蛛池模板: 南木林县| 台山市| 宁津县| 荣昌县| 洛隆县| 江津市| 乌鲁木齐市| 潍坊市| 桑植县| 东丰县| 五峰| 凌海市| 丹凤县| 康保县| 桦甸市| 洪洞县| 浙江省| 滦南县| 天长市| 肥城市| 开化县| 于田县| 两当县| 鹤山市| 卢湾区| 中超| 玉溪市| 靖江市| 辛集市| 巴南区| 卢湾区| 阆中市| 启东市| 龙里县| 农安县| 荣成市| 商水县| 措勤县| 平阳县| 黄山市| 利川市|