АвторСообщение



Пост N: 1146
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 3
ссылка на сообщение  Отправлено: 27.04.09 18:53. Заголовок: Генератор задержек для ПИК


Примерно полтора года назад, здесь была просьба сделать программу, аналогичную программе "Pause" Николая Марова, но которая должна формировать задержку исходя из данных о частоте генератора контроллера и длительности задержки. Тогда это не получилось сделать и пришлось ограничится калькулятором, который высчитывал число машинных циклов исходя из данных о чатоте генератора и длительности задержки.

Буквально пару дней назад Игорь Батов подкинул мне идею как это можно сделать.
После нескольких экспериментов стало понятно что направление правильное и надо "копать" именно в эту сторону.
В результате, через пару часов всё получилось (кажется), по крайней мере я не смог найти ошибок в преобразовании.
Но непомешает дополнительная проверка.
Выкладываю заготовку программы, её надо протестировать http://www.filehoster.ru/files/cq1114
Сейчас она работает только с машинными циклами - так проще её отлаживать.
Кагда станет ясно что программа работает стабильно и ошибок в преобразовании нет, тогда соединю её с калькулятором.

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 112 , стр: 1 2 3 All [только новые]





Пост N: 863
Зарегистрирован: 06.05.07
Откуда: Россия, Липецк
Рейтинг: 4
ссылка на сообщение  Отправлено: 27.04.09 19:15. Заголовок: :sm36: ..



Программа очень нужная. Желаю успехов.

Безумству храбрых поем мы песню (А.М.Горький) Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 94
Info: Настороженное
Зарегистрирован: 05.03.07
Откуда: Россия, Шуя
Рейтинг: 1
ссылка на сообщение  Отправлено: 27.04.09 19:22. Заголовок: Пётр пишет: пришлос..


Пётр пишет:

 цитата:
пришлось ограничится калькулятором


Я этим калькулятором всякий раз пользуюсь. Без него программа Николая конечно не очень полноценная.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 864
Зарегистрирован: 06.05.07
Откуда: Россия, Липецк
Рейтинг: 4
ссылка на сообщение  Отправлено: 27.04.09 19:33. Заголовок: Вот и я говорю, ..


Вот и я говорю, что "два в одном флаконе" это гораздо лучше чем два отдельных "флакона".

Безумству храбрых поем мы песню (А.М.Горький) Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1082
Зарегистрирован: 26.12.06
Откуда: Россия, Заозерск, Мурманской обл.
Рейтинг: 4
ссылка на сообщение  Отправлено: 27.04.09 19:59. Заголовок: Пётр, спасибо, что н..


Пётр, спасибо, что не забыли. Обе программы архинужные. Без них, как без рук. Если получится сделать их как "две в одном флаконе", будет программа не то, что на каждый день, а на каждый час!

Удивление рождает жажду познания... Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1281
Зарегистрирован: 12.02.07
Откуда: Argentina, Lincoln
Рейтинг: 4

Награды: Отлично!',
ссылка на сообщение  Отправлено: 27.04.09 23:44. Заголовок: Пока проект не закон..


Пока проект не закончен, одно небольшое замечание:

т.е. должно быть 65 млн, а не 655. И еще, мне кажется, было бы неплохо, если бы было какое-то разделение (пробелом, точкой) групп цифр, т.е. 65.536 или 562.425.123, или так 65 536 или 562 425 123. При вводе большого числа так бы было удобнее, ИМХО.

Не ошибается только тот, кто ничего не делает. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1149
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 3
ссылка на сообщение  Отправлено: 28.04.09 16:56. Заголовок: Alberto пишет: дол..


Alberto пишет:

 цитата:
должно быть 65 млн, а не 655

Точно.
Я в основном смотрел чтобы небыло ошибок в преобразовании, а это прозевал.
Кстати, в алгоритме есть ошибка.
Попробуйте в вести 197124 а потом 197125 и сравните с результатом программы "Pause". Эта ошибка устанена.


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1283
Зарегистрирован: 12.02.07
Откуда: Argentina, Lincoln
Рейтинг: 4

Награды: Отлично!',
ссылка на сообщение  Отправлено: 28.04.09 17:04. Заголовок: Пётр пишет: Эта оши..


Пётр пишет:

 цитата:
Эта ошибка устанена.


а новую версию выложил?

Не ошибается только тот, кто ничего не делает. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1150
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 3
ссылка на сообщение  Отправлено: 28.04.09 17:10. Заголовок: Нет. Вот добавлю ещё..


Нет.
Вот добавлю ещё подержку сторожевого таймера, тогда и выложу.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1159
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 14.05.09 10:10. Заголовок: Бяк оказалось больше..


Бяк оказалось больше чем я думал.
В принципе есть вводить числа наугад, то в подавляющем числе сучаев результат верный.
Но на границе перехода с одного регистра на другой (например, если ввести число 773) появляется бяка!
Похоже что нужно вносить корректировку при переходах между регистрами...

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1172
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 26.05.09 18:43. Заголовок: Разобрался с коррект..


Разобрался с корректировкой регистров.
Эта корректировка нужна в том случае если имеющегося числа регистров недостаточно для создания задержки, а если добавить регистр, то станет много. Правда это случается очень редко. В этом случае внутрь последнего "кольца" задержки нужно вставлять дополнительный Nop и уменьшать величину задержки на количество циклов, затраченых на выполнение этого Nop'а. Иными словами, нужно отнять 255 от величины задержки.

Вот доработаный вариант программы http://purik.nextmail.ru/pic/Delay_1_1.rar
Его проверял в течение нескольких часов подставляя разные виличины задержки и не обнаружил ошибок в преобразовании.
Но т. к. длительность задержки может находиться в пределах 4...216737899999999999, то просто нереально проверить работу со всеми возможными вариантами...


Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 95
Info: Настороженное
Зарегистрирован: 05.03.07
Откуда: Россия, Шуя
Рейтинг: 1
ссылка на сообщение  Отправлено: 26.05.09 20:01. Заголовок: Пётр пишет: Разобра..


Пётр пишет:

 цитата:
Разобрался с корректировкой регистров.
Эта корректировка нужна в том случае если имеющегося числа регистров недостаточно для создания задержки, а если добавить регистр, то станет много. Правда это случается очень редко. В этом случае внутрь последнего "кольца" задержки нужно вставлять дополнительный Nop и уменьшать величину задержки на количество циклов, затраченых на выполнение этого Nop'а. Иными словами, нужно отнять 255 от величины задержки.

Вот доработаный вариант программы http://purik.nextmail.ru/pic/Delay_1_1.rar
Его проверял в течение нескольких часов подставляя разные виличины задержки и не обнаружил ошибок в преобразовании.
Но т. к. длительность задержки может находиться в пределах 4...216737899999999999, то просто нереально проверить работу со всеми возможными вариантами...


Я тоже погонял во всех направлениях. Ошибок нет.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1364
Зарегистрирован: 12.02.07
Откуда: Argentina, Lincoln
Рейтинг: 4

Награды: Отлично!',
ссылка на сообщение  Отправлено: 26.05.09 20:05. Заголовок: Спасибо, Пётр. Сегод..


Спасибо, Пётр. Сегодня времени не будет, но на днях обязательно погоняю.

Не ошибается только тот, кто ничего не делает. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1173
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 28.05.09 19:21. Заголовок: Добавил поддержку ст..


Добавил поддержку сторожевого таймера
http://purik.nextmail.ru/pic/Delay_1_2.rar

Alberto, проверь пожалуйста, как отображаются буквы в испанской операционной системе.
По идее, руссикие (кириллические) буквы должны нормально отображатся, ведь эта версия программы скомпилирована с поддержкой юникода, но на практике, кто его знает...

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1365
Зарегистрирован: 12.02.07
Откуда: Argentina, Lincoln
Рейтинг: 4

Награды: Отлично!',
ссылка на сообщение  Отправлено: 28.05.09 19:58. Заголовок: Пётр пишет: Добавил..


Пётр пишет:

 цитата:
Добавил поддержку сторожевого таймера


Можете не поверить но я специально зашел чтобы про WDT напомнить . Бывает же.

 цитата:
проверь пожалуйста, как отображаются буквы в испанской операционной системе.


