127 lines
4.6 KiB
C
127 lines
4.6 KiB
C
/**
|
||
* Copyright (c) 2022, Nations Technologies Inc.
|
||
*
|
||
* All rights reserved.
|
||
*
|
||
* This software is the exclusive property of Nations Technologies Inc. (Hereinafter
|
||
* referred to as NATIONS). This software, and the product of NATIONS described herein
|
||
* (Hereinafter referred to as the Product) are owned by NATIONS under the laws and treaties
|
||
* of the People’s Republic of China and other applicable jurisdictions worldwide.
|
||
*
|
||
* NATIONS does not grant any license under its patents, copyrights, trademarks, or other
|
||
* intellectual property rights. Names and brands of third party may be mentioned or referred
|
||
* thereto (if any) for identification purposes only.
|
||
*
|
||
* NATIONS reserves the right to make changes, corrections, enhancements, modifications, and
|
||
* improvements to this software at any time without notice. Please contact NATIONS and obtain
|
||
* the latest version of this software before placing orders.
|
||
|
||
* Although NATIONS has attempted to provide accurate and reliable information, NATIONS assumes
|
||
* no responsibility for the accuracy and reliability of this software.
|
||
*
|
||
* It is the responsibility of the user of this software to properly design, program, and test
|
||
* the functionality and safety of any application made of this information and any resulting product.
|
||
* In no event shall NATIONS be liable for any direct, indirect, incidental, special,exemplary, or
|
||
* consequential damages arising in any way out of the use of this software or the Product.
|
||
*
|
||
* NATIONS Products are neither intended nor warranted for usage in systems or equipment, any
|
||
* malfunction or failure of which may cause loss of human life, bodily injury or severe property
|
||
* damage. Such applications are deemed, “Insecure Usage”.
|
||
*
|
||
* All Insecure Usage shall be made at user’s risk. User shall indemnify NATIONS and hold NATIONS
|
||
* harmless from and against all claims, costs, damages, and other liabilities, arising from or related
|
||
* to any customer’s Insecure Usage.
|
||
|
||
* Any express or implied warranty with regard to this software or the Product, including,but not
|
||
* limited to, the warranties of merchantability, fitness for a particular purpose and non-infringement
|
||
* are disclaimed to the fullest extent permitted by law.
|
||
|
||
* Unless otherwise explicitly permitted by NATIONS, anyone may not duplicate, modify, transcribe
|
||
* or otherwise distribute this software for any purposes, in whole or in part.
|
||
*
|
||
* NATIONS products and technologies shall not be used for or incorporated into any products or systems
|
||
* whose manufacture, use, or sale is prohibited under any applicable domestic or foreign laws or regulations.
|
||
* User shall comply with any applicable export control laws and regulations promulgated and administered by
|
||
* the governments of any countries asserting jurisdiction over the parties or transactions.
|
||
**/
|
||
|
||
/**
|
||
*\*\file main.c
|
||
*\*\author Nations
|
||
*\*\version v1.0.0
|
||
*\*\copyright Copyright (c) 2022, Nations Technologies Inc. All rights reserved.
|
||
**/
|
||
|
||
#include "main.h"
|
||
#include "bsp_led.h"
|
||
#include "bsp_delay.h"
|
||
#include <stdint.h>
|
||
|
||
void motorRunF(void)
|
||
{
|
||
GPIO_Pins_Set(MotorLIN1_GPIO_PORT, MotorLIN1_GPIO_PIN);//置1
|
||
GPIO_Pins_Reset(MotorLIN2_GPIO_PORT,MotorLIN2_GPIO_PIN);//置0
|
||
}
|
||
void motorRunR(void)
|
||
{
|
||
GPIO_Pins_Reset(MotorLIN1_GPIO_PORT,MotorLIN1_GPIO_PIN);//置0
|
||
GPIO_Pins_Set(MotorLIN2_GPIO_PORT, MotorLIN2_GPIO_PIN);//置1
|
||
}
|
||
void motorStop(void)
|
||
{
|
||
GPIO_Pins_Reset(MotorLIN1_GPIO_PORT,MotorLIN1_GPIO_PIN); //置0
|
||
GPIO_Pins_Reset(MotorLIN2_GPIO_PORT,MotorLIN2_GPIO_PIN);//置0
|
||
}
|
||
/**
|
||
*\*\name main.
|
||
*\*\fun main function.
|
||
*\*\param none.
|
||
*\*\return none.
|
||
**/
|
||
int main(void)
|
||
{
|
||
uint32_t timeCnt =0;
|
||
/* Initialize Led1~Led3 as output push-pull mode */
|
||
LED_Initialize(LED1_GPIO_PORT, LED1_GPIO_PIN | LED2_GPIO_PIN | LED3_GPIO_PIN |MotorLIN1_GPIO_PIN|MotorLIN2_GPIO_PIN);
|
||
|
||
/* Turn off Led1~Led3 */
|
||
LED_Off(LED1_GPIO_PORT, LED1_GPIO_PIN | LED2_GPIO_PIN | LED3_GPIO_PIN);
|
||
motorStop();
|
||
/* Turn on Led2~Led3 */
|
||
LED_On(LED2_GPIO_PORT, LED2_GPIO_PIN | LED3_GPIO_PIN);
|
||
|
||
/* Delay 1s */
|
||
SysTick_Delay_Ms(1000);
|
||
motorRunF();
|
||
while (1)
|
||
{
|
||
/* Turn on Led1 */
|
||
LED1_ON;
|
||
LED2_ON;
|
||
LED3_ON;
|
||
|
||
/* Toggle LED3 */
|
||
// LED_Toggle(LED3_GPIO_PORT, LED3_GPIO_PIN);
|
||
|
||
/* Delay 1s */
|
||
SysTick_Delay_Ms(500);
|
||
|
||
/* Turn off LED1 */
|
||
LED1_OFF;
|
||
LED2_OFF;
|
||
LED3_OFF;
|
||
|
||
/* Delay 1s */
|
||
SysTick_Delay_Ms(500);
|
||
timeCnt ++;
|
||
if ( timeCnt==100) {
|
||
motorStop();
|
||
}
|
||
if(timeCnt>=300)
|
||
{
|
||
timeCnt =0;
|
||
motorRunF();
|
||
}
|
||
}
|
||
}
|