MiniPOV

Поклонники продукции Microchip Technology Inc тусуются тут.
Ответить
Аватара пользователя
Asche
Встал на лапы
Сообщения: 147
Зарегистрирован: Вт апр 13, 2010 16:40:50
Откуда: Оренбург
Контактная информация:

MiniPOV

Сообщение Asche »

Доброго времени суток, уважаемые форумчане.
Небольшая предыстория: разбирая хлам дома, нашел собранный мной когда-то термометр. Датчика видно не было, да и моя память мне подсказывала, что этот термометр у меня не заработал. Сиё чудо содержало микроконтроллер PIC16F630. Рука не поднялась эту микросхемку просто выкинуть. Начались поиски куда бы прикошачить эту микруху чтобы не лежала и не мозолила мне глаза. Долгие поики (не очень то долгие) привели меня на сайт http://www.ladyada.net/make/minipov/download.html и было решено сделать эту ерунду. Скачал схему, глянул, начертил свою плату (не понравилось, что автор предлагает двусторонний вариант). Решил "написать" свою картинку - изучил что да как, скачал что надо. Залил это дело в микросхему (программатор Экстра пик + преобразователь USB-COM). Включил - не работает, что не удивительно (мало ли: кривые руки, не знание языков программирования и компиляции программ). Решил залить одну из предложенных на том сайте прошивок. Результат всё так же нулевой. При указании HEX-файла программа (PICPgm) ругается на отсутствие битов конфигурации и предлагает "натыкать" их вручную. Глянул - вроде всё нормально. Но всё равно не работает это устройство.
Так вот: это у меня кривые руки, либо это обычный развод в интернете? Подскажите пожалуйста, уважаемые Знатоки.
Реклама
otest
Друг Кота
Сообщения: 7853
Зарегистрирован: Ср фев 11, 2009 20:35:58

Re: MiniPOV

Сообщение otest »

Вместо всей трогательной истории нужно выкладывать схему, прошивку и листинг программы (если он есть).
(PICPgm) ругается на отсутствие битов конфигурации
Возьми другую программу.
Биты конфигурации в файле есть.
Реклама
Аватара пользователя
Asche
Встал на лапы
Сообщения: 147
Зарегистрирован: Вт апр 13, 2010 16:40:50
Откуда: Оренбург
Контактная информация:

Re: MiniPOV

Сообщение Asche »

Прошивал так же ICProg. Результат нулевой.
Программа на ассемблере:

title "MiniPOV"
LIST P=16F630, F=INHX8M
#include <p16f630.inc>

__CONFIG _INTRC_OSC_NOCLKOUT & _CP_OFF & _MCLRE_OFF & _WDT_OFF

XTAL EQU 4000000 ; internal crystal @ 4MHz
IMAGESIZE EQU 0x10

; backup spots in SRAM for registers during interrupt handling
w_bak equ 0x20
status_bak equ 0x21
fsr_bak equ 0x22
counter equ 0x23
line equ 0x24
pixout equ 0x25

ORG 0x0
goto Main
ORG 0x4
; interrupt handler
; save status, w, & fsr
movwf w_bak
swapf STATUS, W
clrf STATUS
movwf status_bak
movfw FSR
movwf fsr_bak


int_2
btfss PIR1, TMR1IF ; check if timer 1 overflowed
goto End_IntHandle ; if not, finish up interrupt handling
Timer1
bcf PIR1, TMR1IF ; clear timer1 interrupt bit
movfw counter
call EC; look up the value in the character map
movwf line
clrf pixout

btfsc line, 0
bsf pixout, 3

btfsc line, 1
bsf pixout, 4

btfsc line, 2
bsf pixout, 5

btfsc line, 3
bsf pixout, 2

btfsc line, 4
bsf pixout, 1

btfsc line, 5
bsf pixout, 0

movfw pixout
movwf PORTC ; the pixels are in w

clrf pixout
btfsc line, 6
bsf pixout, 2

btfsc line, 7
bsf pixout, 5

movfw pixout
movwf PORTA

incf counter, 1
movlw IMAGESIZE
subwf counter, 0
btfsc STATUS, Z ; if counter == 10
clrf counter ; counter = 0