сейчас скачаю и проверю.
Проверил, всё нормально.
Было бы неплохо добавить работу не с машинными циклами, а с сек (мсек, мксек и т.д.) и с частотой использованного кварца.

Не ошибается только тот, кто ничего не делает. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1174
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 28.05.09 22:23. Заголовок: Alberto пишет: Пров..


Alberto пишет:

 цитата:
Проверил, всё нормально.

Значит русские буквы нормально отображаются в винде, которая напрямую не поддерживает кириллицу. Замечательно!
А в предыдущей версии программы текст тоже нормально отображается в испанской винде?

Alberto пишет:

 цитата:
Было бы неплохо добавить работу не с машинными циклами, а с сек (мсек, мксек и т.д.) и с частотой использованного кварца.

Ну так ради этого я начал писать эту прогу.
Это тестовый вариант и так проще отлаживать.
Когда закончу отладку, то полностью переделаю окно программы и будет возможность вводить задержку не только в машинных циклах, но и в сек. (мсек, мксек и т.д.)


PS.
Кто нибудь из нас использует операционную систему Linux?
Если что, могу скомпилировать прогу и под эту ОС

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1366
Зарегистрирован: 12.02.07
Откуда: Argentina, Lincoln
Рейтинг: 4

Награды: Отлично!',
ссылка на сообщение  Отправлено: 29.05.09 05:07. Заголовок: Пётр пишет: А в пре..


Пётр пишет:

 цитата:
А в предыдущей версии программы текст тоже нормально отображается в испанской винде?


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

 цитата:
Кто нибудь из нас использует операционную систему Linux?


а разве MPLAB идет под Linux'ом?

Не ошибается только тот, кто ничего не делает. Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 739
Зарегистрирован: 26.12.06
Откуда: Россия, Архангельск
Рейтинг: 1
Фото:
ссылка на сообщение  Отправлено: 29.05.09 06:48. Заголовок: Alberto пишет: а ра..


Alberto пишет:

 цитата:
а разве MPLAB идет под Linux'ом?

Да есть версия под линукс.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1367
Зарегистрирован: 12.02.07
Откуда: Argentina, Lincoln
Рейтинг: 4

Награды: Отлично!',
ссылка на сообщение  Отправлено: 29.05.09 13:08. Заголовок: Так кроме MPLAB'..


Оффтоп: Так кроме MPLAB'есть еще два-три десятка часто используемых программ, версии которых существуют или нет под Linux это еще вопрос. Хотя это дела вкуса и к теме не относится.

Не ошибается только тот, кто ничего не делает. Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1368
Зарегистрирован: 12.02.07
Откуда: Argentina, Lincoln
Рейтинг: 4

Награды: Отлично!',
ссылка на сообщение  Отправлено: 29.05.09 13:12. Заголовок: Alberto пишет: а пр..


Alberto пишет:

 цитата:
а предыдущую завтра... попробую


предыдущая:


Не ошибается только тот, кто ничего не делает. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1175
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 30.05.09 13:10. Заголовок: Верися 1.2 имеет одн..


Верися 1.2 имеет одну серьёзную ошибку, связанную с тем, что программа скомпилирована в формате юникода. Ошибка проявлявлятся в том, что числа отображаются в диапазоне 0...65536, а не в 0...255


Полностью переделал окно - добавил калькулятор. http://purik.nextmail.ru/pic/PIC_Delay_1_3.rar
Есть пока небольшёй глюк при задействованом сторожевом таймере, связанный с корректировкой регистов. В ближайшее время постараюсь исправить.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1371
Зарегистрирован: 12.02.07
Откуда: Argentina, Lincoln
Рейтинг: 4

Награды: Отлично!',
ссылка на сообщение  Отправлено: 30.05.09 15:21. Заголовок: Пётр пишет: Верися ..


Пётр пишет:

 цитата:
Верися 1.2 имеет одну серьёзную ошибку, связанную с тем, что программа скомпилирована в формате юникода.


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

Не ошибается только тот, кто ничего не делает. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1176
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 30.05.09 17:07. Заголовок: Alberto пишет: а не..


Alberto пишет:

 цитата:
а не проще сделать выбор языка из списка?

Ну во первых надо знать эти языки, а во вторых, не факт что без поддержки юникода это получится сделать!
Я как-то пробовал русифицировать одну из прог, так вот, в место русских букв были крякозябры.
Да и делеко ходить не надо, достаточно вспомнить программу WinPic800.

А если программа поддерживает юникод, то теоритически в окне проги можно одновременно отображать текст любого из языков, даже китайскике иероглифы.
Это благодаря тому, что для кодирования символа используется 2 байта, что позволяет отобразить любой из 65536 различных символов.
Если программа использует Ascii формат, то на кодировку символа используется только один байт и поэтому можно закодировать всего 256 символов.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1372
Зарегистрирован: 12.02.07
Откуда: Argentina, Lincoln
Рейтинг: 4

Награды: Отлично!',
ссылка на сообщение  Отправлено: 30.05.09 20:06. Заголовок: Alberto пишет: на д..


Alberto пишет:

 цитата:
на днях обязательно погоняю


погонял. Нашёл вот что:

понимаю что при задержке в пару сотен тысяч лет одна мксек ничто, но факт есть факт. И еще, без использования калькулятора максимальная задержка может быть 216 737 899 999 999 999 машинных циклов, а если попытаться ввести тоже значение в микросекундах (при частоте кварца 4 МГц), то пишет что "Задана слишком большая задержка". Может стоит убрать разрядность вычислений в одном случае или добавить в другом, чтобы они в обоих случаях были одинаковыми?

Не ошибается только тот, кто ничего не делает. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1178
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 30.05.09 21:15. Заголовок: Это из-за того, что ..


Это из-за того, что для хранения данных использована переменная, расчитаная для дробных чисел. Вот откуда погрешность, точнее округление числа!
Как вариант, можно использовать переменные для целых чисел, но тогда нельзя будет вводить дробные числа.
Надо выбирать, или точность при обработке больших чисел, или отказ от дроби.
Думаю что в этом случае можно ввести данные в миллисекундах или даже в секундах и этой погрешности не будет

Alberto пишет:

 цитата:
максимальная задержка может быть 216 737 899 999 999 999 машинных циклов, а если попытаться ввести тоже значение в микросекундах (при частоте кварца 4 МГц), то пишет что "Задана слишком большая задержка".

Наверно просто происходит округление в большую сторону и в итоге такое сообшение.
Кстати, я немного доработал прогу (выложу позже) и теперь максимальная задержка составляет 9.223.372.036.854.775.800
Это даже больше чем в программе Николая Марова
Увеличивать дальше уже PureBasic не позволяет.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1373
Зарегистрирован: 12.02.07
Откуда: Argentina, Lincoln
Рейтинг: 4

Награды: Отлично!',
ссылка на сообщение  Отправлено: 30.05.09 21:34. Заголовок: Пётр пишет: Надо вы..


Пётр пишет:

 цитата:
Надо выбирать, или точность при обработке больших чисел, или отказ от дроби.


не знал что можно вводить дробные числа. На мой взгляд лучше отказаться от дроби. Обрабатывать только целые числа. Вдруг найдется еще один дурак который захочет сделать задержку на 500 тыс. лет с точностью до микросекунды , а тут такой ляп. Хотя решать тебе, реально такая большая задержка нужна только Дункану МакЛауду, а он ПИКами, кажись, не занимается .

Не ошибается только тот, кто ничего не делает. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1179
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 31.05.09 12:16. Заголовок: В сожалению отказать..


В сожалению отказаться от дроби нельзя, т. к. при работе калькулятора используется несколько операций деления и при этом результат может быть дробным и если его записать в целочисленую переменную, то будет ещё большая погрешность!

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1375
Зарегистрирован: 12.02.07
Откуда: Argentina, Lincoln
Рейтинг: 4

Награды: Отлично!',
ссылка на сообщение  Отправлено: 31.05.09 15:48. Заголовок: Погонял его еще немн..


