⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rng.c

📁 基于cc1010的设计实例
💻 C
字号:
/*****************************************************************************
 *                                                                           *
 *        **********                                                         *
 *       ************                                                        *
 *      ***        ***                                                       *
 *      ***   +++   ***                                                      *
 *      ***   + +   ***                                                      *
 *      ***   +                    CHIPCON CC1010 EXAMPLE PROGRAM            *
 *      ***   + +   ***           Using the random number generator          *
 *      ***   +++   ***                                                      *
 *      ***       ***                                                        *
 *       ***********                                                         *
 *        *********                                                          *
 *                                                                           *
 *****************************************************************************
 * This program demonstrates the use of the random number generator.         *
 *                                                                           *
 * The program uses the random number generator to generate one random byte  *
 * in each iteration of the infinite while loop. The 4 LSBs are displayed on *
 * the LEDs on the board to blink them in a true random way every 0.2        *
 * seconds.                                                                  *
 *****************************************************************************
 * Author:              TEL, JOL                                             *
 *****************************************************************************
 * Revision history:                                                         *
 * 1.0  2002/08/29      First Public Release                                 *
 *                                                                           *
 * $Log: rng.c,v $
 * Revision 1.2  2002/11/19 15:40:01  kht
 * Added startup macros
 *
 * Revision 1.1  2002/10/14 11:08:03  tos
 * Initial version in CVS.
 *
 *                                                                           *
 ****************************************************************************/

#include <chipcon/reg1010.h>
#include <chipcon/hal.h>
#include <chipcon/cc1010eb.h>


#define WAIT_TIME 200 // ms
#define RLED_MASK 0x01
#define YLED_MASK 0x02
#define GLED_MASK 0x04
#define BLED_MASK 0x08


//----------------------------------------------------------------------------
//  MAIN PROGRAM
//----------------------------------------------------------------------------
void main() {

    byte randomNumber;

    // Output enable
    RLED_OE(TRUE);
    YLED_OE(TRUE);
    GLED_OE(TRUE);
    BLED_OE(TRUE);

    // Set optimum settings for speed and low power consumption
    MEM_NO_WAIT_STATES();
    FLASH_SET_POWER_MODE(FLASH_STANDBY_BETWEEN_READS);

    // Loop forever
    while (TRUE) {

        // Generate a random number
        halRandomNumberGen(&randomNumber, 1);

        // Change LEDs
        RLED = randomNumber & RLED_MASK;
        YLED = randomNumber & YLED_MASK;
        GLED = randomNumber & GLED_MASK;
        BLED = randomNumber & BLED_MASK;

        // Wait
        halWait(WAIT_TIME, CC1010EB_CLKFREQ);
    }
      
} // main

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -