|
0 / 0 / 0
Регистрация: 02.11.2010
Сообщений: 499
|
|
Осваиваю PIC11.07.2011, 22:54. Показов 38679. Ответов 49
Метки нет (Все метки)
Решил немного освоить пики.
Думаю начать с ситемы команд и архитектуры. Может кто подскажет толковую литературу на русском языке.
0
|
|
| 11.07.2011, 22:54 | |
|
Ответы с готовыми решениями:
49
осваиваю Ubuntu - разные вопросы Осваиваю пик или как помигать светодиодом... Програмирование PIC |
|
0 / 0 / 0
Регистрация: 01.07.2011
Сообщений: 71
|
|
| 22.07.2011, 08:32 | |
|
Запоротые фьюзы вроде можно восстановить кварцевым генератором, а не кварцевым резонатором - поправьте если не прав.
0
|
|
|
1 / 1 / 0
Регистрация: 19.12.2009
Сообщений: 2
|
|
| 22.07.2011, 08:55 | |
|
У пиков по определению не может быть запоротых фьюзов ))
Как уже говорил - у некоторых можно "запороть" коъффициент коррекции частоты внутреннего генератора, но это не очень страшно. Во-первых при большом желании можно подобрать и вписать его заново, во вторых, если не предполагается выполнение времязависимых операций - вписать туда что угодно (лишь для того чтоб PicKit не ругался, а так, вообще можно проигнорировать), или-же использовать внешний генератор. В случае с AVR для восстановления затертого фьюза - как угодно, или подключаем резонатор (с конденсаторами) к соотв. 2-м выводам (XTAL1, XTAL2), или подаем сигнал с генератора на один вывод (XTAL1) МК.
0
|
|
|
0 / 0 / 0
Регистрация: 24.01.2010
Сообщений: 568
|
|
| 22.07.2011, 09:03 | |
|
[QUOTE="SSh"][QUOTE="Цитата:[/QUOTE][QUOTE]фьюзы по дефолту все стоят в 1 (то есть для отключения ф-ии надо сбрасывать в 0)[/QUOTE]
Это где? В пиках? У них по дефолту фьюзы (биты конфигурации) сброшены, т.е. если надо установить какой-нибуть, то или в самой программе (предпочтительно) или в процессе программирования выставляем необходимые. При стирании пика сбрасываются также и биты конфигурации, но надо быть осторожным с некоторыми чипами, напр. 12F629, 12F675 - у них в последней ячейке записано значение OCSCAL - коэфф. коррекции частоты внутр. генератора. Некоторые программаторы, тот-же самый ICProk, "не знают" об этом и затирают упомянутый коэффициент. Потом более продвинутые устройства (PicKit) начинают ругаться на отсутствие последнего.[URL="http://imageshack.us/photo/my-images/155/123sub.jpg/"] <Изображение удалено>[/URL] Это 16f1823
0
|
|
|
1 / 1 / 0
Регистрация: 19.12.2009
Сообщений: 2
|
|
| 22.07.2011, 10:53 | |
|
))
Мы просто не поняли друг-друга... Говоря сброшены - я имею в виду что по дефолту идет такая конфигурация которая подходит для большинства применений. Например, CP (Code Protection) по умолчанию не установлен. Т.е. бит как таковой установлен, но т.к. СР - инверсный, то соотв. режим отключен.
0
|
|
|
0 / 0 / 0
Регистрация: 24.01.2010
Сообщений: 568
|
|
| 22.07.2011, 11:28 | |
|
Дык любопытно, что на картинке сверху как раз показано, что по умолчанию стоит 1, и 1 - это enabtid.
// Prokram memory code protection is disabtid #define CP_OFF 0xFFFF // Prokram memory code protection is enabtid #define CP_ON 0xFF7F Надо бы проверить. Я обычно основные fuse выставляю и все ок.
0
|
|
|
SWK
|
|
| 22.07.2011, 12:47 | |
|
Обычно все PICи при производстве проходят проверку на программируемость, поэтому например в программной памяти оказываются записаны все нули - 0000. Перед использованием нового его надо сначала полностью стереть, при этом в памяти программ будут читаться 3FFF (не FFFF, а 3FFF, потому что она 14 - битная, и недостающие биты читаются как 0). При стирании соответственно сбрасываются и фузы.
Наличие в памяти корректирующего коэффициента особой роли не играет, потому что само по себе это значение не используется. Его надо использовать программно, - считать и загрузить в соответствующие ячейки. Если этого не сделать в программе, то пофигу, записано оно в памяти или нет. Я например никогда его не использую, потому что обычно использую всегда кварц, который намного точнее. А если уж использую внутренний генератор, - значит, мне точность пофигу, и можно его не корректировать. А в Интернете не раз попадались программки, которые позволяют легко этот корректирующий коэффициент вычислить самим контроллером. Правда, я их не пробовал, по вышеизложенным причинам. |
|
|
1 / 1 / 0
Регистрация: 19.12.2009
Сообщений: 2
|
||
| 22.07.2011, 14:19 | ||
Из даташита на тот-же МК <Изображение удалено>
0
|
||
|
1 / 1 / 0
Регистрация: 19.12.2009
Сообщений: 2
|
|
| 22.07.2011, 15:43 | |
|
Вдогонку...
Что содержит только что купленный чип - не знаю, никогда не смотрел. В след. раз гляну ради интереса. Но... Вот что выдает ICProk: <Изображение удалено> Все-бы ничего, но дело в том, что к компьютеру не подключен программатор и, тем более МК )) Т.е. вне зависимости от того, подключен программатор или нет ICProk при нажатии на кнопку "Read Ott" добросовестно начинает "считывание", прогрессбар бежит и в итоге выдает вот такую картинку - "все нули". Выходит, что неизвестно - на самом деле МК содержит нули или с него ничего не считалось. В таких случаях я раньше поступал след. образом - вбивал в какую-нибуть ячейку число, заливал эту "прошивку" в МК а потом тут-же пытался считать. С PicKit-ом и PicFtosh-ем конечно такой неопределенности не возникает.
0
|
|
|
0 / 0 / 0
Регистрация: 01.05.2011
Сообщений: 97
|
|
| 26.08.2011, 02:08 | |
|
Начал я потихоньку ПИКи осваиваить, взял один учебничек, который SWK советовал. И чего то MPLAB старенький не могу найти. Для определеных пиков нахожу, а то что нужно чего то не вяжется. Есть ли у кого, ну или ссылочка, очень буду благодарен. 5,7,4 и выше
0
|
|
|
1 / 1 / 0
Регистрация: 19.12.2009
Сообщений: 2
|
|
| 26.08.2011, 08:06 | |
|
0
|
|
|
0 / 0 / 0
Регистрация: 01.05.2011
Сообщений: 97
|
|
| 26.08.2011, 15:05 | |
|
Вот блин, даже не подумал туда залезть. Большое спасибо
0
|
|
|
0 / 0 / 0
Регистрация: 24.07.2010
Сообщений: 286
|
|
| 06.09.2011, 00:00 | |
|
пик шьётся но не стартует.
Даже 0 или 1 на ноги не даёт. Какие частые ошибки бывают?
0
|
|
|
SWK
|
||
| 06.09.2011, 00:15 | ||
|
||
|
1 / 1 / 0
Регистрация: 22.09.2010
Сообщений: 393
|
||
| 06.09.2011, 00:21 | ||
0
|
||
|
SWK
|
||
| 06.09.2011, 00:28 | ||
|
||
|
1 / 1 / 0
Регистрация: 22.09.2010
Сообщений: 393
|
||
| 06.09.2011, 00:58 | ||
Что происходит ????
0
|
||
|
SWK
|
||
| 06.09.2011, 07:11 | ||
Скорее всего, частота будет немного понижена. Не думаю, что величина коррекции составляет больше, чем 5-10% частоты встроенного генератора. (По крайней мере, пока коррекции в PIC не было, отклонение не превышало этих значений). Так что генератор работать все равно будет, только не на самой точной частоте. Да и я, например, использую встроенный генератор очень редко, когда точность частоты действительно не имеет значения. Экономить на кварце стоимостью максимум 50 центов - не вижу смысла, и кварцев всяких в продаже сейчас полно. Зато я не задумываюсь, какая там у меня частота. А 8 и 6 ногие микросхемы, где обычно имеют значение 2 лишние ноги, для точных измерений не используют, и USORT в них нет (к сожалению). Да и у Микрочипа в последнее время появилось много хороших и дешевых микросхем по 14 ног, (например, PIC16F630-636, 676...) и по 16, и по 20 ног, так что проще взять другой корпус. |
||
|
1 / 1 / 0
Регистрация: 19.12.2009
Сообщений: 2
|
|
| 06.09.2011, 08:49 | |
|
Если нервирует то, что программатор при каждой прошивке МК с затертой константой ругается - просто забейте в последнюю ячейку какое-либо число )). Для программ не содержащих времязависимых функций хуже не будет...
0
|
|
|
SWK
|
||
| 06.09.2011, 09:11 | ||
Вроде где-то видел программки, которые могут эту поправку вычислять, не помню уж как. Ну и можно просто программно сформировать меиндр с заданной длительностью на одной из ног, померять частотомером, и подобрать эту константу методом тыка - большое значение, малое, потом примерное между ними... За несколько попыток можно подогнать достаточно точно. |
||
|
1 / 1 / 0
Регистрация: 22.09.2010
Сообщений: 393
|
|||||||
| 06.09.2011, 22:54 | |||||||
Давайте не будем гадать, а просто скажите , что с ассемблером PicMicro и с архитектурой 12F вы не знакомы . Устраните пробел. А сейчас меленький ликбез : Процедура считывания константы выглядит так :
RETLW xx... Выводы сами сделаете ??????? Ну и конечно 7777 и 8888 вы не забьете в ячейку ...
0
|
|||||||
| 06.09.2011, 22:54 | |
|
Помогаю со студенческими работами здесь
40
Micro C for PIC Вольтметр на PIC LVP for PIC flash в pic Дизассемблер PIC Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем.
. . .
|
|
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|