📄 ledprd.c
字号:
/*
* Copyright 2003 by Spectrum Digital Incorporated.
* All rights reserved. Property of Spectrum Digital Incorporated.
*/
/*
* ======== ledprd.c ========
*
* This example blinks LED #0 at a rate of about 2.5 times per second using
* the LED module of the the DM642 EVM Board Support Library.
*
* When the program is run, DSP/BIOS initializes itself and calls the main()
* function. Main() initializes the BSL then exits and returns control back
* to DSP/BIOS. The real work is done inside blinkLED0() which is a DSP/BIOS
* periodic thread that is run every 200ms.
*
* A second thread named blinkLED1() is also included that blinks LED #1
* asynchronously with blinkLED0() to demonstrate DSP/BIOS multitasking.
* It is not enabled by default but can be added by creating a new periodic
* thread entry for it in the DSP/BIOS scheduler.
*
* Please see the DM642 EVM BSL help file under Software/Examples for more
* detailed information.
*/
/*
* DSP/BIOS is configured using the DSP/BIOS configuration tool. Settings
* for this example are stored in a configuration file called ledprd.cdb. At
* compile time, Code Composer will auto-generate DSP/BIOS related files
* based on these settings. A header file called ledprdcfg.h contains the
* results of the autogeneration and must be included for proper operation.
* The name of the file is taken from ledprd.cdb and adding cfg.h.
*/
#include "ledprdcfg.h"
/*
* The DM642 EVM Board Support Library is divided into several modules, each
* of which has its own include file. The file evmdm642.h must be included
* in every program that uses the BSL. This example also includes
* evmdm642_led.h because it uses the LED module.
*/
#include "dm643.h"
#include "dm643_led.h"
/*
* blinkLED0() - Blink LED #0 and set LED #3 based on the state of DIP switch
* #3. If the switch is down, the LED is turned on. If the
* switch is up, the LED is turned off.
*
* blinkLED0 is a periodic thread that is called every 200ms
* from the DSP/BIOS scheduler. It is configured in the
* DSP/BIOS configuration file (ledprd.cdb) under Scheduling
* --> PRD --> PRD_blinkLED0. Right click PRD_blinkLED0 and
* select Properties to view its settings.
*/
void blinkLED0()
{
/* Toggle LED #1, #2, #3 */
//DM643_LED_toggle(0);
}
/*
* blinkLED1() - Blink LED #1.
*
* blinkLED1 is a periodic thread that can be called from the
* DSP/BIOS scheduler. By default, it is not active. To make
* it active, create a new PRD entry called PRD_blinkLED1 in
* the DSP/BIOS configuration file (ledprd.cdb) under
* Scheduling --> PRD. Right click PRD_blinkLED1 and select
* properties to configure it. Change the function field to
* _blinkLED1 and the period field to 100 to make blinkLED1()
* execute every 100ms.
*/
void blinkLED1()
{
/* Toggle LED #1 */
DM643_LED_toggle(1);
}
void blinkLED2()
{
/* Toggle LED #1 */
DM643_LED_toggle(2);
}
void blinkLED3()
{
/* Toggle LED #1 */
DM643_LED_toggle(3);
}
/*
* main() - Initialize BSL then drop into DSP/BIOS idle loop
*/
void main()
{
/* Initialize the board support library, must be first BSL call */
DM643_init();
/* Initialize the LED and DIP switch modules of the BSL */
DM643_LED_init();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -