Свежие обсуждения
Микроконтроллеры

Я совсем запутался прошу помощи

Дело в том что я заливаю программу для PIC16f628 или пишу программу сам но при подключении в схему мк никак не хочет заводится.вот собственно программа из самоучителя
;Tutorial 1.1 - Nigel Goodwin 2002
LIST p=16F628 ;tell assembler what chip we are using
include "P16F628.inc" ;include the defaults for the chip
__config 0x3D18 ;sets the configuration settings
;(oscillator type etc.)

org 0x0000 ;org sets the origin, 0x0000 for the 16F628,
;this is where the program starts running
movlw 0x07
movwf CMCON ;turn comparators off (make it like a 16F84)

bsf STATUS, RP0 ;select bank 1
movlw b'00000000' ;set PortB all outputs
movwf TRISB
movwf TRISA ;set PortA all outputs
bcf STATUS, RP0 ;select bank 0

Loop
movlw 0xff
movwf PORTA ;set all bits on
movwf PORTB
nop ;the nop's make up the time taken by the goto
nop ;giving a square wave output
movlw 0x00
movwf PORTA
movwf PORTB ;set all bits off
goto Loop ;go back and do it again

end

а вот программа которую написал сам

LIST p=16F628A ; Назначение типа ПИКа: PIC16F28A.
__CONFIG 03FF5H

STATUS equ 03h ;Address of the STATUS register
TRISA equ 05h ;Address of the tristate register for port A
PORTA equ 05h ;Address of Port A
counter1 equ 20h ;First counter for our delay loops
counter2 equ 29h ;Second counter for our delay loops
delay_cntr equ 21h
CMCON equ 1fh

bsf STATUS,5 ;Switch to Bank 1
movlw 00h ;Set the Port A pins
movwf TRISA ;to output.
bcf STATUS,5 ;Switch back to Bank 0
CLRF PORTA
movlw 07h
movwf CMCON
start
call led_on ;
;call long_delay ; ________
;call led_off ;
;call short_delay
;call led_on ;
;call short_delay ; _
;call led_off ;
;call short_delay
;call led_on ;
;call long_delay ; _________
;call led_off ;
;call short_delay
;call led_on ;
;call short_delay ; _
;call led_off ;

goto start

long_delay decfsz counter1,1
goto long_delay
nop
decfsz counter2,1
goto long_delay
return

short_delay decfsz counter1,1
goto short_delay
return

led_on movlw 02h ;Turn the LED on by first putting it
movwf PORTA
return

led_off movlw 00h ;Turn the LED on by first putting it
movwf PORTA
return

end

 

Ну я же уже спрашивал, а ответа не получил. Чем компилируете исходник? MPASM? Есть ли в папке компилятора этот самый пресловутый вложенный файл: "P16F628.inc" Если его нет, то нужно при программировании выставлять конфиг вручную!
У вас просто выставляется не тот тип генератора, вот и не запускается.

 

файла нет .выставляю конфиг вручную.генератор xt

 

После проверки на USB переходнике поставил JDM на настольный ПК с аппаратным com портом пишет Verify failed at 0000h неужели МК накрылся? Другой pic прошивается и программируется нормально

 

L.M Ericsson: выставляю конфиг вручную.генератор xt
А в реальной схеме что стоит? Схему в студию.

L.M Ericsson: После проверки на USB переходнике поставил JDM на настольный ПК с аппаратным com портом пишет Verify failed at 0000h неужели МК накрылся? Другой pic прошивается и программируется нормально
Легко. Если другой Пик того же типа, что и не верифицируемый.

 

схема самая простая.светодиод подключен к выв 18 катодом на минус.между 16 и 17 выводами кварц на 4 мгц. с каждого вывода кврца на землю кондер 12 пф.4 и 14 выводы ссоединены вместе и идут на плюс питания .5 вывод на минус .вот и вся схема

 

L.M Ericsson: __config 0x3D18 ;sets the configuration settings
Для этой конфигурации выбран LP осциллятор. Чтобы был ХТ осциллятор попробуйте записать конфиг 0х3D19.
Возможно программатор, невзирая на выставленный вручную конфиг, пишет тот, что указан в исходнике, т.е. устанавливает LP осциллятор, поэтому и не запускается.
Вы даташит на 628 Пик читали?