movlw 0xAA
movwf TMR1L
movlw 0xF0
movwf TMR1H

Timer1_end

End_IntHandle
movfw fsr_bak ; restore all the backed up registers
movwf FSR
swapf status_bak, w
movwf STATUS
swapf w_bak, 1
swapf w_bak, W
retfie ; return from interrupt


Main
CLRF PORTA ; drop all the port A lines low
MOVLW 0x1 ; set_tris_a(0b000001)
BSF 0x03,RP0
MOVWF TRISA
BCF 0x03,RP0

CLRF PORTC
BSF 0x03,RP0
CLRF TRISC ; Port C is all outputs!
BCF 0x03,RP0

; initialize port c with something :P
movlw 0xA0
movwf PORTC

clrf counter

; enable global interrupts
BSF INTCON,GIE
; enable peripheral interrupts
BSF INTCON,PEIE
; enable TIMER1 (16bit timer)
bcf PIR1, TMR1IF ; clear timer1 interrupt bit first
bsf T1CON, TMR1ON ; turn on the timer
BSF 0x03,RP0
bsf PIE1, TMR1IE ; turn on the interrupt
BCF 0x03,RP0

; set Timer1 to /8 prescale
movlw 0xAA
movwf TMR1L
movlw 0xFF
movwf TMR1H

MainLoop
goto MainLoop

HEART
addwf PCL
retlw B'00000000';
retlw B'00000000';
retlw B'11111111';
retlw B'10000001';
retlw B'10000001';
retlw B'10000001';
retlw B'11111111';
retlw B'00000000';
retlw B'00000000';

EC
addwf PCL
retlw B'00000000';
retlw B'11111111';
retlw B'10001001';
retlw B'10001001';
retlw B'10000001';
retlw B'00000000';
retlw B'00000000';
retlw B'00111100';
retlw B'01000010';
retlw B'10000001';
retlw B'10000001';
retlw B'01000010';
retlw B'00000000';
retlw B'00000000';
retlw B'00000000';
retlw B'00000000';

;.db B'00000000';


end
Вложения
make.hex
Прошивка
(914 байт) 407 скачиваний
мигалка.lay
Плата
(14.81 КБ) 424 скачивания
otest
Друг Кота
Сообщения: 7853
Зарегистрирован: Ср фев 11, 2009 20:35:58

Re: MiniPOV

Сообщение otest »

4 ногу МК подтяни к +5 через резистор 10к.
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
Asche
Встал на лапы
Сообщения: 147
Зарегистрирован: Вт апр 13, 2010 16:40:50
Откуда: Оренбург
Контактная информация:

Re: MiniPOV

Сообщение Asche »

Не помогло. Да что ж не так то тут?
Реклама
otest
Друг Кота
Сообщения: 7853
Зарегистрирован: Ср фев 11, 2009 20:35:58

Re: MiniPOV

Сообщение otest »

Прошивка исправная. Дело в руках.
Реклама
Аватара пользователя
Asche
Встал на лапы
Сообщения: 147
Зарегистрирован: Вт апр 13, 2010 16:40:50
Откуда: Оренбург
Контактная информация:

Re: MiniPOV

Сообщение Asche »

Ну что ж, будем мучиться - авось что получится
Аватара пользователя
Asche
Встал на лапы
Сообщения: 147
Зарегистрирован: Вт апр 13, 2010 16:40:50
Откуда: Оренбург
Контактная информация:

Re: MiniPOV

Сообщение Asche »

Не знаю в чем проблема. И другие прошивки загонял, и тип генератора менял. Ничего не помогает. Печаль-беда...
Аватара пользователя
Asche
Встал на лапы
Сообщения: 147
Зарегистрирован: Вт апр 13, 2010 16:40:50
Откуда: Оренбург
Контактная информация:

Re: MiniPOV

Сообщение Asche »

Странное дело: микросхема читается, программируется, но не работает. Решил залить другую прошивку (когда-то собирал хронограф Хронолайт). Прошил, поменял микросхему - не работает. Выходит у меня паленая микруха?
Ответить

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