stepper support
This commit is contained in:
32
src/main.c
32
src/main.c
@ -44,8 +44,6 @@ typedef struct clock_s {
|
||||
uint8_t weekday;
|
||||
uint8_t month;
|
||||
uint8_t year;
|
||||
uint8_t minuteStepPosition;
|
||||
uint8_t hourStepPosition;
|
||||
} clock_t;
|
||||
|
||||
typedef struct opTime_s {
|
||||
@ -67,8 +65,6 @@ volatile uint8_t tack = 0;
|
||||
volatile uint8_t step = 0;
|
||||
|
||||
ISR(TIMER2_OVF_vect) {
|
||||
cli();
|
||||
|
||||
clock.second++;
|
||||
|
||||
if (valid != 2) {
|
||||
@ -85,8 +81,6 @@ ISR(TIMER2_OVF_vect) {
|
||||
}
|
||||
}
|
||||
|
||||
sei();
|
||||
|
||||
opTime.second++;
|
||||
|
||||
if (opTime.second >= 60) {
|
||||
@ -134,8 +128,6 @@ int main() {
|
||||
clock.hour = 0;
|
||||
clock.minute = 0;
|
||||
clock.second = 0;
|
||||
clock.minuteStepPosition = 0;
|
||||
clock.hourStepPosition = 0;
|
||||
|
||||
opTime.hour = 0;
|
||||
opTime.minute = 0;
|
||||
@ -484,8 +476,6 @@ int main() {
|
||||
clock.month = rd.monthDigit0 + rd.monthDigit1 * 10;
|
||||
clock.year = rd.yearDigit0 + rd.yearDigit1 * 10;
|
||||
|
||||
clock.minuteStepPosition = clock.minute * STEPS_PER_MINUTE;
|
||||
clock.hourStepPosition = clock.hour * STEPS_PER_HOUR;
|
||||
|
||||
valid = 2;
|
||||
timeValidCnt++;
|
||||
@ -523,25 +513,31 @@ int main() {
|
||||
printf("POS: %02d\n", positionSwitch);
|
||||
}
|
||||
|
||||
static uint8_t currentMinutePosition = 0;
|
||||
static uint8_t currentHourPosition = 0;
|
||||
if (timeValidCnt > 0) {
|
||||
if (step != 0) {
|
||||
step = 0;
|
||||
if (currentMinutePosition != clock.minuteStepPosition) {
|
||||
|
||||
static uint8_t currentMinutePosition = 0;
|
||||
uint8_t minuteStepPosition = clock.minute * STEPS_PER_MINUTE;
|
||||
if (currentMinutePosition != minuteStepPosition) {
|
||||
printf("Minute: ");
|
||||
if (currentMinutePosition > clock.minuteStepPosition) {
|
||||
if (currentMinutePosition > minuteStepPosition) {
|
||||
printf("steps backward, ");
|
||||
}
|
||||
currentMinutePosition++;
|
||||
printf("desired: %d, current: %d\n", clock.minuteStepPosition, currentMinutePosition);
|
||||
printf("desired: %d, current: %d\n", minuteStepPosition, currentMinutePosition);
|
||||
}
|
||||
if (currentHourPosition != clock.hourStepPosition) {
|
||||
|
||||
static uint8_t currentHourPosition = 0;
|
||||
uint8_t hourStepPosition = clock.hour * STEPS_PER_HOUR;
|
||||
if (currentHourPosition != hourStepPosition) {
|
||||
printf("Hour: ");
|
||||
if (currentHourPosition > clock.hourStepPosition) {
|
||||
if (currentHourPosition > hourStepPosition) {
|
||||
printf("steps backward, ");
|
||||
}
|
||||
currentHourPosition++;
|
||||
printf("desired: %d, current: %d\n", clock.hourStepPosition, currentHourPosition);
|
||||
printf("desired: %d, current: %d\n", hourStepPosition, currentHourPosition);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user