Погонял его еще немного. Погрешность есть только на пределе. Может быть как больше заданного значения, так и меньше: +/- 1-2 мксек. В программе Николая Марова такого нет. Специально проверял. Ты не пробовал с ним связаться, может он поделится алгоритмом? Это первый вариант. Второй вариант: ограничить верхний предел в 31 557 600 000 000 мксек (около 1000 лет). Этого больше чем достаточно для любого, самого безумного программиста. Зачем гнаться за задержками в 300 млн. лет? И третий вариант: в самой программе, в окне машинного кода убрать надпись задержка столько-то машинных циклов, оставить только в мксек/мсек/сек и т.д. И последний вариант: при задержках на пределе, вместе с другими надписями выводить надпись предупреждающую о данной особенности.
Я бы остановился на третьем варианте: если я ввожу задержку в сутках, то зачем мне знать ее с точностью до машинного цикла? Плюс/минус одна-две мксек роли не сыграют. Если такая точность нужна, то нужно сразу вводить в мксек. Конечно это ИМХО.

Не ошибается только тот, кто ничего не делает. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1180
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 31.05.09 16:22. Заголовок: Alberto пишет: Може..


Alberto пишет:

 цитата:
Может быть как больше заданного значения, так и меньше: +/- 1-2 мксек. В программе Николая Марова такого нет

Так это глюк калькулятора или генератора кода?
Если генератора кода, то при каком числе машинных циклов появляется ошибка?
Я думаю что ошибка в несколько машинных циклов при выдержке в пару лет, всё же допустима, ведь нестабильность тактового генератора внесёт гораздо большую ошибку!
Да и вряд ли такая большая задержка вообще нужна, обычно используется до миллиона машинных циклов.


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1376
Зарегистрирован: 12.02.07
Откуда: Argentina, Lincoln
Рейтинг: 4

Награды: Отлично!',
ссылка на сообщение  Отправлено: 31.05.09 16:52. Заголовок: Пётр пишет: Так это..


Пётр пишет:

 цитата:
Так это глюк калькулятора или генератора кода?
Если генератора кода, то при каком числе машинных циклов появляется ошибка?


думаю что генератора кодов. Хотя не уверен, нужно проверить. И сложно вот так сразу сказать при каком конкретно числе появляется ошибка.

 цитата:
ведь нестабильность тактового генератора внесёт гораздо большую ошибку!
Да и вряд ли такая большая задержка вообще нужна


вот и я о том же. Ну если уж хочется иметь возможность рассчитать задержку в 300 млн. лет, то смотри вариант 3 в предыдущем посту:

убрать то, что зачеркнуто. Оставшейся информации больше чем достаточно и в глаза не лезет. Разумеется это ИМХО.

Не ошибается только тот, кто ничего не делает. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1181
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 31.05.09 17:12. Заголовок: Зачем убирать? Наобо..


Зачем убирать?
Наоборот, путь сразу будет заметно что в вычислениях есть ошибка.



Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1377
Зарегистрирован: 12.02.07
Откуда: Argentina, Lincoln
Рейтинг: 4

Награды: Отлично!',
ссылка на сообщение  Отправлено: 31.05.09 17:59. Заголовок: Тогда сразу теряется..


Тогда сразу теряется доверие и ко всему остальному. Это чисто психологически.
Тогда остается два пути: исправить или ограничить максимальную задержку "разумным" пределом (например в 10 тыс. лет, а не 500 тыс. как сейчас). Опять же ИМХО.

Не ошибается только тот, кто ничего не делает. Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1378
Зарегистрирован: 12.02.07
Откуда: Argentina, Lincoln
Рейтинг: 4

Награды: Отлично!',
ссылка на сообщение  Отправлено: 31.05.09 20:11. Заголовок: Пётр пишет: Так это..


Пётр пишет:

 цитата:
Так это глюк калькулятора или генератора кода?


если это тебе поможет, то в "Длительность задержки в машинных циклах" подставляется правильное значение, а в поле "Время" - остается введенное число, которое может отличаться от рассчитанного в машинных циклах. Но это проявляется только на числах больше 3 000 000 000 000 000 мксек. Где именно искать сложно. Да и, честно говоря, кому нужна задержка в 95 тыс. лет? Или батарейки сядут, или солнечную панель песком занесет, или какая помеха пройдет. Так что это несущественно.
А в остальном отлично работает. Спасибо.

Не ошибается только тот, кто ничего не делает. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1182
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 31.05.09 21:36. Заголовок: Alberto пишет: ..


Alberto пишет:

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

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

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1381
Зарегистрирован: 12.02.07
Откуда: Argentina, Lincoln
Рейтинг: 4

Награды: Отлично!',
ссылка на сообщение  Отправлено: 31.05.09 22:17. Заголовок: Пётр пишет: Это окр..


Пётр пишет:

 цитата:
Это округление результата деления введённых данных при расчёте в калькуляторе.


думаю здесь надо проводить предварительный анализ и если есть остаток, то надо введенное значение уменьшать на 1-2 мксек, которые потом будут скомпенсированы одним-двумя nop'ами. Правда с алгоритмом данной программы не знаком, так что это только догадка. А вообще, как я уже говорил, меня задержки больше 90 тыс. лет мало интересуют, ввиду того что их сложно в MPLAB'е отследить.

Не ошибается только тот, кто ничего не делает. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1197
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 25.06.09 18:17. Заголовок: Вот новая версия про..


Вот новая версия программы http://purik.nextmail.ru/pic/PIC_Delay_1_4.rar

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

Добавлена простейшая база данных имён регистров и меток. Это будет полезным если в отлаживаемой программе есть несколько подпрограмм задержек, которые при наладке надо изменять, т. е. подбировать задержку. Этого мне сильно нехватало в программе Николая Марова.
Кроме того, если в качестве имени метки использовать символ $, то метки как таковой не будет, а будет использоваться относительный переход (на уровне MPASMа, т. е. до компиляции) на начало цикла задержки.

Код будет таким

; Задержка 1 234 567 890 машинных циклов 
Movlw .148
Movwf Reg_1
Movlw .247
Movwf Reg_2
Movlw .119
Movwf Reg_3
Movlw .25
Movwf Reg_4
Decfsz Reg_1, F
Goto $-1
Decfsz Reg_2, F
Goto $-3
Decfsz Reg_3, F
Goto $-5
Decfsz Reg_4, F
Goto $-7
Nop


Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1132
Зарегистрирован: 06.05.07
Откуда: Россия, Липецк
Рейтинг: 4
ссылка на сообщение  Отправлено: 25.06.09 18:56. Заголовок: Петр, прекрасно. По..


Петр, прекрасно.
После "сканирования" всеми желающими и в случае необнаружения "бяк" (я терпелив), эта программа может быть размещена на моем сайте (плюс "Обмен..."), но это полностью зависит от Вашего желания. Желание автора - закон.
Замечание: это применимо к ПИКам среднего семейства, но не к ПИКам 18-й серии (значение $-... должно быть бОльшим).
Полагаю, что это достаточно легко исправить путем введения в программу возможности выбора семейства ПИКов (ПИКи среднего семейства / ПИКи 18-й серии. По умолчанию - среднее семейство).
На мой взгляд, в командах не должно быть заглавных букв (например, не Goto, а goto).

Безумству храбрых поем мы песню (А.М.Горький) Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1406
Зарегистрирован: 12.02.07
Откуда: Argentina, Lincoln
Рейтинг: 4

Награды: Отлично!',
ссылка на сообщение  Отправлено: 25.06.09 19:08. Заголовок: Evgeny Korabelnikov ..


Evgeny Korabelnikov пишет:

 цитата:
Полагаю, что это достаточно легко исправить путем введения в программу возможности выбора семейства ПИКов



 цитата:
На мой взгляд, в командах не должно быть заглавных букв (например, не Goto, а goto).


было бы здорово.


Не ошибается только тот, кто ничего не делает. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1198
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 25.06.09 19:42. Заголовок: Для 18-ых ПИКов испо..


Для 18-ых ПИКов использовать BANKED или ACCESS?

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1133
Зарегистрирован: 06.05.07
Откуда: Россия, Липецк
Рейтинг: 4
ссылка на сообщение  Отправлено: 25.06.09 19:46. Заголовок: Для 18-ых ПИКов испо..


Для 18-ых ПИКов использовать BANKED или ACCESS?

Банк быстрого доступа (ACCESS) - в первую очередь, ну а BANKED - на Ваше усмотрение. Просто не хочу показаться наглым.


