Для WiseLord. Напишу подробнее.
Планирую собрать вело спидометр. Я хотел так:
- Датчик на колесе, один импульс на метр. Внешнее прерывание.
- Таймер, прерывание с периодом 1 сек.
- Раз в сек, смотрим количество импульсов. Соответственно это метров в секунду.
- Перевод в км/ч умножив на 3.6 ...
Найдено 6 результатов
- Вс апр 07, 2019 11:43:49
- Форум: AVR
- Тема: Нескольно простых вопросов о программировании AVR на Си.
- Ответы: 1498
- Просмотры: 680353
- Сб апр 06, 2019 21:44:08
- Форум: AVR
- Тема: Нескольно простых вопросов о программировании AVR на Си.
- Ответы: 1498
- Просмотры: 680353
Re: Нескольно простых вопросов о программировании AVR на Си.
Всем привет. Подскажите по алгоритму вычисления скорости.
Я думал так: датчик срабатывает при прохождении 1 метра, соответственно раз в секунду смотрим счётчик получаем
скорость м/с, и умножив на 3,6 переводим в км/ч. Но результат измерения , как вы поняли будет , с шагом 3,6(3,6 7,2 10,8 и т.д ...
Я думал так: датчик срабатывает при прохождении 1 метра, соответственно раз в секунду смотрим счётчик получаем
скорость м/с, и умножив на 3,6 переводим в км/ч. Но результат измерения , как вы поняли будет , с шагом 3,6(3,6 7,2 10,8 и т.д ...
- Вс мар 31, 2019 21:03:53
- Форум: AVR
- Тема: Запустить древний lcd HT1611(WM1611/KO-4B)
- Ответы: 6
- Просмотры: 2208
Re: Запустить древний lcd HT1611(WM1611/KO-4B)
OKF спасибо, я даже не знал о таком операторе.
В конце концов у меня удалось написать рабочую функцию, которая выводит 10 символов из массива, как я и хотел.)
unsigned char segment[]={1,2,3,4,5,6,7,8,9,0};
unsigned char temp;
void write_disp (void) //функция вывода
{
unsigned char i;
for (i=0 ...
В конце концов у меня удалось написать рабочую функцию, которая выводит 10 символов из массива, как я и хотел.)
unsigned char segment[]={1,2,3,4,5,6,7,8,9,0};
unsigned char temp;
void write_disp (void) //функция вывода
{
unsigned char i;
for (i=0 ...
- Пн мар 25, 2019 09:44:53
- Форум: AVR
- Тема: Запустить древний lcd HT1611(WM1611/KO-4B)
- Ответы: 6
- Просмотры: 2208
Re: Запустить древний lcd HT1611(WM1611/KO-4B)
Логика понятна, не понятен синтаксис. Для какого компилятора код?
Например : chr & 1<<i ? on(DI) : off(DI);
Я начинающий, поэтому могу задать вопрос в простых вещах.
Например : chr & 1<<i ? on(DI) : off(DI);
Я начинающий, поэтому могу задать вопрос в простых вещах.
- Вс мар 24, 2019 21:11:33
- Форум: AVR
- Тема: Запустить древний lcd HT1611(WM1611/KO-4B)
- Ответы: 6
- Просмотры: 2208
Re: Запустить древний lcd HT1611(WM1611/KO-4B)
Спасибо OKF за предоставленный код, но если честно я смог его до конца понять например функцию:
void DisplayChar(uint8_t chr)
{
int8_t i;
if (chr == '0') chr = 10;
else if (chr == '-') chr = 15;
for (i = 3; i >= 0; --i) {
chr & 1<<i ? on(DI) : off(DI);
DelayUs(TA_TIME_US);
on(CL);
DelayUs ...
void DisplayChar(uint8_t chr)
{
int8_t i;
if (chr == '0') chr = 10;
else if (chr == '-') chr = 15;
for (i = 3; i >= 0; --i) {
chr & 1<<i ? on(DI) : off(DI);
DelayUs(TA_TIME_US);
on(CL);
DelayUs ...
- Сб мар 23, 2019 22:30:26
- Форум: AVR
- Тема: Запустить древний lcd HT1611(WM1611/KO-4B)
- Ответы: 6
- Просмотры: 2208
Запустить древний lcd HT1611(WM1611/KO-4B)
Всем привет. Пытаюсь запустить древний lcd HT1611(WM1611/KO-4B), безрезультатно.
Я недавно начал изучать Авр, поэтому мои познания весьма скудны. Пытался вывести символы из массива, но в результате имею хаотичный выброс символов, затем дисплей переходит в аппаратный режим таймера.
Ребята кто, в ...
Я недавно начал изучать Авр, поэтому мои познания весьма скудны. Пытался вывести символы из массива, но в результате имею хаотичный выброс символов, затем дисплей переходит в аппаратный режим таймера.
Ребята кто, в ...