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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2005|回復: 7
打印 上一主題 下一主題
收起左側

初學STM32單片機,請求大佬指教

[復制鏈接]
回帖獎勵 5 黑幣 回復本帖可獲得 5 黑幣獎勵! 每人限 1 次(中獎概率 50%)
跳轉到指定樓層
樓主
ID:511875 發表于 2020-2-25 19:32 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
流水燈做成了,但我想讓他全亮全滅弄不通:
#include "stm32f10x.h"

/**
  * @brief  Ö÷oˉêy
  * @param  ÎT
  * @retval ÎT
  */
        #define LED1_TOGGLE            GPIOA->ODR^=GPIO_Pin_0
#define LED1_OFF                GPIOA->BSRR = GPIO_Pin_0
#define LED1_ON                 GPIOA->BRR = GPIO_Pin_0
#define LED2_TOGGLE             GPIOA->ODR^=GPIO_Pin_1
#define LED2_OFF                GPIOA->BSRR = GPIO_Pin_1
#define LED2_ON                 GPIOA->BRR = GPIO_Pin_1
#define LED3_TOGGLE             GPIOA->ODR^=GPIO_Pin_2
#define LED3_OFF                GPIOA->BSRR = GPIO_Pin_2
#define LED3_ON                 GPIOA->BRR = GPIO_Pin_2
#define LED4_TOGGLE             GPIOA->ODR^=GPIO_Pin_3
#define LED4_OFF                GPIOA->BSRR = GPIO_Pin_3
#define LED4_ON                 GPIOA->BRR = GPIO_Pin_3

//ê1óÿaoˉêy
#define LED5_OFF                GPIO_SetBits(GPIOA,GPIO_Pin_4)
#define LED5_ON                 GPIO_ResetBits(GPIOA,GPIO_Pin_4)
#define LED6_OFF                GPIO_SetBits(GPIOA,GPIO_Pin_5)
#define LED6_ON                 GPIO_ResetBits(GPIOA,GPIO_Pin_5)
#define LED7_OFF                GPIO_SetBits(GPIOA,GPIO_Pin_6)
#define LED7_ON                 GPIO_ResetBits(GPIOA,GPIO_Pin_6)
#define LEDALL_OFF              GPIO_SetBits(GPIOA,GPIO_Pin_All)
#define LEDALL_ON               GPIO_ResetBits(GPIOA,GPIO_Pin_All)


void LED_Cfg(void){
     GPIO_InitTypeDef led_gpio;
           SystemInit();
           RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);
           led_gpio.GPIO_Pin = GPIO_Pin_All;
        //led_gpio.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_2 | GPIO_Pin_3
           //                    | GPIO_Pin_4 | GPIO_Pin_5 | GPIO_Pin_6 | GPIO_Pin_7;
           led_gpio.GPIO_Mode = GPIO_Mode_Out_PP;//í¨óøøíÆíìêä3ö
           led_gpio.GPIO_Speed = GPIO_Speed_50MHz;//2MHz
           GPIO_Init(GPIOA,&led_gpio);
           //ÅäÖÃíê3éoó1رÕËùóDLED
           LED1_OFF;
          LED2_OFF;
          LED3_OFF;
          LED4_OFF;
          LED5_OFF;
          LED6_OFF;
          LED7_OFF;
          LEDALL_OFF;
}


void Delay(u32 nCount){
           while(nCount--);
               
}

int main(void)
{
            LED_Cfg();
            while(1){

                               LEDALL_ON;                                Delay(6000000);
                                LEDALL_OFF;
                                Delay(6000000);  燒錄這個程序流水燈不亮

          但以下這個就可以亮


                         /*LED1_ON;
          LED2_ON;
          LED3_ON;
          LED4_ON;
          LED5_ON;
          LED6_ON;
          LED7_ON;
             Delay(6000000);
        LED1_OFF;
          LED2_OFF;
          LED3_OFF;
          LED4_OFF;
          LED5_OFF;
          LED6_OFF;
          LED7_OFF;
        Delay(6000000);*/



                                
                                                               
                                
                                                               
                        }

        
}


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:168996 發表于 2020-2-25 21:00 | 只看該作者
#define LEDALL_OFF              GPIO_SetBits(GPIOA,GPIO_Pin_All)
#define LEDALL_ON               GPIO_ResetBits(GPIOA,GPIO_Pin_All)
如果前面led受控(可高可低),那么證明GPIO_SetBits、GPIO_ResetBits沒問題,LEDALL_OFF LEDALL_ON 也應該沒問題。
所以我懷疑前面led并非受控,把delay函數優化一下:

void Delay2(u32 nCount){
  u32 tmp=0;
   while(nCount--);
}

試試
回復

使用道具 舉報

板凳
ID:592477 發表于 2020-2-25 22:24 | 只看該作者
全亮和全滅不是已經有了嗎?
#define LEDALL_OFF              GPIO_SetBits(GPIOA,GPIO_Pin_All)
#define LEDALL_ON               GPIO_ResetBits(GPIOA,GPIO_Pin_All)
第一個是全滅,第二個是全亮
回復

使用道具 舉報

地板
ID:698253 發表于 2020-2-25 22:32 | 只看該作者
一共是幾個燈,具體怎么接線
回復

使用道具 舉報

5#
ID:462827 發表于 2020-2-26 01:34 | 只看該作者
沒看到你的GPIO_Pin_All在哪里定義呀
回復

使用道具 舉報

6#
ID:511875 發表于 2020-2-26 08:38 | 只看該作者
hantu 發表于 2020-2-26 01:34
沒看到你的GPIO_Pin_All在哪里定義呀

GPIO_Pin_All是用的庫函數里面的0xFFFF
回復

使用道具 舉報

7#
ID:679425 發表于 2020-2-26 09:05 | 只看該作者
#define LEDALL_OFF              GPIO_SetBits(GPIOA,GPIO_Pin_All)
#define LEDALL_ON               GPIO_ResetBits(GPIOA,GPIO_Pin_All)
回復

使用道具 舉報

8#
ID:229016 發表于 2020-2-26 09:42 | 只看該作者
我個人覺得僅僅流水燈,用這么宏定義有點麻煩了,直接配置結構體就好了
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久99精品久久久97夜夜嗨 | 青青草华人在线视频 | 中文字幕一区二区三区精彩视频 | 日韩一区在线视频 | 999热精品视频 | 三级av在线 | 欧美一a | 天天干精品 | 一区二区三区免费看 | 久久精品久久综合 | 日本久久精品视频 | 91久色| 日韩在线观看网站 | 瑟瑟免费视频 | 久久久久久久成人 | 欧美偷偷 | 国产精品久久福利 | 国产免费一区二区 | www.久草.com | 精品日韩一区 | 亚洲不卡在线观看 | 国产精品一区二区av | 国产精品福利在线观看 | 欧美二区在线 | 国产精品成人一区二区 | 久久精品aaa | 日韩有码一区二区三区 | 伊人亚洲 | 国产精品日韩一区二区 | 91久久| 91九色在线观看 | 久久精品久久久久久 | 成人精品一区亚洲午夜久久久 | av免费看片 | 国产精品91视频 | 亚洲国产精品va在线看黑人 | 免费视频一区二区 | 欧美aaa| 成人av观看 | 人人看人人射 | 毛片黄|