различия в конфигурировании 10f222 и 12f629 в HITECH Pic C

Поклонники продукции Microchip Technology Inc тусуются тут.
Ответить
WoodCat
Первый раз сказал Мяу!
Сообщения: 32
Зарегистрирован: Ср дек 04, 2013 03:35:21
Откуда: Москва

различия в конфигурировании 10f222 и 12f629 в HITECH Pic C

Сообщение WoodCat »

Понадобилось сделать простейшее устройство, с тремя задействованными выводами МК. На такое даже 629 тратить жалко, хотел сделать на 222, заодно и попробовать что за зверь.
Ниасилил :(
Никак не получается сконфигурировать.
В варианте с 629 все работает замечательно, конфиг примерно следующий:

Код: Выделить всё

__CONFIG (INTIO & UNPROTECT & BOREN & MCLRDIS & PWRTEN & WDTDIS);

INTCON = 0; // запрет прерываний
TRISIO=0b00000100; // GPIO2 вход остальные выход
CMCON=0x07; // отключение компараторов
GPPU = 0;  // подтягивающие R (0-вкл, 1-выкл)
Подскажите плз, как аналогичный конфиг должен выглядеть для 10f222?
У меня такое ощущение что не отключаются компараторы. И не уверен что включается подтяжка, но проверить это не отключив компаратор сложно.

Вот нафига в примерно аналогичных контроллерах было формат конфига менять а тем более формат именования выводов, например "GPIO2" на "GP2", я не понимаю и наверно не пойму :(
Реклама
Аватара пользователя
Albert_V
Друг Кота
Сообщения: 4119
Зарегистрирован: Чт сен 12, 2013 00:54:12
Откуда: ЗаМКАДье. Там, где ЦУП

Re: различия в конфигурировании 10f222 и 12f629 в HITECH Pic

Сообщение Albert_V »

WoodCat писал(а):...Вот нафига в примерно аналогичных контроллерах было формат конфига менять....(
А на фига на фирме есть подразделение, в котором пишут документацию?
Реклама
WoodCat
Первый раз сказал Мяу!
Сообщения: 32
Зарегистрирован: Ср дек 04, 2013 03:35:21
Откуда: Москва

Re: различия в конфигурировании 10f222 и 12f629 в HITECH Pic

Сообщение WoodCat »

Albert_V писал(а):А на фига на фирме есть подразделение, в котором пишут документацию
Затрудняюсь с ответом. Видимо, переписывать документацию на то, что можно было и не менять. И конечно получать за это жалованье.

Даташит я три вечера мусолил, но толи я чего не догоняю, толи фиг знает... Вроде все как написано делал.
А может быть и мплаб глючит. В процессе возни например было такое, что не хочет компилить и все. Убрал все что можно, потом вообще оставил только "void main (void) {}" - все равно фиг.
Создал проект заново, скопипейстил туда изначальный текст - скомпилилось.

В общем, мне бы очень не помешал заведомо корректный конфиг, чтоб быть в нем уверенным и потихоньку разбираться дальше.
Если это слишком наглое желание тогда заранее прошу прощенья и вопрос снимаю. В принципе, и на 629 сделаю, они даже вроде дешевле.
Аватара пользователя
Ser60
Друг Кота
Сообщения: 3784
Зарегистрирован: Ср дек 24, 2008 09:58:58

Re: различия в конфигурировании 10f222 и 12f629 в HITECH Pic

Сообщение Ser60 »

Может Вам поможет посмотреть на CONFIG в исходнике моего проекта на 10F200
http://radiokot.ru/circuit/digital/pcmod/40/
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
shindax
Потрогал лапой паяльник
Сообщения: 378
Зарегистрирован: Сб сен 19, 2009 07:02:19

Re: различия в конфигурировании 10f222 и 12f629 в HITECH Pic

Сообщение shindax »

А я вот чего-то не понял, какой Вы даташит "мусолили". Смотрю свой и никаких компараторов у PIC10F222 не нахожу. Что касается "рыбы" для этого МК, то вот пример с http://catcatcat.d-lan.dp.ua/ допиленный под XC8:

Код: Выделить всё

#include <xc.h>				// для настройки под выбранный контроллер
//----------------------------------------------------
							
// Контроллер PIC10F222, тактирование - внутрений генератор с частотой 8MHZ.

//---------------------------------------------------------------------------
// конфигурирование контроллера

#pragma config IOSCFS = 8MHZ    // Тактовый генаратор на 8 MHz
#pragma config MCLRE = ON       // Вывод GP3/MCLR настроен на функцию MCLR
#pragma config WDTE = ON        // Сторожевой таймер включен
#pragma config CP = ON          // Защита кода включена
#pragma config MCPU = OFF       // Pull-up резистор отключен

// определения входов - выходов

//#define		LED         GP1			// порт индикации 
//#define		OUT         GP2			// выход управления 

//#define		TRESHOLD	100
//#define		DEBOUNCE    5

#define _XTAL_FREQ 	8000000		// для __delay

//---------------------------------------------------------------------------
// Описание глобальных переменных

//  unsigned int


void main( void )
{
// Настройка контроллера
	CLRWDT(); 					//сброс сторожевого таймера +++++++++++++++++++++- 
// загрузку калибровочной константы си берет на себя
// обнуление порта (правда Си тоже это делает)
	GPIO=0;
// настройка регистра OPTION
	OPTION=0b11001111;
//			 |||||+++--- PS<2:0>: настройка предделителя
//			 ||||+------ PSA: пределитель подключен к сторожевому таймеру
//			 |||+------- T0SE: счет по фронту импульса на входе T0CKI
//			 ||+-------- T0CS: вход таймера подключен к внутренему генератору
//			 |+--------- GPPU: подтягивающие резисторы на GP0, GP1, GP3 отключены
//                      +---------- GPWU: побуждение по входам GP0, GP1, GP3 отключено

//  настройка портов ввода вывода
  TRISGPIO=0b11111001;
//			 |||||||+--- GP0: вход
//			 ||||||+---- GP1: выход
//			 |||||+----- GP2: выход
//			 ||||+------ GP3: вход
//			 ++++------- неиспользуются

// настройка АЦП
	ADCON0=0b01000001;
//			 |||||||+--- ADON: АЦП включен
//			 ||||||+---- GO/DONE: статус и запуск конвертирования
//			 ||||++----- CHS<1:0>: АЦП подключен к входу GP0/AN0
//			 ||++------- неиспользуются
//			 |+--------- ANS0: вывод GP0/AN0 настроен как аналоговый
//			 +---------- ANS1: вывод GP1/AN1 настроен как цифровой

	CLRWDT(); 					//сброс сторожевого таймера +++++++++++++++++++++- 

//---------------------------------------------------------------------------
}
Реклама
Ответить

Вернуться в «PIC»