Безумству храбрых поем мы песню (А.М.Горький) Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1199
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 25.06.09 20:14. Заголовок: В первую очередь про..


В первую очередь программа должна быть удобной и функциональной. Раз уж я взялся за неё, то нужно сделать по маскимуму.

Я только собираюсь изучать 18-тые ПИКи, так что задам парочку вопросов.

Ассемблерные инстукции остаются те же, или нужно использовать другие?
В первую очередь интерисует использовать GOTO или BRA?

Я так понимаю что инстукция DECFSZ работает как и в 16-той серии (в смысле для моей программмы)? Правда она выполняется за 3 м. ц. если происходит "скачок" через двух байтную инстукцию, которой является GOTO, т. е. нужно это учесть в генераторе задержек.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1134
Зарегистрирован: 06.05.07
Откуда: Россия, Липецк
Рейтинг: 4
ссылка на сообщение  Отправлено: 25.06.09 22:52. Заголовок: В части касающейся..


В части касающейся ПП фиксированных задержек, ассемблерные инструкции остаются теми же, но двухсловную команду GOTO целесообразно (и нужно) заменить на однословную команду BRA.
После этого, в ПП фиксированной задержки, будут применяться только однословные команды.
Чтобы "перепрыгнуть" (вверх), через одну однословную команду (например, BRA, decfsz и т.п.), нужно использовать не $-1, а $-2, так как однословная команда системы команд ПИКов 18-й серии состоит из 2-х байтов и адресация происходит не к N-битному слову (как в ПИКах среднего семейства), а к байту слова (в ПИКАх 18-й серии, одно слово это 2 байта).
Чтобы "перепрыгнуть" (вверх), через одну двухсловную команду (например, GOTO), нужно использовать не $-1, а $-4 (но лучше ориентироваться на однословную команду BRA).
Это легко проверить в симуляторе, при пошаговом исполнении ПП фиксированной задержки (ориентация на окно Program Memory).

Безумству храбрых поем мы песню (А.М.Горький) Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1200
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 26.06.09 11:03. Заголовок: Значит код задержки ..


Значит код задержки для 18-ых ПИКов будет таким?

; Задержка 1 234 567 890 машинных циклов 
movlw .148
movwf reg_1, ACCESS
movlw .247
movwf reg_2, ACCESS
movlw .119
movwf reg_3, ACCESS
movlw .25
movwf reg_4, ACCESS
decfsz reg_1, F, ACCESS
bra $-2
decfsz reg_2, F, ACCESS
bra $-6
decfsz reg_3, F, ACCESS
bra $-10
decfsz reg_4, F, ACCESS
bra $-14
nop




Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1135
Зарегистрирован: 06.05.07
Откуда: Россия, Липецк
Рейтинг: 4
ссылка на сообщение  Отправлено: 26.06.09 14:29. Заголовок: Ошибка: перед 10 и 1..


Ошибка: перед 10 и 14 нужно поставить десятичные точки (лучше всего. Просто понятнее) или прописывать эти числа в 16-ричном формате.
Получается это:

; Задержка 1 234 567 890 машинных циклов  
movlw .148
movwf Reg_1
movlw .247
movwf Reg_2
movlw .119
movwf Reg_3
movlw .25
movwf Reg_4

decfsz Reg_1
bra $-2
decfsz Reg_2
bra $-6
decfsz Reg_3
bra $-.10
decfsz Reg_4
bra $-.14
nop

ACCESS можно не прописывать, так как по умолчанию, устанавливается банк быстрого доступа.
Место сохранения результата можно не прописывать, так как он, по умолчанию, сохраняется в F, и при этом (работа с ПИКами 18-й серии), "предупреждалок не выдается (при работе с ПИКами среднего семейства, если ,F отсутствует, то выдается).
Регистры лучше прописывать с заглавной буквы.


Безумству храбрых поем мы песню (А.М.Горький) Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1201
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 27.06.09 13:31. Заголовок: Доработал программу ..


Доработал программу http://purik.nextmail.ru/pic/PIC_Delay_1_5.rar
При первом запуске программы будут созданы два профиля с именами PIC 16 и PIC 18.


Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1136
Зарегистрирован: 06.05.07
Откуда: Россия, Липецк
Рейтинг: 4
ссылка на сообщение  Отправлено: 27.06.09 14:32. Заголовок: Петр, спасибо. Оче..


Петр, спасибо. Очень удобно и функционально. Это программа с прекрасным будущим.
Но в интересах дела (это просьба ко всем), ее нужно "просканировать" и высказать свои замечания (если они есть).
На мой взгляд, например, вместо
Reg_1, F, BANKED нужно писать
Reg_1,F,BANKED.
То есть, без пробелов.
Абревеатура BANKED работает тогда, когда подключен INC-файл или он не подключен, но в "шапке" прописано BANKED equ 1
Если INC-файл не подключен и в "шапке" нет BANKED equ 1, то в тексте ПП задержки нужно писать Reg_1,F,1
Кстати, это универсальный вариант, который "срабатывает" в любом случае.
А если это универсально, то на мой взгляд, к этому и нужно "привязываться" (в окне "Редактирование профилей" можно ничего не изменять. Изменения - в тексте ПП).
Впрочем, это только пожелание. Можно оставить так, как есть.


Безумству храбрых поем мы песню (А.М.Горький) Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1137
Зарегистрирован: 06.05.07
Откуда: Россия, Липецк
Рейтинг: 4
ссылка на сообщение  Отправлено: 27.06.09 14:56. Заголовок: И еще одно замеча..


И еще одно замечание: нужно указывать не "PIC16", а "ПИКи среднего семейства" или "Среднее семейство", или перечислить номера всех серий, входящих в это семейство.

Безумству храбрых поем мы песню (А.М.Горький) Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1203
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 27.06.09 16:29. Заголовок: Хорошо учту. Тогда л..


Хорошо учту.
Тогда лучше F тоже заменить на 1


Можно ещё предусмотреть поддержку нескольких языков, ведь Русский не для всех является родным. Тем более что программа компилируется в формате юникода и поэтому может отображать текст на любом языке, даже если его исконно не поддерживает операционная система.
Поддержку языков сделать через файлы, что позволит без проблем вводить новые языки не модифицируя программу.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1204
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 27.06.09 16:38. Заголовок: Evgeny Korabelnikov ..


Evgeny Korabelnikov пишет:

 цитата:
указывать не "PIC16", а "ПИКи среднего семейства" или "Среднее семейство",

Вы это про название профиля или текст в выпадающем списке "Тип" на закладке "Редактирование профилей"?

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1139
Зарегистрирован: 06.05.07
Откуда: Россия, Липецк
Рейтинг: 4
ссылка на сообщение  Отправлено: 27.06.09 17:58. Заголовок: Вы это про название ..


Вы это про название профиля или текст в выпадающем списке "Тип" на закладке "Редактирование профилей"?
Я имею ввиду замену в тех "местах", где есть возможность выбора того или иного семейства.
Поддержка языков - прекрасно. Это расширит популярность программы.
F на 1 можно не менять, так как современные MPLABы автоматически ставят в соответствие одно другому.

Безумству храбрых поем мы песню (А.М.Горький) Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1408
Зарегистрирован: 12.02.07
Откуда: Argentina, Lincoln
Рейтинг: 4

Награды: Отлично!',
ссылка на сообщение  Отправлено: 27.06.09 18:30. Заголовок: Пётр пишет: Можно е..


Пётр пишет:

 цитата:
Можно ещё предусмотреть поддержку нескольких языков


программа удобная, могу помочь адаптировать на английский, испанский и португальский.

Не ошибается только тот, кто ничего не делает. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1207
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 27.06.09 18:39. Заголовок: Evgeny Korabelnikov ..


Evgeny Korabelnikov пишет:

 цитата:
Поддержка языков - прекрасно

К сожалению программа не запускается на Win98 если она скомпилирована в формате юникода.
Если компилировать в формате ASCII, то программа запускается и работает, но поддержки других языков небудет!
Впринципе перекомпилировать в формат ASCII - минутное дело...


Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1141
Зарегистрирован: 06.05.07
Откуда: Россия, Липецк
Рейтинг: 4
ссылка на сообщение  Отправлено: 27.06.09 18:56. Заголовок: А мне кажется, чт..


