Мелкие вопросы по МК и ПЛИС.
-
BerZerK-ku
- Мучитель микросхем
- Сообщения: 492
- Зарегистрирован: Вт июл 22, 2008 08:10:54
Re: Мелкие вопросы по МК и ПЛИС.
До первой задержки там. Для последующих, надо добавить строку time = "нужное значение"; после цикла while.
- просто КОТ
- Друг Кота
- Сообщения: 12364
- Зарегистрирован: Пт дек 17, 2010 15:07:50
- Откуда: Крымский Федеральный Округ
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
А как тайм рассчитать?! Мне надо по пол-часа. Выходит что при частоте в 4МГц это будет 4000000*1800=6,2*10^9. Не многовато ли?!
-
BerZerK-ku
- Мучитель микросхем
- Сообщения: 492
- Зарегистрирован: Вт июл 22, 2008 08:10:54
Re: Мелкие вопросы по МК и ПЛИС.
У вас же изначально дискретность порядка часа указывалась ?! Хотя по сути на данный момент это не важно.
Переменная time задает кол-во отсчетов длительностью _delay_h(1) (в данном случае макрос "реализовывал" часовую задержку).
Т.е. если вам нужна точность 30 минут, соответственно на место _delay_h() необходимо вставить задержку в 30 минут. При этом каждая единица time будет давать задержку в 30 минут.
Переменная time задает кол-во отсчетов длительностью _delay_h(1) (в данном случае макрос "реализовывал" часовую задержку).
Т.е. если вам нужна точность 30 минут, соответственно на место _delay_h() необходимо вставить задержку в 30 минут. При этом каждая единица time будет давать задержку в 30 минут.
- просто КОТ
- Друг Кота
- Сообщения: 12364
- Зарегистрирован: Пт дек 17, 2010 15:07:50
- Откуда: Крымский Федеральный Округ
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
Я слегка запутался. Если _delay_h(1) это 1 час, то мне надо написать там _delay_h(0,5). Так что ли?! Или _delay_m(30)?!
-
BerZerK-ku
- Мучитель микросхем
- Сообщения: 492
- Зарегистрирован: Вт июл 22, 2008 08:10:54
Re: Мелкие вопросы по МК и ПЛИС.
Т.е. вместо _delay_h(1), подставьте mega_delay(30)Мастер Ломастер писал(а):// функция, способная создать задержку до 65535 секунд
void mega_delay(uint16_t delay_in_seconds){
for(; delay_in_seconds; delay_in_seconds--)
_delay_ms(1000);
}
- просто КОТ
- Друг Кота
- Сообщения: 12364
- Зарегистрирован: Пт дек 17, 2010 15:07:50
- Откуда: Крымский Федеральный Округ
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
Код: Выделить всё
#include <ioavr.h>
#include <ina90.h>
#include "delay.h"
void mega_delay(uint16_t delay_in_seconds){
for(; delay_in_seconds; delay_in_seconds--)
_delay_ms(1000);
}
void main(void)
{
unsigned char time = 0;
// PB.0 - выход '1'
// PB.1..PB.7 - вход 'Z'
DDRB |= (1 << DDB0);
PORTB |= (1 << PORTB0);
while(1)
{
if ( PINB & (1 << PINB1) )
time++;
if ( PINB & (1 << PINB2) )
time--;
if ( PINB & (1 << PINB4) )
{
PORTB &= ~(1 << PORTB0);
while(time--)
{
mega_delay(30);
}
PORTB |= (1 << PORTB0);
}
}
}Так?! Если так, то я начал слегка понимать Си!
Последний раз редактировалось просто КОТ Чт дек 29, 2011 19:21:43, всего редактировалось 2 раза.
-
BerZerK-ku
- Мучитель микросхем
- Сообщения: 492
- Зарегистрирован: Вт июл 22, 2008 08:10:54
Re: Мелкие вопросы по МК и ПЛИС.
Ага, только надо добавить еще и саму функцию mega_delay() в проект. Проще всего поместить ее над main(), т.е. как-то так:
Код: Выделить всё
...
void mega_delay(uint16_t delay_in_seconds){
for(; delay_in_seconds; delay_in_seconds--)
_delay_ms(1000);
}
void main(void)
{
...
} -
Мастер Ломастер
- Поставщик валерьянки для Кота
- Сообщения: 1995
- Зарегистрирован: Ср май 11, 2011 21:37:45
- Откуда: Цветочный город
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
BerZerK-ku писал(а):Ага, только надо добавить еще и саму функцию mega_delay() в проект. Проще всего поместить ее над main(), т.е. как-то так:Код: Выделить всё
...
void mega_delay(uint16_t delay_in_seconds){
for(; delay_in_seconds; delay_in_seconds--)
_delay_ms(1000);
}
void main(void)
{
...
}
болтун,вы бы лучше рассказали про то, что в этой функции использованы типы, которых нет в CVAVR - автор вопроса вроде как этим "компилятором" пользуется? а то ведь следующим вопросом будет "почему на uint16_t ругается?"
Последний раз редактировалось Мастер Ломастер Чт дек 29, 2011 19:25:15, всего редактировалось 1 раз.
битва с дураками проиграна, победители торжествуют. слава победителям!
- просто КОТ
- Друг Кота
- Сообщения: 12364
- Зарегистрирован: Пт дек 17, 2010 15:07:50
- Откуда: Крымский Федеральный Округ
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
Я компилятор ещё не выбрал. Какой надо?!
З.Ы. код поправил!
З.Ы. код поправил!
- просто КОТ
- Друг Кота
- Сообщения: 12364
- Зарегистрирован: Пт дек 17, 2010 15:07:50
- Откуда: Крымский Федеральный Округ
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
А если поставить АТтини2313, можно будет на ЖКИ выводить время. Осталось только решить брать по пол-часа или по часу. Даже не знаю. . .


