在线时间610 小时
UID372360
注册时间2015-2-28
NXP金币105

TA的每日心情 | 开心 2024-9-13 10:02 |
---|
签到天数: 297 天 连续签到: 1 天 [LV.8]以坛为家I
版主
  
- 积分
- 6097

- 最后登录
- 2025-9-23
|
本帖最后由 xiaoshen-372360 于 2024-8-6 11:24 编辑
说实话,自己建工程真的很费劲不知道为什么,下载的程序没法运行,然后各种报错,所以我就直接在原来的基础上做修改,点亮一个LED灯,看了原来的代码真的是太复杂了,所以这里就做了简化,初始化了三个RGB的引脚,然后按照自己的编码进行了组合,我们先来看看效果,感觉还挺不错的,
具体代码实现如下:
- ///*
- // * Copyright 2019 NXP
- // * All rights reserved.
- // *
- // * SPDX-License-Identifier: BSD-3-Clause
- // */
- //#include "pin_mux.h"
- //#include "peripherals.h"
- //#include "board.h"
- ///*******************************************************************************
- // * Definitions
- // ******************************************************************************/
- //#define BOARD_LED_GPIO BOARD_LED_RED_GPIO
- //#define BOARD_LED_GPIO_PIN BOARD_LED_RED_GPIO_PIN
- ///*******************************************************************************
- // * Prototypes
- // ******************************************************************************/
- ///*******************************************************************************
- // * Variables
- // ******************************************************************************/
- ///*******************************************************************************
- // * Code
- // ******************************************************************************/
- //void SysTick_Handler(void)
- //{
- // /* Toggle pin connected to LED */
- // GPIO_PortToggle(BOARD_LED_GPIO, 1u << BOARD_LED_GPIO_PIN);
- //}
- ///*!
- // * @brief Main function
- // */
- //int main(void)
- //{
- // /* Board pin init */
- // CLOCK_EnableClock(kCLOCK_Gpio0);
- // BOARD_InitPins();
- // BOARD_BootClockFRO12M();
- // /* Initialize the systick module. */
- // SysTick_Config(12000000UL);
- // LED_RED_INIT(LOGIC_LED_OFF);
- // while (1)
- // {
- //
- //
- //
- // }
- //}
- #include "pin_mux.h"
- #include "peripherals.h"
- #include "board.h"
- #include "fsl_common.h"
- #include "fsl_port.h"
- #include "fsl_spc.h"
- #include "fsl_gpio.h"
- void LED_Init(void)
- {
- CLOCK_EnableClock(kCLOCK_Port0);
- CLOCK_EnableClock(kCLOCK_Port1);
-
-
- CLOCK_EnableClock(kCLOCK_Gpio0);
- CLOCK_EnableClock(kCLOCK_Gpio1);
-
- gpio_pin_config_t GPIO0_Pin_10={kGPIO_DigitalOutput,0,},GPIO0_PIN_27={kGPIO_DigitalOutput,0,},GPIO1_PIN_2={kGPIO_DigitalOutput,0,};
- GPIO_PinInit(GPIO0,10, &GPIO0_Pin_10) ;
- GPIO_PinInit(GPIO0,27, &GPIO0_PIN_27) ;
- GPIO_PinInit(GPIO1,2 , &GPIO1_PIN_2) ;
- }
- void Delay(unsigned int ms)
- {
- int i=0,j=0;
- for(i=0;i<ms;i++)
- for(j=15000;j>0;j--);
- }
- void LedTest(unsigned int Status)
- {
- switch(Status)
- {
- case 0:
- {
- GPIO_PinWrite(GPIO0,10,1);
- GPIO_PinWrite(GPIO0,27,1);
- GPIO_PinWrite(GPIO1, 2,1);
- }break;
- case 1:
- {
- GPIO_PinWrite(GPIO0,10,0);
- GPIO_PinWrite(GPIO0,27,1);
- GPIO_PinWrite(GPIO1, 2,1);
- }break;
- case 2:
- {
- GPIO_PinWrite(GPIO0,10,1);
- GPIO_PinWrite(GPIO0,27,0);
- GPIO_PinWrite(GPIO1, 2,1);
- }break;
- case 3:
- {
- GPIO_PinWrite(GPIO0,10,1);
- GPIO_PinWrite(GPIO0,27,1);
- GPIO_PinWrite(GPIO1, 2,0);
- }break;
- case 4:
- {
- GPIO_PinWrite(GPIO0,10,0);
- GPIO_PinWrite(GPIO0,27,0);
- GPIO_PinWrite(GPIO1, 2,1);
- }break;
- case 5:
- {
- GPIO_PinWrite(GPIO0,10,1);
- GPIO_PinWrite(GPIO0,27,0);
- GPIO_PinWrite(GPIO1, 2,0);
- }break;
- case 6:
- {
- GPIO_PinWrite(GPIO0,10,0);
- GPIO_PinWrite(GPIO0,27,1);
- GPIO_PinWrite(GPIO1, 2,0);
- }break;
- case 7:
- {
- GPIO_PinWrite(GPIO0,10,0);
- GPIO_PinWrite(GPIO0,27,0);
- GPIO_PinWrite(GPIO1, 2,0);
- }break;
-
-
- default:
- {
- GPIO_PinWrite(GPIO0,10,0);
- GPIO_PinWrite(GPIO0,27,0);
- GPIO_PinWrite(GPIO1, 2,0);
-
- }break;
- }
- }
- int main(void )
- {
-
- unsigned int Seq=0;
- BOARD_BootClockPLL150M();
- LED_Init();
-
- while(1)
- {
- Seq++;
- if(Seq>=8)
- Seq=0;
- LedTest(Seq);
- Delay(1000);
- }
- }
复制代码 欢迎大家一起玩哦!
|
|