А мне кажется, что Win98 сейчас мало кто пользуется. Как минимум, XP.
Ориентируйтесь на XP. Могу проверить в "Висте". Сейчас это без проблем.

Безумству храбрых поем мы песню (А.М.Горький) Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1208
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 27.06.09 19:04. Заголовок: Evgeny Korabelnikov ..


Evgeny Korabelnikov пишет:

 цитата:
Могу проверить в "Висте"

Было бы замечательно...


Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1142
Зарегистрирован: 06.05.07
Откуда: Россия, Липецк
Рейтинг: 4
ссылка на сообщение  Отправлено: 27.06.09 19:56. Заголовок: Петр, в "Висте..


Петр, в "Висте", ранее предоставленная Вами программа, работает точно так же, как и в XP.
То есть, нормально.

Безумству храбрых поем мы песню (А.М.Горький) Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1209
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 27.06.09 21:40. Заголовок: Среднее семейство эт..


Среднее семейство это PIC12 и PIC16?

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1210
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 27.06.09 21:54. Заголовок: Если верить вики, то..


Если верить вики, то в среднее семейство входят только PIC12 и PIC16

 цитата:
Архитектура среднего (MID-RANGE) семейства
Архитектура среднего семейства (Mid-Range) нашла применение в микроконтроллерах серий PIC12 и PIC16, и имеет ширину слова памяти программ 14 бит.



Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1143
Зарегистрирован: 06.05.07
Откуда: Россия, Липецк
Рейтинг: 4
ссылка на сообщение  Отправлено: 27.06.09 23:00. Заголовок: Замечание по делу...


У семейства Baseline (базовое. 12 разрядов) и Mid-Range (среднее. 14 разрядов), не смотря на различную разрядность команд, конструкция ПП задержки одинакова.
То есть, лучше написать или "Базовое и среднее семейство" или PIC10/12/16, или на Ваше усмотрение.
Кстати, в базовом семействе есть ПИКи и 12, и 16-й серий.
Это можно выяснить в MPLAB версии 8.10 и выше (Configure - Select Device…).


Безумству храбрых поем мы песню (А.М.Горький) Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1211
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 29.06.09 10:55. Заголовок: Новая версия програм..


Новая версия программы http://purik.nextmail.ru/pic/PIC_Delay_1_7.rar
Переименовал профили, теперь они называются
Default PIC10, PIC12, PIC16
Default PIC18

Добавил поддержку языков, файлы с описанием которых, находятся в папке Language.
Программа при запуске сканирует эту папку и регистрирует все файлы с расширением lng
Для добавления нового языка, достаточно переименовать имеющийся файл и открыв его в "блокноте", заметить все слова после символа = на соответствующие для данного языка.

Сейчас в этой папке есть файлы поддержки русского и английского языка, но я не уверен что всё правильно перевёл на английский.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1412
Зарегистрирован: 12.02.07
Откуда: Argentina, Lincoln
Рейтинг: 4

Награды: Отлично!',
ссылка на сообщение  Отправлено: 29.06.09 14:17. Заголовок: Пётр пишет: Новая в..


Пётр пишет:

 цитата:
Новая версия программы


Профили заданные по умолчанию можно удалить. На мой взгляд, лучше сделать так, чтобы они не удалялись.

Не ошибается только тот, кто ничего не делает. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1212
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 29.06.09 15:48. Заголовок: Тогда нужно запретит..


Тогда нужно запретить их переименование чтобы программа смогла отличать эти профили.
Хотя если будут удалены все профили, то профили по умолчанию создаются автоматичекки при запуске программы.
Так что если по ошибке кто-то удалит все профили, то те, что по умолчанию восстановятся.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1145
Зарегистрирован: 06.05.07
Откуда: Россия, Липецк
Рейтинг: 4
ссылка на сообщение  Отправлено: 29.06.09 15:57. Заголовок: Точность рассчета ..


Точность рассчета не проверял, но в остальном, на мой взгляд, норма.
Могу выложить программу на своем сайте, но это Вам решать.


Безумству храбрых поем мы песню (А.М.Горький) Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1213
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 29.06.09 16:02. Заголовок: Evgeny Korabelnikov ..


Evgeny Korabelnikov пишет:

 цитата:
Могу выложить программу на своем сайте

Я не против.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1413
Зарегистрирован: 12.02.07
Откуда: Argentina, Lincoln
Рейтинг: 4

Награды: Отлично!',
ссылка на сообщение  Отправлено: 29.06.09 16:50. Заголовок: Пётр пишет: Хотя ес..


Пётр пишет:

 цитата:
Хотя если будут удалены все профили, то профили по умолчанию создаются автоматичекки при запуске программы


всё, понял, тогда без проблем

Не ошибается только тот, кто ничего не делает. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1146
Зарегистрирован: 06.05.07
Откуда: Россия, Липецк
Рейтинг: 4
ссылка на сообщение  Отправлено: 29.06.09 17:32. Заголовок: Петр, "выкладыв..


Петр, "выкладыванием" займусь немного позднее. Сейчас "текучка заела".
Как только "разгребу", обязательно займусь.

Безумству храбрых поем мы песню (А.М.Горький) Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1214
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 29.06.09 17:50. Заголовок: Хорошо..


Хорошо

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1148
Зарегистрирован: 06.05.07
Откуда: Россия, Липецк
Рейтинг: 4
ссылка на сообщение  Отправлено: 30.06.09 03:52. Заголовок: Готово. Петр, есл..


Готово.
Петр, если есть замечания, то сообщите о них.

Безумству храбрых поем мы песню (А.М.Горький) Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1215
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 30.06.09 09:34. Заголовок: Замечаний нет, всё н..


Замечаний нет, всё нормально.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 769
Зарегистрирован: 26.12.06
Откуда: Россия, Архангельск
Рейтинг: 1
Фото:
ссылка на сообщение  Отправлено: 01.07.09 13:01. Заголовок: Пётр , а по какой фо..


Пётр , а по какой формуле вычисляете задержку в программе?

Еще неизвестно, что хуже: постоянный бардак или непостоянный порядок? Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1218
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 02.07.09 09:38. Заголовок: Формулы как таковой ..


Формулы как таковой нет, точнее не по формуле делал.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 106
Зарегистрирован: 05.03.07
Откуда: Россия, Шуя
Рейтинг: 1
ссылка на сообщение  Отправлено: 02.07.09 18:38. Заголовок: Алексей пишет: Пётр..


Алексей пишет:

 цитата:
Пётр , а по какой формуле вычисляете задержку в программе?


По-моему это все равно, что представить метод деления столбиком в виде формулы.

Научился сам – научи другого. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1219
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 02.07.09 19:08. Заголовок: На самом деле там не..


На самом деле там несколько формул.
Как из записать понятия не имею, я не математик.

Поэтому выкладываю исходный текст программы на языке PureBasic http://purik.nextmail.ru/pic/PIC_Pause_Source.rar




Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 774
Зарегистрирован: 26.12.06
Откуда: Россия, Архангельск
Рейтинг: 1
Фото:
ссылка на сообщение  Отправлено: 02.07.09 22:44. Заголовок: Дело в том, что я пе..


Дело в том, что я переделал подпрограмму задержки, используя команды, которые уже есть в 18 серии. Подглядел принцип у Атмелов, получилось тоже самое с выигрышем по командам. Правда небольшим, но вот используя тоже самое количество регистров задержка будет раза в полтора больше, теперь думаю как расчитать задержку. По формулам как то не очень получается. Но думаю, что формулу вывести можно однозначно. Все таки какая никакая, но математика.

Еще неизвестно, что хуже: постоянный бардак или непостоянный порядок? Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1220
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 02.07.09 22:49. Заголовок: Алексей пишет: По ф..


Алексей пишет:

 цитата:
По формулам как то не очень получается

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

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 777
Зарегистрирован: 26.12.06
Откуда: Россия, Архангельск
Рейтинг: 1
Фото:
ссылка на сообщение  Отправлено: 02.07.09 23:21. Заголовок: Пётр пишет: Поэтому..


Пётр пишет:

 цитата:
Поэтому выкладываю исходный текст программы на языке PureBasic

