init commit

This commit is contained in:
forbelief 2016-04-15 17:08:43 +08:00
commit 91399c2e8f
119 changed files with 27396 additions and 0 deletions

View file

@ -0,0 +1,95 @@
/*
* knob.c -
*
* 使
*/
#include <stdint.h>
#include "include.h"
#include "include/knob.h"
#include "include/config.h"
static volatile int32_t knob_val;
/*
* knob_init() -
*
*
*/
void knob_init(void)
{
gpio_Interrupt_init(KNOB_A_PINX, GPI_UP_PF, GPI_INP_EITH);
gpio_Interrupt_init(KNOB_B_PINX, GPI_UP_PF, GPI_DISAB);
// gpio_Interrupt_init(KNOB_KEY_PINX, GPI_UP_PF, GPI_INP_EITH);
disable_irq(PortD_irq_no);
}
/*
* knob_enable() - 使
*/
void knob_enable(void)
{
enable_irq(PortD_irq_no);
return;
}
/*
* knob_disable() -
*/
void knob_disable(void)
{
disable_irq(PortA_irq_no);
return;
}
/*
* knob_clear() -
*/
void knob_clear(void)
{
knob_val = 0;
return;
}
/*
* get_knob_val() -
*/
int32_t get_knob_val(void)
{
return knob_val;
}
/*
* knob_detect() -
*
* A相输出发生沿跳变时调用沿
*/
void knob_detect(void)
{
uint8_t knob_A, knob_B;
knob_A = gpio_get(KNOB_A_PINX);
knob_B = gpio_get(KNOB_B_PINX);
if ((knob_A == 0 && knob_B == 1) || (knob_A == 1 && knob_B == 0))
{
knob_val++;
}
else // 即if ((knob_A == 0 && knob_B == 0) || (knob_A == 1 && knob_B == 1))
{
knob_val--;
}
return;
}