А на счет исполнения по портам я и не спрашивал
Найдено 108 результатов
- Вт июн 22, 2010 14:42:34
- Форум: AVR
- Тема: WinAvr в вопросах и ответах
- Ответы: 2199
- Просмотры: 1269712
Re: WinAvr в вопросах и ответах
Вот! Спасибо за ответ. Попробую переписать по другому, так как и на выходе тоже не то что должно быть. Вернее не все 
А на счет исполнения по портам я и не спрашивал
Всем спасибо за ответы на мой бред 
А на счет исполнения по портам я и не спрашивал
- Вт июн 22, 2010 12:44:22
- Форум: AVR
- Тема: WinAvr в вопросах и ответах
- Ответы: 2199
- Просмотры: 1269712
Re: WinAvr в вопросах и ответах
не понял... вы хотите сказать, что участок кода
В симуляторе и при трассировке в протеусе получаются иногда очень интересные и разные варианты
DDRB = 0xFF; NOP;
PORTB = 0xFF; NOP;
PORTB = 0x00; NOP;
PORTB = 0xFF; NOP;
PORTB = 0x00; NOP;
Ну или
DDRB = 0xFF;
PORTB = 0xFF;
PORTB ...
В симуляторе и при трассировке в протеусе получаются иногда очень интересные и разные варианты
DDRB = 0xFF; NOP;
PORTB = 0xFF; NOP;
PORTB = 0x00; NOP;
PORTB = 0xFF; NOP;
PORTB = 0x00; NOP;
Ну или
DDRB = 0xFF;
PORTB = 0xFF;
PORTB ...
- Вт июн 22, 2010 12:22:12
- Форум: AVR
- Тема: WinAvr в вопросах и ответах
- Ответы: 2199
- Просмотры: 1269712
Re: WinAvr в вопросах и ответах
Да поменял уже говорю. В предыдущем посте описал.
- Вт июн 22, 2010 05:12:10
- Форум: AVR
- Тема: WinAvr в вопросах и ответах
- Ответы: 2199
- Просмотры: 1269712
Re: WinAvr в вопросах и ответах
Но проблема этим не решилась и решиться не могла...
Вопрос еще. Как организовать задержку в функции на несколько переполнений таймера? Может есть отточенное решение? А то я через while() делаю в теле функции, который сравнивает значение каунтера декрементируемого в обработчике прерывания по ...
Вопрос еще. Как организовать задержку в функции на несколько переполнений таймера? Может есть отточенное решение? А то я через while() делаю в теле функции, который сравнивает значение каунтера декрементируемого в обработчике прерывания по ...
- Вт июн 22, 2010 04:56:52
- Форум: AVR
- Тема: WinAvr в вопросах и ответах
- Ответы: 2199
- Просмотры: 1269712
Re: WinAvr в вопросах и ответах
Ну в принципе, я использую сначала ON и потом OFF. Так что один раз ставлю бит, а потом его инвертирую. А NOPы округляют задержку до 17.5 us при данном значении кварца и устаканивается значение в порту. Т.е. следующее действие при работе с портом хоть как сразу не даст его изменить. Ну примерно так ...
- Пн июн 21, 2010 19:30:41
- Форум: AVR
- Тема: WinAvr в вопросах и ответах
- Ответы: 2199
- Просмотры: 1269712
Re: WinAvr в вопросах и ответах
Ну вы правы прерывание не единственное, так что надо ^ делать. Отключение, включение а потом снова отключение из-за того, что тот же таймер работает на обработку приема кода. И тайминги новые заводить не было смысла.
- Пн июн 21, 2010 04:11:51
- Форум: AVR
- Тема: WinAvr в вопросах и ответах
- Ответы: 2199
- Просмотры: 1269712
Re: WinAvr в вопросах и ответах
Самое интересное, что с любой оптимизацией и "чистым" мейкфайлом ни чего не меняется. Проблема "уходит", когда из тела функции выкидываю все циклы и тогда все идет как надо. Вообще это функция выплевывания кода карточки EM-marine в порт... Простейшая вроде бы задача когда все готово и остается ...
- Пт июн 18, 2010 12:21:13
- Форум: AVR
- Тема: WinAvr в вопросах и ответах
- Ответы: 2199
- Просмотры: 1269712
Re: WinAvr в вопросах и ответах
1) _rfid_i = 0x08;
do{
2) _rfid_i--;
3) _rfid_j = 0x08;
4) _byte_key = *((unsigned char *)&_rfid_to_sent_array + _rfid_i - 1);
do{
_rfid_j--;
if((_byte_key & 0x80) == 0x80) {ClrBit(TEST); NOP;}
else {SetBit(TEST); NOP;}
InvBit(TEST);
NOP;
_byte_key = _byte_key << 1;
}
}
А ...
do{
2) _rfid_i--;
3) _rfid_j = 0x08;
4) _byte_key = *((unsigned char *)&_rfid_to_sent_array + _rfid_i - 1);
do{
_rfid_j--;
if((_byte_key & 0x80) == 0x80) {ClrBit(TEST); NOP;}
else {SetBit(TEST); NOP;}
InvBit(TEST);
NOP;
_byte_key = _byte_key << 1;
}
}
А ...
- Пт июн 18, 2010 12:14:18
- Форум: AVR
- Тема: WinAvr в вопросах и ответах
- Ответы: 2199
- Просмотры: 1269712
Re: WinAvr в вопросах и ответах
Переходит не по очереди 357,358, 370 а в произвольном порядке. Как на дизасме все идет, а ни как в листинге Си. То есть очередность команд нарушается. Сначала присваивается значение переменной, потом идет (не известно почему) InvBit(test), потом возвращается назад и потом только по очереди.
- Пт июн 18, 2010 05:11:03
- Форум: AVR
- Тема: WinAvr в вопросах и ответах
- Ответы: 2199
- Просмотры: 1269712
Re: WinAvr в вопросах и ответах
При удалени <avr/signal.h> он ругается на sei() (глоб. разрешение прерываний) даже при наличии <avr/interrupt.h>
МК стоит АТмега128.
Попробуй ручками файл прописать #include <avr/iom128.h>
Хотя... Проверил свою отладочную на 128 меге.. Ну нету там GIMSKа....
Есть в таймерах на 8 бит - TIMSK и ...
МК стоит АТмега128.
Попробуй ручками файл прописать #include <avr/iom128.h>
Хотя... Проверил свою отладочную на 128 меге.. Ну нету там GIMSKа....
Есть в таймерах на 8 бит - TIMSK и ...
- Пт июн 18, 2010 04:50:05
- Форум: AVR
- Тема: WinAvr в вопросах и ответах
- Ответы: 2199
- Просмотры: 1269712
Проблемка
Народ, выручай... Неделю бьюсь и не могу понять что происходит с кодом. Он типа "прыгает". Может компилятор мозги колупает (gcc 4.3.3 WinAvr под студией)? Строки 358, 370, 357
350: sei(); //разрешаю все прерывания
+000004C1: 9478 SEI Global Interrupt Enable
351: Timer_TOIE_ON ...
350: sei(); //разрешаю все прерывания
+000004C1: 9478 SEI Global Interrupt Enable
351: Timer_TOIE_ON ...
- Сб апр 10, 2010 19:47:43
- Форум: Практика
- Тема: Покупка осциллографа
- Ответы: 23
- Просмотры: 8996
Re: Покупка осциллографа
УРА!!!! Поздравьте меня!!! Я научился осциллографы за 2 бутылки пива покупать! Второй осцил за неделю 
- Сб апр 10, 2010 19:05:19
- Форум: Микроконтроллеры и ПЛИС
- Тема: Atmega128. подключение датчиков
- Ответы: 6
- Просмотры: 2583
Re: Atmega128. подключение датчиков
Mega128 применяют в двух случаях: первое в мега проектах и второе в курсовиках (дипломах и т.п.)...
Вообще, мое субъективное мнение, для изучения МК лучше всего использовать мегу побольше. Так у меня на столе валяется отладочная плата на 128 меге и я не испытываю дискомфорта. Была бы тинька ...
Вообще, мое субъективное мнение, для изучения МК лучше всего использовать мегу побольше. Так у меня на столе валяется отладочная плата на 128 меге и я не испытываю дискомфорта. Была бы тинька ...
- Вт апр 06, 2010 12:19:41
- Форум: Микроконтроллеры и ПЛИС
- Тема: RFID карта 125кгц 64 бита
- Ответы: 7
- Просмотры: 2257
Re: RFID карта 125кгц 64 бита
Для примера (знаю как облегчает жизнь
код в Манчестере - 01010110011001101001101001100101101001101001010101011010011001010101100101010101010101011010100101101010010110101010101010101010
код со считывателя - 0001100011 0000 0 0000 0 1110 1 0100 1 0010 1 1001 0 0111 1 1001 0 1111 0 111111111
код ...
код в Манчестере - 01010110011001101001101001100101101001101001010101011010011001010101100101010101010101011010100101101010010110101010101010101010
код со считывателя - 0001100011 0000 0 0000 0 1110 1 0100 1 0010 1 1001 0 0111 1 1001 0 1111 0 111111111
код ...
- Вт апр 06, 2010 11:36:57
- Форум: Микроконтроллеры и ПЛИС
- Тема: RFID карта 125кгц 64 бита
- Ответы: 7
- Просмотры: 2257
Re: RFID карта 125кгц 64 бита
Все. Разобрался сам. Читал 2 разные карточки. Проблема была в том, что у обеих есть 2 участка кода - в одном 9 единиц , а в другом 10 единиц.
Получается что в Манчестере комбинации бит 10 = 1 нормальному биту, и 01 = 0 соответственно. Хотя для начала нужно еще понять - прямой или инвертированный ...
Получается что в Манчестере комбинации бит 10 = 1 нормальному биту, и 01 = 0 соответственно. Хотя для начала нужно еще понять - прямой или инвертированный ...
- Вт апр 06, 2010 10:25:33
- Форум: Микроконтроллеры и ПЛИС
- Тема: RFID карта 125кгц 64 бита
- Ответы: 7
- Просмотры: 2257
Re: RFID карта 125кгц 64 бита
Я тут ее покрутил и получил следующее:
1111111110001100011000000000011101010010010110010011111001011110
Вроде как четность сходится.... Но это все чисто экспериментальным путем получено. На пальцах можешь объяснить как код первоначальный выглядит (Манчестер), как его преобразовать в нормальный ...
1111111110001100011000000000011101010010010110010011111001011110
Вроде как четность сходится.... Но это все чисто экспериментальным путем получено. На пальцах можешь объяснить как код первоначальный выглядит (Манчестер), как его преобразовать в нормальный ...
- Вт апр 06, 2010 06:43:46
- Форум: Микроконтроллеры и ПЛИС
- Тема: RFID карта 125кгц 64 бита
- Ответы: 7
- Просмотры: 2257
Re: RFID карта 125кгц 64 бита
Во-во. У меня таких даташей уже море... Может на примере считанного мной кода по полочкам кто сможет разложить что да как?
Вот все 128 бит кода в манчестере. Проверил - он цикличен Где тут начинаются девять единиц и что в итоге получиться?
10 10 10 10 10 10 10 10 10 10 01 01 01 10 01 10 01 10 10 01 ...
Вот все 128 бит кода в манчестере. Проверил - он цикличен Где тут начинаются девять единиц и что в итоге получиться?
10 10 10 10 10 10 10 10 10 10 01 01 01 10 01 10 01 10 10 01 ...
- Пт авг 21, 2009 10:11:43
- Форум: АвтоМотоВело
- Тема: измерение кол-тва бензина в баке
- Ответы: 71
- Просмотры: 57180
- Пн июл 27, 2009 11:47:11
- Форум: Микроконтроллеры и ПЛИС
- Тема: Моя вымученная библиотечка 1 wire...
- Ответы: 4
- Просмотры: 1652
- Пн июл 27, 2009 07:04:59
- Форум: Микроконтроллеры и ПЛИС
- Тема: DS18b20 и ATMEGA16 (проблемы)...
- Ответы: 7
- Просмотры: 4113