Спасибо. Глянул мельком, принцип ясен. Но мне кажется должно быть решение проще. Ведь вначале идет какое то число машинных циклов, оно постоянно и меняется только при изменении количества регистров. Допустим у нас используются два регистра, оба в цикле, значит можно подсчитать количество циклов при известном значении времЕнных регистров. Следовательно возможна и обратная задача. С одним регистром все и так понятно, достаточно умножить число в регистре на количество машинных циклов в одном цикле задержки и прибавить к нему еще время, нужное для записи этого самого регистра. С двумя будет посложнее, с тремя формула еще сложнее... Надо попробовать с двумя регистрами, а то взялся сразу за три.

Еще неизвестно, что хуже: постоянный бардак или непостоянный порядок? Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1221
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 03.07.09 08:05. Заголовок: Алексей пишет: Допу..


Алексей пишет:

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

Выполнить что-то наподобие симуляции работы этого цикла?
Это будет знимать слишком много времени при больших длительностях задержки - годами ждать придётся!

Хотя попробовать можно.
Может и получится "изобрести велисипед" совершенно другой конструкции.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 782
Зарегистрирован: 26.12.06
Откуда: Россия, Архангельск
Рейтинг: 1
Фото:
ссылка на сообщение  Отправлено: 05.07.09 00:51. Заголовок: Пётр пишет: Это буд..


Пётр пишет:

 цитата:
Это будет знимать слишком много времени при больших длительностях задержки - годами ждать придётся!

Ничего подобного. С двумя регистрами все довольно просто, уже вывел формулу, но есть недостатки, необходимо дорабатывать. Никакой подобии симуляции нет, просто математическая формула, вычисляться это все будет практически мгновенно. Но еще раз повторяюсь задержку модернизировал под команды 18 пиков так:
Pause 
movlw .2
movwf Reg_1
movlw .2
movwf Reg_2
movlw .2
movwf Reg_3
movlw .0
Pause_1 decf Reg_1
subwfb Reg_2
subwfb Reg_3
bnz Pause_1

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

Еще неизвестно, что хуже: постоянный бардак или непостоянный порядок? Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1225
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 05.07.09 10:43. Заголовок: Алексей пишет: есть..


Алексей пишет:

 цитата:
есть недостатки, необходимо дорабатывать

Примерно тоже было и у меня.
Грубую форулу вывел примерно за час, а на вывод точной форумы потребовалось гораздо больше времени.
При разработке такой программы главная проблема в том, что используется несколько взаимо зависимых формул, и иногда тестируешь программу с разными значениями задержки и вроде всё ОК, а потом выясняется что при определённом числе машинных циклов вычисления происходят неправильно и опять всё сначала!

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1175
Зарегистрирован: 06.05.07
Откуда: Россия, Липецк
Рейтинг: 4
ссылка на сообщение  Отправлено: 05.07.09 18:36. Заголовок: Подкидываю мысль: ..


Подкидываю мысль: а что если спросить у Николая Марова (kolmar1986@mail.ru).

Безумству храбрых поем мы песню (А.М.Горький) Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 786
Зарегистрирован: 26.12.06
Откуда: Россия, Архангельск
Рейтинг: 1
Фото:
ссылка на сообщение  Отправлено: 05.07.09 18:47. Заголовок: Он автор другой прог..


Он автор другой программы?

Еще неизвестно, что хуже: постоянный бардак или непостоянный порядок? Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1228
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 05.07.09 19:52. Заголовок: Evgeny Korabelnikov ..


Evgeny Korabelnikov пишет:

 цитата:
Подкидываю мысль: а что если спросить у Николая Марова

У Алексея немного другая структура программы задержки, поэтому формула будет немного другая.


PS.
Начал адаптировать программу PIC_Delay под Linux. Пока получается, правда пришлось отказатся от некоторых непринципиальных вещей.
Среди нас есть кто-то использующий операционную ситему Linux?


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 788
Зарегистрирован: 26.12.06
Откуда: Россия, Архангельск
Рейтинг: 1
Фото:
ссылка на сообщение  Отправлено: 05.07.09 22:21. Заголовок: Вывел все таки форму..


Вывел все таки формулу, правда для подпрограммы с одним регистром, формула одна, для 2 другая и т.д. Пока только дошел до 3 времязадающих регистров и отправил статейку в обмен. Думаю с большим количеством регистров проблем уже не возникнет, только формула будет больше.

Еще неизвестно, что хуже: постоянный бардак или непостоянный порядок? Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1230
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 06.07.09 10:04. Заголовок: Алексей, проверь вн..


Алексей, проверь внимательно как ведёт себя программа, когда введенно такое число машинных циклов, при котором происходит перехд с одного регистра на другой и в особености ситуации, когда, скажем 2-ух регистов мало, а 3 уже много. В этом случае нужно использовать 2 регистра, а в конец программы добавлять NOPы.
Вот над этим мне пришлось немного подумать!

Да и при вводе инструции clrwdt формула немного изменится.

PS.
Я тоже много раз думал что наконец-то вывел правильную форулу, но как начинал тестировать с разным числом машинных циклов...

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 790
Зарегистрирован: 26.12.06
Откуда: Россия, Архангельск
Рейтинг: 1
Фото:
ссылка на сообщение  Отправлено: 06.07.09 10:08. Заголовок: Пётр , хотел попробо..


Пётр , хотел попробовать переделать программу для расчета задержек, но у меня не компилируется даже неизмененный исходник. Версия 4.2. Выдает ошибку линкера... Если вдруг сам решишь переделать программу, то скину формулы. Они кстати должны подойти и для старой подпрограммы, только константы нужно подобрать другие, принцип тот же, только команды используются из старшего семейства...

Еще неизвестно, что хуже: постоянный бардак или непостоянный порядок? Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1231
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 06.07.09 10:23. Заголовок: Странно, у меня исхо..


Странно, у меня исходник компилируется во всех версиях типа PB4.00 ... PB4.31 даже в демо-версиях

А PB 4.20 это довольно глючная версия и от неё всего можно ожидать.
Если хочешь, можешь скачать PB4.31, Альберто недавно выложил ссылки.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 791
Зарегистрирован: 26.12.06
Откуда: Россия, Архангельск
Рейтинг: 1
Фото:
ссылка на сообщение  Отправлено: 06.07.09 10:31. Заголовок: Пётр пишет: Алексей..


Пётр пишет:

 цитата:
Алексей, проверь внимательно как ведёт себя программа,

Дело в том, что переделать программу не могу, не компилируется, а бейсик знаю только поверхностно...
Пётр пишет:

 цитата:
Я тоже много раз думал что наконец-то вывел правильную форулу

Сделал расчет в Экселе, но сам понимаешь, он не сможет выдавать текст задержки, но вот погонял в симуляторе на десятке другом контрольных точек в том числе и на переходах, все нормально.
Оказалось что здесь переходы пересекаются. Т.е. например с помощью одного регистра можно получить задержку от 4 до 766 м.ц. . Для двух регистров этот диапазон от 12 до 261124 м.ц. Во всем диапазоне подпрограмма ведет себя в точности, как расчетная задержка. Правда с нулевыми регистрами проблема, но в программе это легко будет исправить, т.к. ноль в последнем регистре нужно заменить на число 256 и тогда расчет получается верным. Эксель этого не умеет или я не умею в нем так делать. Я вот только не знаю, получится ли алгоритм более быстрым, ведь там формула уже с двумя и более неизвестными, а чтобы решить такие уравнения нужно формул, минимум равное количеству переменных. Остается только подбирать... Хотя можно, зная вес одного регистра сразу примерно вычислить значения регистров, а затем точно ее подогнать.
Со сбросом собаки пока ничего не делал... Хотя тут нужно просто уменьшить задержку и прибавить необходимую константу.

Еще неизвестно, что хуже: постоянный бардак или непостоянный порядок? Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1232
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 06.07.09 10:42. Заголовок: Алексей пишет: Дело..


Алексей пишет:

 цитата:
Дело в том, что переделать программу не могу, не компилируется

Выложи скроншот окна с сообщением об ошибке и если при это одна из строк кода окрашивается в красный или жёлтый цвет и слева строки появляется красный кружок или жёлтый восклицательный знак, то сделай скрин и этого участка кода.