-
p630304
- Нашел транзистор. Понюхал.
- Сообщения: 163
- Зарегистрирован: Вт май 31, 2011 13:43:38
- Откуда: Саратов
Re: Мелкие вопросы по МК и ПЛИС.
Управляет LCD не камень, а залитая в него конфигурация. Если уместите в свою миниПЛИС код - то она будет управлять
А чо вот Альтера может, а ксилис чо не может причем не FPGA.
Re: Мелкие вопросы по МК и ПЛИС.
В зайлинксовском стартер-ките была аппликуха выводящая на дисплей. для coolrunner-II xc2c256
А люди посмотрят и скажут: "Собаки летят. Вот и осень."
- Antifritz
- Прорезались зубы
- Сообщения: 222
- Зарегистрирован: Чт июл 08, 2010 01:03:40
- Откуда: Украина, Киев
Re: Мелкие вопросы по МК и ПЛИС.
Помогите, пожалуйста, запустить ШИМ на ATTiny261A. Мне нужен обычный Fast-PWM на выходах ОС1А и ОС1В со сбросом при совпадении TCNT1 и соответствующего OCR, СК или РСК - пока не принципиально, счетчик считать должен от 0 до 255. Может кто-то написать какие значения должны быть в каких регистрах? А то я что ни напишу - все не запускается. Порт на выход работает нормально, да и ШИМ, иногда, в Протеусе запускается, а вот в железе все так же глухо
.
Заранее благодарен и с Наступающим!
Заранее благодарен и с Наступающим!
Re: Мелкие вопросы по МК и ПЛИС.
как расчитывается сопротивление базы ?
http://4put.ru/pictures/small/237/728667.jpg
http://4put.ru/pictures/small/237/728667.jpg
Tell Me The Truth
-
Mr.Denis
- Прорезались зубы
- Сообщения: 220
- Зарегистрирован: Пт авг 07, 2009 22:06:49
- Откуда: Россия, Москва
Re: Мелкие вопросы по МК и ПЛИС.
С наступающим!
Подскажите как правильно подключить 8 светодиодов к 8 выходам мк?
Подскажите как правильно подключить 8 светодиодов к 8 выходам мк?
STM32F4 Discovery + KEIL + Windows 7
Re: Мелкие вопросы по МК и ПЛИС.
Ток база-эмиттер меньше в h21e тока коллектора. сопротивление R5 вычисляется как r=u/i , где i-ток перехода база-эмиттер, u - напряжение падающее на резисторе R5. u=Uлог.1 - Uбе. Напряжение Uбэ обычно 0.6 вольт. Напряжение лог.1 микроконтроллера смотрим в даташите на микроконтроллер. Это верхняя граница. Нижняя граница - чтобы ток база-эмиттер не превышал максимально допустимый ток Iбэ транзистора.FreshMan писал(а):как расчитывается сопротивление базы ?
А люди посмотрят и скажут: "Собаки летят. Вот и осень."
- Antifritz
- Прорезались зубы
- Сообщения: 222
- Зарегистрирован: Чт июл 08, 2010 01:03:40
- Откуда: Украина, Киев
Re: Мелкие вопросы по МК и ПЛИС.
Mr.Denis писал(а):С наступающим!
Подскажите как правильно подключить 8 светодиодов к 8 выходам мк?
Ну через резистор 0,5кОм-1кОм (смотря какой светодиод) выход МК цепляем к аноду(+) светодиода. Катоды(-) соединяем вместе и подключаем к минусу питания. Но это не единственный вариант, да и подходит только для маломощных светодиодов.
Re: Мелкие вопросы по МК и ПЛИС.
Всех с Новым годом!
Как задать в AVR Studio на ассемблере 16-разрядную переменную?
Пока только смог задать так:
Это правильно или там есть что-то типа "word" и т. п.? А то каждый раз смещения писать и т. д...
Как задать в AVR Studio на ассемблере 16-разрядную переменную?
Пока только смог задать так:
Код: Выделить всё
K_sens: .byte 2Это правильно или там есть что-то типа "word" и т. п.? А то каждый раз смещения писать и т. д...
- БАТАРЕЙКУС
- Потрогал лапой паяльник
- Сообщения: 346
- Зарегистрирован: Сб фев 07, 2009 19:21:25
Re: Мелкие вопросы по МК и ПЛИС.
всех с новым годом
коты ктонть может мне скинуть торент ссылку на QuartusII v9.1
коты ктонть может мне скинуть торент ссылку на QuartusII v9.1
Мечтатель - не тот, кто сидит на диване и думает о несбыточном, а тот, кто всеми силами стремится воплотить несбыточное в реальность.
-
BerZerK-ku
- Мучитель микросхем
- Сообщения: 492
- Зарегистрирован: Вт июл 22, 2008 08:10:54

