|
Проблемы программирования PIC, Программирование в СТЕРХ 0007 |
|
|
|
Aug 25 2005, 12:31
|

Местный
  
Группа: Свой
Сообщений: 482
Регистрация: 5-07-05
Из: Санкт-Петербург
Пользователь №: 6 528

|
Цитата(SergeyM @ Aug 25 2005, 14:54) Народ привет! Никто не сталкивался с такой проблемой, когда программируешь МК и он не работает, Программирование ведется на программаторе Стерх и находится на производстве. При конфигурировании внутреннего генератора и RA6 на CLOCKOUT, генерация происходит нормально, а вот на нужных выходах ничего не происходит. МК PIC16F627. А Вы в своём коде, который зашиваете в пики, уверенны? Стерх - промышленный программатор, на него только в последнюю очередь можно грешить
--------------------
Для связи email: info собака qbit.su
|
|
|
|
|
Aug 25 2005, 13:24
|

Участник

Группа: Свой
Сообщений: 68
Регистрация: 1-05-05
Из: Снежинск
Пользователь №: 4 654

|
Цитата(bzx @ Aug 25 2005, 15:31) А Вы в своём коде, который зашиваете в пики, уверенны? Стерх - промышленный программатор, на него только в последнюю очередь можно грешить Вообще код отработан в протеусе, да и к тому же моргать одним светодиодом не так сложно. Вот код ( MPLAB PICC LITE) Код # include <pic.h> #if defined(_16F627) #warning PIC16F627 with internal oscillator selected __CONFIG (0x03F70); //Конфигурация PIC16F627: //внутренний тактовый генератор, //RA6/RA7 используются для ввода/вывода //используется внешний сигнал сброса, //таймер PWRT включен, //сторожевой таймер выключен, //защита кода отключена, //детектор падения напряжения питания включен. #else #error Unsupported PICmicro MCU selected #endif
// Глобальные переменные
volatile unsigned int RTC = 0; //Счетчик реального времени //volatile unsigned char del = 0; static bit trisLED @ (unsigned) &TRISB*8+4; //биты управления светодиодом static bit LED @ (unsigned) &PORTB*8+4; static volatile bit T0IE @ (unsigned)&INTCON*8+5; static volatile bit T0IF @ (unsigned)&INTCON*8+2;
const int LEDon = 0; // включить светодиод const int LEDoff = 1; // выключить
void interrupt tmr0_unt(void) { if (T0IF){ T0IF = 0; RTC++; if ((RTC % 512)==0) LED = LED^1; } }
void enableLED(int LEDstate) { LED=LEDoff; if (LEDstate) trisLED = 0; else trisLED = 1; }
//Главная программа void main(void) { TMR0 = 0; OPTION = 0x0D1; T0IE = 1; GIE = 1; enableLED(1); while (1 == 1) // Бесконечный цикл { } } Причем пробовал даже без слова конфигурации компилировать и заливать никакого результата. Еще может кто знает как правильно работать с данным программатором, может я что не так делаю. Делаю так: Редактирую конфигурацию, зашиваю ее потом зашиваю хекс.
|
|
|
|
|
Aug 25 2005, 13:30
|

Частый гость
 
Группа: Свой
Сообщений: 134
Регистрация: 1-06-05
Из: Москва
Пользователь №: 5 634

|
Цитата Делаю так: Редактирую конфигурацию, зашиваю ее потом зашиваю хекс. А я всегда сначала хекс заливаю, а потом конфигурацию. А там, случаем, защита код не включена  ?
--------------------
"Регистрируй, наблюдай, экономь микросекунду, зря вопрос не задавай, не запоминай ерунду" (с) не помню, чье
|
|
|
|
|
Aug 25 2005, 13:42
|

Местный
  
Группа: Свой
Сообщений: 482
Регистрация: 5-07-05
Из: Санкт-Петербург
Пользователь №: 6 528

|
Цитата(SergeyM @ Aug 25 2005, 16:24) Причем пробовал даже без слова конфигурации компилировать и заливать никакого результата. Еще может кто знает как правильно работать с данным программатором, может я что не так делаю. Делаю так: Редактирую конфигурацию, зашиваю ее потом зашиваю хекс. Вот тут собакаи порылась  Проблемы со словом конфигурации.
--------------------
Для связи email: info собака qbit.su
|
|
|
|
|
Aug 25 2005, 13:44
|

Участник

Группа: Свой
Сообщений: 68
Регистрация: 1-05-05
Из: Снежинск
Пользователь №: 4 654

|
Цитата(ttron @ Aug 25 2005, 16:30) А я всегда сначала хекс заливаю, а потом конфигурацию. А там, случаем, защита код не включена  ? Нет Code protected Disable Вобщем так генератор intRC RA6 clockout Watch dog Disable MCLR MCLR все биты защиты отключены
|
|
|
|
|
Aug 25 2005, 13:45
|

