mica2-humidity.c

来自「MANTIS是由科罗拉多大学开发的传感器网络嵌入式操作系统。 这是mantis」· C语言 代码 · 共 80 行

C
80
字号
//  This file is part of MANTIS OS, Operating System//  See http://mantis.cs.colorado.edu/////  Copyright (C) 2003,2004,2005 University of Colorado, Boulder////  This program is free software; you can redistribute it and/or//  modify it under the terms of the mos license (see file LICENSE)#include "mos.h"#if defined(PLATFORM_MICA_ANY)#include "mica2-humidity.h"#include "avr-i2c.h"#include "dev.h"#include "mutex.h"#if defined(MICA2_HUMIDITY) || !defined(SCONS)mos_mutex_t humidity_mutex;uint8_t powered;static uint8_t mode;static void mica2_humidity_on(void){   uint8_t i;   i = HUMIDITY_PIN_MASK;   dev_ioctl(DEV_AVR_I2C, I2C_SET_BRR, HUMIDITY_CLOCK);      dev_ioctl(DEV_AVR_I2C, I2C_DEST_ADDR, HUMIDITY_POWER_ADDR);   dev_write(DEV_AVR_I2C, &i, sizeof(i));   }static void mica2_humidity_off(void){   uint8_t i;   i = ~(HUMIDITY_PIN_MASK);      dev_ioctl(DEV_AVR_I2C, I2C_DEST_ADDR, HUMIDITY_POWER_ADDR);   dev_write(DEV_AVR_I2C, &i, sizeof(i));}uint8_t dev_read_DEV_MICA2_HUMIDITY(void *buf, uint16_t count){   avr_i2c_init();      if(mode == DEV_MODE_OFF)      mica2_humidity_on();   dev_ioctl(DEV_AVR_I2C, I2C_DEST_ADDR, HUMIDITY_DATA_ADDR);   dev_read(DEV_AVR_I2C, (uint8_t *)buf, count);      if(mode == DEV_MODE_OFF)      mica2_humidity_off();      return count;}uint8_t dev_write_DEV_MICA2_HUMIDITY(void *buf, uint16_t count){   return DEV_UNSUPPORTED;}uint8_t dev_ioctl_DEV_MICA2_HUMIDITY(int8_t request, ...){   return DEV_BAD_IOCTL;}void mica2_humidity_init(void){   mica2_humidity_off();   powered = DEV_MODE_OFF;   mos_mutex_init(&humidity_mutex);}#endif#endif

⌨️ 快捷键说明

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