автоматическое переключение передач - PullRequest
2 голосов
/ 03 декабря 2010

Я думал о написании программы для автоматического переключения передач моего велосипеда.Для этого может потребоваться микропроцессор, поэтому у меня возник вопрос: есть ли другой язык для программирования микропроцессора или это можно сделать с помощью c и c ++?

Другое дело, что касается программы,может ли оператор switch выполнять мою работу или мне нужен указатель или связанный список, потому что механизм работает в обе стороны, вверх и вниз?

Ответы [ 2 ]

2 голосов
/ 03 декабря 2010

C - прекрасный язык для работы с микропроцессорами, и для многих задач запись в ассемблере все еще жизнеспособна.

Не думаю, что вам действительно нужна сложная структура данных.

I 'd просто определите несколько констант, таких как минимальная и максимальная передача и диаметр колеса

. Затем индексируйте массив, используя номер передачи, который имеет минимальную и максимальную скорости для каждой передачи и, наконец, переменную для хранения текущей передачи.

Я бы просто вызывал прерывание при каждом обороте и использовал его для вычисления скорости и при необходимости давал команду переключения передач вверх и вниз.

Для дополнительного использования я бы добавил что-то, чтоВы не хотите менять передачу, если вы неподвижны, изменили передачу меньше, чем x мс назад, и вам понадобится какая-то калибровка.

У Shimano есть система, которая хорошо выглядит и хорошо отзывается, но стоит дорогоТем не менее, было бы хорошо использовать в качестве ссылки.

1 голос
/ 03 декабря 2010

Так что я думаю, что вы можете недооценивать простоту этой задачи.

Ваш велосипед уже автоматический?или вы будете создавать механический привод для переключения передач?

и что за велосипед?велосипед?motorbike?

и для вопроса о структуре данных я бы просто использовал простой массив или переменную, которая содержит текущий номер шестерни.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...