Страница 1 из 1

Программирование PIC12F675

Добавлено: Ср сен 28, 2011 20:17:04
bigory
Всем доброе время суток!
Есть задания собрать прибор регистрации удара на микроконтроллере PIC12F675. Сам справочник на русском про эту микросхему я достал, вот на всякий случай ссылка на него http://ifolder.ru/25941436
Вот сама схема где подключается этот микроконтроллер:
Изображение
Сейчас я пока не углубляюсь заданием, а пытаюсь пока из этой схемы получить обычный АЦП, т.е. на 1й вход подается аналоговый сигнал, на 2й вход опорное напряжение, а на 3м я должен уже получить оцифрованный сигнал.
Я видел в справочнике раздел про АЦП и понял что надо в банке 0 по адресу 1Fh (ADCON0) записать такое значение:

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

7бит  6бит  5бит  4бит  3бит  2бит  1бит  0бит
 0      1     0      0     0     0     1     1
Но вопрос в том, как это все написать? Мне предложили использовать Си. Вот моя начатая программа:

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

#include <pic12f675.h>
#use delay(clock=4000000)  //Частота генератора в Гц
#device ADC=10                  //10 разрядный АЦП

void main(void)
{
   int16 adc_value;

   setup_adc(ADC_CLOCK_INTERNAL|VSS_VDD); //настраиваем время выборки и диапазон вхоного напряжения (0-5в)
   setup_adc_ports(sAN0);  //устанавливаем аналоговым входом вывод А
   set_adc_channel(0);  //выбираем канал АЦП для считывания

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

Re: Программирование PIC12F675

Добавлено: Пн окт 03, 2011 13:16:57
otest
....
BCF STATUS,RP0
MOVLW B'01000011'
MOVWF ADCON0
...

Re: Программирование PIC12F675

Добавлено: Пн окт 03, 2011 13:46:19
КРАМ
Начнем с того, что создавать опору из источника питания с помощью простого делителя с питания бесмысленно. Это приведет к потере точности.
Достаточно сделать питание МК опорой.