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

📄 sensors.c

📁 专业汽车级嵌入式操作系统OSEK的源代码
💻 C
字号:
#include "platform_config.h"#include "types.h"#include "stack.h"#include "threads.h"#include "classes.h"#include "language.h"#include "sensors.h"#include "poll.h"#include "at91sam7s256.h"#include "nxt_avr.h"extern int verbose;sensor_t sensors[N_SENSORS] = {  {0, 0, 0, 0, 0},  {0, 0, 0, 0, 0},  {0, 0, 0, 0, 0},  {0, 0, 0, 0, 0}};voidinit_sensors(void){  int i;  for (i = 0; i < N_SENSORS; i++) {    unset_digi0(i);    unset_digi1(i);    nxt_avr_set_input_power(i, 0);  }}/** * Read sensor values */voidpoll_sensors(void){  byte i;  sensor_t *pSensor = sensors;  for (i = 0; i < N_SENSORS; i++, pSensor++) {    pSensor->value = sensor_adc(i);  }}voidread_buttons(int dummy, short *output){  *output = (short) buttons_get();}voidcheck_for_data(char *valid, char **nextbyte){  *valid = 0;}voidset_digi0(int sensor){  /* Enable output on the pin */  int functions[] = { AT91C_PIO_PA23, AT91C_PIO_PA28,    AT91C_PIO_PA29, AT91C_PIO_PA30  };  *AT91C_PIOA_PER |= functions[sensor];  *AT91C_PIOA_OER |= functions[sensor];  /* Set high */  *AT91C_PIOA_SODR |= functions[sensor];}voidunset_digi0(int sensor){  /* Enable output on the pin */  int functions[] = { AT91C_PIO_PA23, AT91C_PIO_PA28,    AT91C_PIO_PA29, AT91C_PIO_PA30  };  *AT91C_PIOA_PER |= functions[sensor];  *AT91C_PIOA_OER |= functions[sensor];  /* Set low */  *AT91C_PIOA_CODR |= functions[sensor];}voidset_digi1(int sensor){  /* Enable output on the pin */  int functions[] = { AT91C_PIO_PA18, AT91C_PIO_PA19,    AT91C_PIO_PA20, AT91C_PIO_PA2  };  *AT91C_PIOA_PER |= functions[sensor];  *AT91C_PIOA_OER |= functions[sensor];  /* Set high */  *AT91C_PIOA_SODR |= functions[sensor];}voidunset_digi1(int sensor){  /* Enable output on the pin */  int functions[] = { AT91C_PIO_PA18, AT91C_PIO_PA19,    AT91C_PIO_PA20, AT91C_PIO_PA2  };  *AT91C_PIOA_PER |= functions[sensor];  *AT91C_PIOA_OER |= functions[sensor];  /* Set low */  *AT91C_PIOA_CODR |= functions[sensor];}

⌨️ 快捷键说明

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