Лучше скачай PB4.31 и всё будет нормально.
Как я уже писал PB4.20 сильно глючит.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 792
Зарегистрирован: 26.12.06
Откуда: Россия, Архангельск
Рейтинг: 1
Фото:
ссылка на сообщение  Отправлено: 06.07.09 10:51. Заголовок: Пётр пишет: Выложи ..


Пётр пишет:

 цитата:
Выложи скроншот окна с сообщением об ошибке


Вот



Еще неизвестно, что хуже: постоянный бардак или непостоянный порядок? Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 793
Зарегистрирован: 26.12.06
Откуда: Россия, Архангельск
Рейтинг: 1
Фото:
ссылка на сообщение  Отправлено: 06.07.09 10:53. Заголовок: Пётр пишет: Лучше с..


Пётр пишет:

 цитата:
Лучше скачай PB4.31 и всё будет нормально

Пока нет возможности скачать, доберусь до нормального интернета, солью.

Еще неизвестно, что хуже: постоянный бардак или непостоянный порядок? Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1233
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 06.07.09 11:04. Заголовок: Такое сообщение появ..


Такое сообщение появляется если не получается создать исполняемый файл.
Временная папка Temp в операционной системе существует?

Оно появляется при запуске программы среде, или при создании исполняемого файла?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 795
Зарегистрирован: 26.12.06
Откуда: Россия, Архангельск
Рейтинг: 1
Фото:
ссылка на сообщение  Отправлено: 06.07.09 11:09. Заголовок: При создании исполня..


При создании исполняемого файла, т.е. после нажатия кнопы скомпилировать... Папка темп находится в C:\WINDOWS

Еще неизвестно, что хуже: постоянный бардак или непостоянный порядок? Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 796
Зарегистрирован: 26.12.06
Откуда: Россия, Архангельск
Рейтинг: 1
Фото:
ссылка на сообщение  Отправлено: 06.07.09 11:16. Заголовок: Перенес темп на друг..


Перенес темп на другой диск, все заработало...

Еще неизвестно, что хуже: постоянный бардак или непостоянный порядок? Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1234
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 06.07.09 11:16. Заголовок: В перю был выбран пу..


В меню был выбран пункт Компиляция/Запуск или Создать приложение?



Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1235
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 06.07.09 13:39. Заголовок: Под линуксом програм..


Под линуксом программа выглядит так


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 811
Зарегистрирован: 26.12.06
Откуда: Россия, Архангельск
Рейтинг: 1
Фото:
ссылка на сообщение  Отправлено: 11.07.09 10:50. Заголовок: Пётр , насколько пон..


Пётр , насколько понял, у тебя в программе используется до 10 регистров, а почему в программе ты вычисляешь значения от 8 до 2? Где 9 и 10, с первым все ясно.

Еще неизвестно, что хуже: постоянный бардак или непостоянный порядок? Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1238
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 11.07.09 11:08. Заголовок: Нет только до 8 реги..


Нет, только до 8 регистров.
Попроуй введи максимально допускимое число машинных циклов - 9223372036854775800
Результат будет таков
 
; Задержка 9 223 372 036 854 775 800 машинных циклов
movlw .67
movwf Reg_1
movlw .232
movwf Reg_2
movlw .182
movwf Reg_3
movlw .34
movwf Reg_4
movlw .102
movwf Reg_5
movlw .48
movwf Reg_6
movlw .143
movwf Reg_7
movlw .43
movwf Reg_8
decfsz Reg_1,F
goto $-1
decfsz Reg_2,F
goto $-3
decfsz Reg_3,F
goto $-5
decfsz Reg_4,F
goto $-7
decfsz Reg_5,F
goto $-9
decfsz Reg_6,F
goto $-.11
decfsz Reg_7,F
goto $-.13
decfsz Reg_8,F
goto $-.15


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 812
Зарегистрирован: 26.12.06
Откуда: Россия, Архангельск
Рейтинг: 1
Фото:
ссылка на сообщение  Отправлено: 11.07.09 11:31. Заголовок: Теперь ясно.....


Теперь ясно...

Еще неизвестно, что хуже: постоянный бардак или непостоянный порядок? Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 3
Зарегистрирован: 30.12.07
Откуда: Россия, Самара
Рейтинг: 0
ссылка на сообщение  Отправлено: 24.07.09 15:43. Заголовок: большие задержки


Всем здравствуйте. Заранее прошу прошения если не совсем в тему, но такой вопрос. По поводу длительных задержек сутки двое и более, возможно ли прямо использовать код который генерирует программа Петра или программа Николая или же желательно организовать допустим запись в ЕЕPROM неких промежуточных значений. Я сделал одно не сложное устройство для полива. В субботу после обеда запускаю его приблизительно в 15 часов и далее во вторник вечером приблизительно в 22 ч оно должно сработать и открыть кран для полива. Таким образом задержка около 79 часов. В программе я просто не особенно заботясь использовал код который генерирует программа Петра. Но как говорится терзают смутные сомнения. Один раз устройсто у меня не сработало. Поэтому хотелось бы узнать, а как правильно организовывать такие длительные задержки? Наверника кто то сталкивался с подобной задачей т.е. как надежно организовать большую задержку? посоветуйте что-нибудь. Заранее благодарен

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 817
Зарегистрирован: 26.12.06
Откуда: Россия, Архангельск
Рейтинг: 1
Фото:
ссылка на сообщение  Отправлено: 24.07.09 16:09. Заголовок: Самый надежный спосо..


Самый надежный способ, использовать часы реального времени, например DS1307...

Еще неизвестно, что хуже: постоянный бардак или непостоянный порядок? Спасибо: 0 
ПрофильЦитата Ответить
moderator




Пост N: 958
Зарегистрирован: 03.01.07
Откуда: Россия, Рассказово Тамбовская обл
Рейтинг: 3
ссылка на сообщение  Отправлено: 24.07.09 19:25. Заголовок: Удобно использовать ..


Удобно использовать для этих целей встроенный таймер с прерыванием. Один такой мой агрегат работает непрерывно уже два года.
Идея простая. Например если использовать динамическую индикацию, то прерывание таймера можно организовать через 5мс. Это будет один временной эталон.
5х200 - 1 сек и т.к. далее.
Задержка включения устройства и время работы конечно не будет привязано к реальному времени. Но при данных условиях это не сильно и нужно. Зачем такая точность?
Включил, отработало полчаса, потом выбранная фиксированная задержка, те же 72 часа, (хоть 1000 часов) и опять работа. На индикаторе будет производится отсчет задержки или работы. Удобно, все видно в каком состояние устройство. И можно всегда изменить выбранные режимы. Я думаю проще, надежно.

Я знаю, что мало знаю, узнаю больше, и понимаю, что знаю еще меньше. Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1436
Зарегистрирован: 12.02.07
Откуда: Argentina, Lincoln
Рейтинг: 4

Награды: Отлично!',
ссылка на сообщение  Отправлено: 24.07.09 21:07. Заголовок: MAZ пишет: Удобно и..


MAZ пишет:

 цитата:
Удобно использовать для этих целей встроенный таймер с прерыванием.


а если за час до включения полива питание на пятнадцать минут отключится? Весь отсчет с нуля пойдет. А с часами реального времени такого не будет. Можно делать бит в EEPROM по которому будет видно был полив или нет. Даже если наступит время полива а питания не будет, то после возобновления питания всё сработает, пусть и со сдвигом во времени. Я к часам реального времени склоняюсь.

Не ошибается только тот, кто ничего не делает. Спасибо: 0 
ПрофильЦитата Ответить
moderator




Пост N: 959
Зарегистрирован: 03.01.07
Откуда: Россия, Рассказово Тамбовская обл
Рейтинг: 3
ссылка на сообщение  Отправлено: 24.07.09 22:05. Заголовок: Alberto пишет: а ес..


Alberto пишет:

 цитата:
а если за час до включения полива питание на пятнадцать минут отключится?


