Или вбить значения в исходник намертво, без возможности их изменения кнопками, но это отстой
Мелкие вопросы по МК и ПЛИС.
- Engineer_Keen
- Друг Кота
- Сообщения: 3872
- Зарегистрирован: Пт янв 29, 2010 10:27:40
- Откуда: Москва
Re: Мелкие вопросы по МК и ПЛИС.
Попробовать поставить внешний монитор питания (есть даже маленькие в SOT-23 корпусе типа MAX803).
Или вбить значения в исходник намертво, без возможности их изменения кнопками, но это отстой
Или вбить значения в исходник намертво, без возможности их изменения кнопками, но это отстой
- Реклама
Re: Мелкие вопросы по МК и ПЛИС.
а это как поможет?Engineer_Keen писал(а):Попробовать поставить внешний монитор питания
это да... Регулировка здесь обязательна...Engineer_Keen писал(а):без возможности их изменения кнопками, но это отстой
- Engineer_Keen
- Друг Кота
- Сообщения: 3872
- Зарегистрирован: Пт янв 29, 2010 10:27:40
- Откуда: Москва
Re: Мелкие вопросы по МК и ПЛИС.
EEPROM портится когда контроллер работает на пониженном напряжении (говорят что это из-за выполнения инструкций по случайным адресам). Такая возможность вроде как исключается, если включен внутренний BOD, который в эти моменты времени держит контроллер в ресете. Ну а раз при 0*С глючит и внутренний BOD (а глючит ли он у вас? включите проверьте!), то заместо него можно воткнуть внешний (у MAX803 диапазон от -40*С).isx писал(а):а это как поможет?
Re: Мелкие вопросы по МК и ПЛИС.
Тоесть вешать его нужно на ресет?
Из супервизоров в наличии у нас только MAX1232ESA, но у него напряжение срабатывания 4.6В, мне кажется многовато...
Есть под заказ, но чё то не понятно. Посмотрите пожалуйста, там 2 товара с ценой, один 86 другой 6 руб. в чём разница и который мне нужен? http://www.compel.ru/?s=MAX803
P.S. НЕ реклама!
Из супервизоров в наличии у нас только MAX1232ESA, но у него напряжение срабатывания 4.6В, мне кажется многовато...
Есть под заказ, но чё то не понятно. Посмотрите пожалуйста, там 2 товара с ценой, один 86 другой 6 руб. в чём разница и который мне нужен? http://www.compel.ru/?s=MAX803
P.S. НЕ реклама!
- Gudd-Head
- Друг Кота
- Сообщения: 20092
- Зарегистрирован: Чт сен 18, 2008 12:27:21
- Откуда: Столица Мира Санкт-Петербург
Re: Мелкие вопросы по МК и ПЛИС.
Производитель, напряжение срабатывание, температурный диапазон...isx писал(а):в чём разница
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
- Реклама
- Engineer_Keen
- Друг Кота
- Сообщения: 3872
- Зарегистрирован: Пт янв 29, 2010 10:27:40
- Откуда: Москва
Re: Мелкие вопросы по МК и ПЛИС.
Можно и 1232 поставить.
Re: Мелкие вопросы по МК и ПЛИС.
Странно... Такой большой ценовой разброс при таких маленьких различиях параметров...
Нашёл ещё TPS3510P в наличии, но с даташитом никак не разберусь..
Нашёл ещё TPS3510P в наличии, но с даташитом никак не разберусь..
- vitalik_1984
- Поставщик валерьянки для Кота
- Сообщения: 2482
- Зарегистрирован: Пт авг 27, 2010 05:57:06
- Откуда: Тюмень
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
Так в посмотрите минимальную партию тоisx писал(а):Странно... Такой большой ценовой разброс при таких маленьких различиях параметров...
Он похоже вам не подойдёт. Больше похоже на защиту питания материнской платы – отслеживает сразу три напряжения. Если только вся схема питается от 12 вольт, то можно подать через резисторный делитель на ненужные ножки. А нужное напряжение мониторить.TPS3510P в наличии, но с даташитом никак не разберусь..
Re: Мелкие вопросы по МК и ПЛИС.
По поводу партии. Звонил в контору и узнавал, первая стоит 116р. за штуку, а вторая 29р.. Почему так не знают, говорят производители разные. Заказал 3шт. по 29р. на следущей недели придут, посморим что за звери 
По поводу TPS3510P. Верно, я и не подумал что надо будет вешать 12 (или сколько там порог) вольт, чтоб она из ресета вышла. У меня в схеме есть линия 12В, но всё же, по мне, это изврат какой-то
По поводу TPS3510P. Верно, я и не подумал что надо будет вешать 12 (или сколько там порог) вольт, чтоб она из ресета вышла. У меня в схеме есть линия 12В, но всё же, по мне, это изврат какой-то
Re: Мелкие вопросы по МК и ПЛИС.
Atmel Studio 6 при компиляции выдает ошибку:
Error 1 expected ')' before numeric constant 19 13
Error 1 expected ')' before numeric constant 19 13
Код: Выделить всё
#define F_CPU 8000000UL
#include <avr/interrupt.h>
#include <avr/io.h>
#include <util/delay.h>
#define KEY1UM PIND.2
#define KEY2UP PIND.3
#define KEY4IM PIND.6
void key_scan()
{
}
void kb_check()
{
key_scan((KEY1UM), 0); // Error 1 expected ')' before numeric constant
key_scan((KEY2UP), 1); // Error 2 expected ')' before numeric constant
key_scan((KEY4IM), 2); // Error 3 expected ')' before numeric constant
}
int main(void)
{
while(1)
{
}
}
- Аlex
- Модератор
- Сообщения: 4614
- Зарегистрирован: Чт мар 18, 2010 23:09:57
- Откуда: Планета Земля
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
Сочувствую 
Re: Мелкие вопросы по МК и ПЛИС.
Правильно выдает. Вызываете функцию key_scan с параметрами, а объявлена она без них.
Re: Мелкие вопросы по МК и ПЛИС.
То же самое, ошибка не пропала.
Спойлер
Код: Выделить всё
#define F_CPU 8000000UL
#include <avr/interrupt.h>
#include <avr/io.h>
#include <util/delay.h>
#define KEY1UM PIND.2
#define KEY2UP PIND.3
#define KEY4IM PIND.6
#define NOTT 0
#define PRES 1
#define LEAV 2
#define HOLD 3
uint8_t key_state[5];
uint8_t key_count[5];
uint8_t kb_tmrU, kb_tmrI;
uint8_t wait_key_tmr = 0;
uint16_t wait_key_tmr2 = 0;
void key_scan(uint8_t key, uint8_t num) //функция определение клика и удержания
{
if (key == 0) //кнопка нажата
{
if (key_count[num] < 255) key_count[num]++; //считаем время удержания
else key_state[num] = HOLD; //0,28сек
}
else if (key_count[num] > 0 && key_state[num] != HOLD) key_count[num] --; //кнопка отжата, считаем время от последнего нажатия
else key_count[num] = 0;
if (key_count[num] == 0) key_state[num] = NOTT;
else if (key_count[num] > 8) //интервал, после которого фиксируется однократное нажатие (с отпусканием)
{
if (key_state[num] == PRES && key == 1) key_state[num] = LEAV;
}
else if (key_count[num] > 4) //интервал, после которого фиксируется нажатие (10ms)
{
if (key_state[num] == NOTT) key_state[num] = PRES;
}
}
void kb_check()
{
key_scan((KEY1UM),0); // Error 1 expected ')' before numeric constant
key_scan((KEY2UP),1); // Error 2 expected ')' before numeric constant
key_scan((KEY4IM),2); // Error 3 expected ')' before numeric constant
}
int main(void)
{
while(1)
{
}
}
Re: Мелкие вопросы по МК и ПЛИС.
AStudio не знает такого:#include <avr/interrupt.h>
#include <avr/io.h>
#include <util/delay.h>
PIND.2
Re: Мелкие вопросы по МК и ПЛИС.
То же самое.pyzhman писал(а):Попробуйте так:Код: Выделить всё
(KEY1UM,0)
Это под Atmel Studio 6, а как тогда если не PIND.2
там даже в строке вверху при выделении пина появляется :
#define PIND _SFR_IO8(0x09)
Последний раз редактировалось service47 Чт ноя 07, 2013 10:04:15, всего редактировалось 1 раз.
- Gudd-Head
- Друг Кота
- Сообщения: 20092
- Зарегистрирован: Чт сен 18, 2008 12:27:21
- Откуда: Столица Мира Санкт-Петербург
Re: Мелкие вопросы по МК и ПЛИС.
Есть много тем конкретно по языку С. Например, http://radiokot.ru/forum/viewtopic.php?f=62&t=37190service47 писал(а):То же самое, ошибка не пропала.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Re: Мелкие вопросы по МК и ПЛИС.
//#define KEY1UM PIND.2
#define KEY1UM ((PIND & (1<<PD2)) ? 1 : 0)
#define KEY1UM ((PIND & (1<<PD2)) ? 1 : 0)
Re: Мелкие вопросы по МК и ПЛИС.
Предыдущая ошибка пропала, но появилась эта ошибка в тех же местах:a_skr писал(а)://#define KEY1UM PIND.2
#define KEY1UM ((PIND & (1<<PD2)) ? 1 : 0)
Error 2 expected ')' before ';' token 44 21
Спойлер
Код: Выделить всё
#define F_CPU 8000000UL
#include <avr/interrupt.h>
#include <avr/io.h>
#include <util/delay.h>
#define KEY1UM ((PIND & (1<<PD2))
#define KEY2UP ((PIND & (1<<PD3))
#define KEY4IM ((PIND & (1<<PD6))
#define NOTT 0
#define PRES 1
#define LEAV 2
#define HOLD 3
uint8_t key_state[5];
uint8_t key_count[5];
uint8_t kb_tmrU, kb_tmrI;
uint8_t wait_key_tmr = 0;
uint16_t wait_key_tmr2 = 0;
void key_scan(uint8_t key, uint8_t num) //функция определение клика и удержания
{
if (key == 0) //кнопка нажата
{
if (key_count[num] < 255) key_count[num]++; //считаем время удержания
else key_state[num] = HOLD; //0,28сек
}
else if (key_count[num] > 0 && key_state[num] != HOLD) key_count[num] --; //кнопка отжата, считаем время от последнего нажатия
else key_count[num] = 0;
if (key_count[num] == 0) key_state[num] = NOTT;
else if (key_count[num] > 8) //интервал, после которого фиксируется однократное нажатие (с отпусканием)
{
if (key_state[num] == PRES && key == 1) key_state[num] = LEAV;
}
else if (key_count[num] > 4) //интервал, после которого фиксируется нажатие (10ms)
{
if (key_state[num] == NOTT) key_state[num] = PRES;
}
}
void kb_check()
{
key_scan(KEY1UM,0); // Error 1 expected ')' before numeric constant
key_scan(KEY2UP,1); // Error 2 expected ')' before numeric constant
key_scan(KEY4IM,2); // Error 3 expected ')' before numeric constant
}
int main(void)
{
while(1)
{
}
}
Re: Мелкие вопросы по МК и ПЛИС.
Кол-во скобок посчитайте.
Открывающих и закрывающих.