Участник

Группа: Свой
Сообщений: 68
Регистрация: 1-05-05
Из: Снежинск
Пользователь №: 4 654

|
Цитата(bzx @ Aug 25 2005, 16:42) Вот тут собакаи порылась  Проблемы со словом конфигурации. В чем неправильность слова?
|
|
|
|
|
Aug 25 2005, 13:49
|

Местный
  
Группа: Свой
Сообщений: 482
Регистрация: 5-07-05
Из: Санкт-Петербург
Пользователь №: 6 528

|
Цитата(SergeyM @ Aug 25 2005, 16:24) Код __CONFIG (0x03F70); //Конфигурация PIC16F627: //внутренний тактовый генератор, //RA6/RA7 используются для ввода/вывода //используется внешний сигнал сброса, //таймер PWRT включен, //сторожевой таймер выключен, //защита кода отключена, //детектор падения напряжения питания включен. Ты по бумажке число 0x03F70 вычислял?  В будущем попробуй примерно в тако стиле: Код __CONFIG(UNPROTECT & HS & WDTDIS); // ... в таком духе так проще А из стандартных советов: проверить питание, сигнал сброса. Это для начала
--------------------
Для связи email: info собака qbit.su
|
|
|
|
|
Aug 25 2005, 13:55
|

Участник

Группа: Свой
Сообщений: 68
Регистрация: 1-05-05
Из: Снежинск
Пользователь №: 4 654

|
Цитата(bzx @ Aug 25 2005, 16:49) Ты по бумажке число 0x03F70 вычислял?  В будущем попробуй примерно в тако стиле: Код __CONFIG(UNPROTECT & HS & WDTDIS); // ... в таком духе так проще А HS это разве внутренний генератор. И потом вообще это слово нужно ли для данного программатора. Был случай шили 84 в программе в слове WDT был отключен, а в программаторе его не редактировали и что вы думаете ничто не работало т.к. постоянно срабатывал сторожевой таймер. Отключив его в программаторе все заработало. С 627 такие фишки не походят. Да и какие еще команды для слова конфигурации есть, для такого типа описания.
|
|
|
|
|
Aug 25 2005, 14:10
|

Местный
  
Группа: Свой
Сообщений: 482
Регистрация: 5-07-05
Из: Санкт-Петербург
Пользователь №: 6 528

|
Цитата(SergeyM @ Aug 25 2005, 16:55) А HS это разве внутренний генератор. Это было в качестве примера. Если речь зашла о том что должно быть у тебя, то примерно так: Код __CONFIG ( INTIO, //внутренний тактовый генератор, MCLREN, //используется внешний сигнал сброса, PWRTEN, //таймер PWRT включен, WDTDIS, //сторожевой таймер выключен, UNPROTECT, //защита кода отключена, LVPDIS); //детектор падения напряжения питания включен.
--------------------
Для связи email: info собака qbit.su
|
|
|
|
|
Aug 25 2005, 14:19
|

Участник

Группа: Свой
Сообщений: 68
Регистрация: 1-05-05
Из: Снежинск
Пользователь №: 4 654

|
Цитата(bzx @ Aug 25 2005, 17:10) Значит говоришь все дело только в слове конфигурации. Ладно попробуем, завтра если что опять прийду.
|
|
|
|
|
Aug 26 2005, 14:39
|

Участник

Группа: Свой
Сообщений: 68
Регистрация: 1-05-05
Из: Снежинск
Пользователь №: 4 654

|
Цитата bzx Все ништяк работает, спасибо!
|
|
|
|
|
Sep 29 2005, 21:44
|
Участник

Группа: Новичок
Сообщений: 25
Регистрация: 29-09-05
Пользователь №: 9 073

|
Цитата(katarsis @ Aug 26 2005, 06:25) была похожа я проблема - компилил, все компилилось хорошо, а после заливки (через фитон) процессор откзывался стартовать. в общем после загрузки хекса для программирования (фитон прог), ручками выправлялись биты конфигурации. У меня такое постоянно с PIC12 и PicProg Вообще программатор меня уже достал этот. Огромное "спасибо" телесистемам! Техподдержку вообще закрыли, а рекламка этого самого PicProg гдето здесь в баннере проскакивала...
|
|
|
|
|
Oct 1 2005, 12:23
|
Участник

Группа: Участник
Сообщений: 41
Регистрация: 22-07-05
Пользователь №: 7 023

|
Извиняюсь, что вмешиваюсь в чужую тему.Вопрос пустяковый - новый топик заводить не хочется. Есть PIC16C64A.Можно ли в него зашивать несколько прошивок.То есть, записал прогу туда - стёр - записал новую.Можо так?
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|