Если отключится питание, кто и чем будет поливать? В таких случаях применяется резервное питание, оно есть и у микросхемы реального времени. Счет будет продолжен.
Останавливать счет не нужно. И анализировать флаг полива в энергонезависимой памяти, тоже не есть хорошо. При аварии питания может не быть и 6 часов. И включится полив при восходе солнца, а к обеду оно же спалит политые растения. Дело не в МРВ, а нужно для четкого работы данной системы резервное питание, при любом отсчете. А с МРВ все просто сложней.
Кажется человек просил надежные и длительные временные отсчеты, что попроще. Если ему нужна привязка к реальному времени, а еще можно и к времени года , то тогда спора нет. Но задача очень проста.

Я знаю, что мало знаю, узнаю больше, и понимаю, что знаю еще меньше. Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1437
Зарегистрирован: 12.02.07
Откуда: Argentina, Lincoln
Рейтинг: 4

Награды: Отлично!',
ссылка на сообщение  Отправлено: 25.07.09 05:25. Заголовок: Ты не понял принцип...


Ты не понял принцип. Не надо никакого резервного питания. Пропало питание на пол-часа при этом по времени уже десять минут как поливать должно было, всего-то и делов, полив прошёл на десять минут позже, так как время полива уже наступило, но действие (полив) сделано небыло. Как команда на насос пошла так бит в EEPROM и изменился, т.е. это флаг свершившегося факта. Если в сутки питание пропадает на 22 часа, то спору нет, такая система работать не будет. Вместе с тем можно сделать гибкую логику работы, если питание пропало и опять появилось по прошествии десяти (к примеру) часов после ожидаемого начала полива, то полив не производится и т.д. Деталей на три рубля а выгод - куча.
MAZ пишет:

 цитата:
И анализировать флаг полива в энергонезависимой памяти, тоже не есть хорошо.


это почему "не есть хорошо"?

 цитата:
Дело не в МРВ, а нужно для четкого работы данной системы резервное питание, при любом отсчете. А с МРВ все просто сложней.


если у человека площадь для полива большая, то пальчиковым аккумулятором не отделаешься. И извини меня, что сложного в подключении DS1307? По любому проще дизель-генератора

Не ошибается только тот, кто ничего не делает. Спасибо: 0 
ПрофильЦитата Ответить
moderator




Пост N: 960
Зарегистрирован: 03.01.07
Откуда: Россия, Рассказово Тамбовская обл
Рейтинг: 3
ссылка на сообщение  Отправлено: 25.07.09 12:24. Заголовок: Альберто. Ты меня то..


Альберто. Ты меня тоже не понял. Но согласись много, "если". Если отключится свет на 10 минут на 3 часа или больше. Если отключат воду, тогда и дизель сойдет. Но это уже катаклизм, тогда будет не до полива. Открыть электромагнитом заслонку, аккумулятор 12В 3 А/ч два часа будет поливать без напряга и питать контроллер, и вода очень хорошо подасться в брызгалки и т.п. Я рассуждаю из практики. А сложней по тому, что, 84 один со всем этим справится. а тут еще одну микросхему лепить, причем использовать её возможности в лучшем случае на 50%.

Я знаю, что мало знаю, узнаю больше, и понимаю, что знаю еще меньше. Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1438
Зарегистрирован: 12.02.07
Откуда: Argentina, Lincoln
Рейтинг: 4

Награды: Отлично!',
ссылка на сообщение  Отправлено: 25.07.09 17:59. Заголовок: MAZ пишет: Ты меня ..


MAZ пишет:

 цитата:
Ты меня тоже не понял


скорее всего да, я то исходил из того что для полива нужен насос, именно такие системы используют здесь на полях. Скважина и уже из нее мотор (или ветронасос) качает воду на полив. А для насоса аккумулятор на 12 В и пару ампер-часов не пойдет, да и зарядное устройство к нему...
Но... согласись что система с часами RTC гибче и надежнее. Как я уже говорил деталей на трешку, а возможностей вагон. Но по любому решать автору вопроса.

Не ошибается только тот, кто ничего не делает. Спасибо: 0 
ПрофильЦитата Ответить
moderator




Пост N: 962
Зарегистрирован: 03.01.07
Откуда: Россия, Рассказово Тамбовская обл
Рейтинг: 3
ссылка на сообщение  Отправлено: 25.07.09 22:17. Заголовок: Alberto пишет: Но....


Alberto пишет:

 цитата:
Но... согласись что система с часами RTC гибче и надежнее.


Соглашаюсь, насчет гибче. Надежность практически равны.
Alberto пишет:

 цитата:
Как я уже говорил деталей на трешку, а возможностей вагон.


Где живет человек? В России и раз огород поливает, то не в столице. Достать часовую микросхему, очень возможно, проблематично. Срава богу пик нашел, и то счастье.
Вспомнилаь поговорка "а зачем козе баян?" Работает и надежно поливает. Ну наверно отвлеклись от основной темы.

Я знаю, что мало знаю, узнаю больше, и понимаю, что знаю еще меньше. Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 4
Зарегистрирован: 30.12.07
Откуда: Россия, Самара
Рейтинг: 0
ссылка на сообщение  Отправлено: 26.07.09 09:31. Заголовок: Всем здравствуйте!! ..


Всем здравствуйте!! Благодарю за проявленный интерес и за советы и предложения.

Спасибо: 0 
ПрофильЦитата Ответить
moderator




Пост N: 963
Зарегистрирован: 03.01.07
Откуда: Россия, Рассказово Тамбовская обл
Рейтинг: 3
ссылка на сообщение  Отправлено: 26.07.09 13:03. Заголовок: Достали Олега, подве..


Достали Олега, подвел черту. Если серьезно, то предложенные мной задержки могу кинуть, в составе не слабого устройства. Будет от чего оттолкнуться.

Я знаю, что мало знаю, узнаю больше, и понимаю, что знаю еще меньше. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1254
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 27.07.09 18:55. Заголовок: В алгоритме программ..


В алгоритме программы PIC_Delay найдена ошибка.
Попробуйте введите число 394255 в неё и в программу Николая и всё поймёте.
Ошибка происходит при переходе с одного регистра на другой...
В ближайшее время постараюсь исправить.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1440
Зарегистрирован: 12.02.07
Откуда: Argentina, Lincoln
Рейтинг: 4

Награды: Отлично!',
ссылка на сообщение  Отправлено: 27.07.09 20:05. Заголовок: Пётр пишет: В алгор..


Пётр пишет:

 цитата:
В алгоритме программы PIC_Delay найдена ошибка.


"и опыт - сын ошибок трудных..."
без ошибок не будет опыта

Не ошибается только тот, кто ничего не делает. Спасибо: 0 
ПрофильЦитата Ответить
moderator




Пост N: 965
Зарегистрирован: 03.01.07
Откуда: Россия, Рассказово Тамбовская обл
Рейтинг: 3
ссылка на сообщение  Отправлено: 27.07.09 22:43. Заголовок: Не ошибается тот, кт..


Не ошибается тот, кто ничего не делает. Аксиома.

Я знаю, что мало знаю, узнаю больше, и понимаю, что знаю еще меньше. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1255
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 4
ссылка на сообщение  Отправлено: 30.07.09 11:36. Заголовок: Устанил ошибку :sm1..


Устанил ошибку
Программа для Windows x86 http://purik.nextmail.ru/pic/PIC_Delay_1_8_Windows.rar
Программа для Linux http://purik.nextmail.ru/pic/PIC_Delay_1_8_Linux.zip

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 78
Зарегистрирован: 27.08.07
Откуда: Россия, Москва
Рейтинг: 0
ссылка на сообщение  Отправлено: 19.03.10 13:09. Заголовок: Поздно прочитал, но ..


Поздно прочитал, но 2 слова скажу. никто об этом кажется не сказал. Как правило задержку оформляю подпрограммой, потому что использовать прниходиться не в одном месте, да и удобно не засорять тело программы, а поэтому всегада задержку рассчитываю относительно рабочей точки основной программы с учетом обращения и возврата , т.е. + 4 машинных цикла. На мой взгляд это удобнее. Если такая задержка будет отрабатываться в основной программе добавить 4-е nop проще, чем корректировать предложенную программу.

Ремонт начинается с питания, а программирование МК со спецификации (datasheet) Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 112 , стр: 1 2 3 All [только новые]
Ответ:
1 2 3 4 5 6 7 8 9
видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 0
Права: смайлы да, картинки да, шрифты нет, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет



Создай свой форум на сервисе Borda.ru
Текстовая версия