📄 generator.c
字号:
/* This file is part of MANTIS OS, Operating System for Nymph. See http://mantis.cs.colorado.edu/ Copyright (C) 2003 University of Colorado, Boulder This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License (See http://www.gnu.org/copyleft/gpl.html) along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA, or send email to mantis-users@cs.colorado.edu.*//** * File: generator.c * Author: Charles Gruenwald III - gruenwal@colorado.edu * Date: 12-14-2003 * * Description: generator will repeatedly send the numbers 1,2,3...255 * over the radio and display the last 3 bits in binary on the LEDs. it * is to be used with receiver.c to test the radios on compatable * hardware (nymph/mica2). */#include "mos.h"#include "printf.h"#include "led.h"#include "msched.h"#include "tlist.h"#include "com.h"#include "command_daemon.h"#include "node_id.h"static comBuf send_pkt;void generator (void);/*void funky_start_thread (void){ mos_thread_new(mos_command_daemon, 196, PRIORITY_NORMAL); mos_register_function("generator", generator);}*/void start (void){ //give us control over serial/rf mos_thread_new (mos_command_daemon, 196, PRIORITY_NORMAL); //start this thread mos_thread_new (generator, 128, PRIORITY_NORMAL); //mos_thread_new (funky_start_thread, 128, PRIORITY_NORMAL); //mos_register_function("generator", generator);}void generator (void){ uint8_t value = 0; uint8_t i; uint16_t a; uint16_t cycles; cycles = 50; send_pkt.size = 32; mos_thread_set_suspend_state (SUSPEND_STATE_SLEEP); printf ("\nSending begins in 20 seconds (size %d bytes)...", send_pkt.size); mos_thread_sleep (20000); for (a=0;a<cycles;a++) { mos_led_toggle(1); //fill packet for (i = 0; i < send_pkt.size; i++) send_pkt.data[i] = value++; com_send (IFACE_RADIO, &send_pkt); //printf("sent [%C].\n",value); mos_thread_sleep (400); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -