|
Виж темите без отговор | Виж активните теми
Дата и час: Пон Юли 27, 2026 2:09 pm
|
Страница 1 от 1
|
[ 11 мнения ] |
|
| Автор |
Съобщение |
|
stoian_b
Ранг: Минаващ
Регистриран на: Пет Апр 21, 2006 11:51 am Мнения: 5
|
 Търся помощ за 12F629
Здравейте всички, обърнали внимание на тая тема. Имам проблем с прехвърлянето на готова програма от PIC16F84, на PIC12F629. В тая област съм новак и ми трябва или някой да ми напише конфигурирането на 12F, или поне линкове към готови примери, за да се помъча сам.
Благодаря за вниманието.
|
| Пет Апр 21, 2006 12:01 pm |
|
 |
|
milenjs
Ранг: Форумен бог
Регистриран на: Сря Мар 08, 2006 2:12 pm Мнения: 2017 Местоположение: Котел
|
Как готова - в смисъл хекс файла ли? Ако е така няма да стане. Ако имаш асм или някакъв друг там сорс пусни да го видим....
|
| Пет Апр 21, 2006 12:16 pm |
|
 |
|
Gogo
Ранг: Форумен бог
Регистриран на: Чет Фев 24, 2005 11:41 pm Мнения: 1049 Местоположение: Pz
|
1. Смени си началния адрес на рам-а на 0х20. Сигурен съм 99,99%, че в момента е 0х0C...
2. Виж кои крачета се ползват на 84-ката и си ги смени като за 629. Ако изобщо може да стане...
3. най-добре е да пуснеш сорса да го видим.
Последна промяна Gogo на Пет Апр 21, 2006 2:22 pm, променена общо 1 път
|
| Пет Апр 21, 2006 12:27 pm |
|
 |
|
stoian_b
Ранг: Минаващ
Регистриран на: Пет Апр 21, 2006 11:51 am Мнения: 5
|
Това е:
list p=16F84A
#include <p16F84A.inc>
__CONFIG _CP_OFF&_WDT_OFF&_PWRTE_ON&_XT_OSC
;************definirane na const. i promenliwi
w EQU 0
f EQU 1
;*******obqwqwane na izpolzwanite promenliwi
CBLOCK H'0C' ;adres na pyrwiq reg. ot GPR
counter
temp_counter
flag_register
a
c
h
j
ENDC
;************definirane bitowete na flag_register*******
#define shift flag_register,0
#define shift_1 flag_register,1
#define shift_2 flag_register,2
#define in PORTA,0
#define g PORTA,1
#define e PORTA,2
#define r PORTA,3
;*********potrebitelska programa************************
ORG H'0000' ;NU
goto start
ORG H'0004' ;wektor na prek
goto start
;**************************Начало на програмата*****************************
start clrf STATUS ;nulirane na STATUS
clrf PORTA ;nulirane na PORTA
clrf counter
clrf temp_counter
clrf a
clrf c
clrf h
clrf j
clrf flag_register
bsf STATUS, RP0 ;izbor na banka 1
movlw B'11110001' ;11110001b->W
movwf TRISA ;izwodi RA<3:1>-izhodi, RA0-whod
movlw B'11111111' ;11111111b->W
movwf TRISB ;izwodi B<7:0>-whodowe
movlw B'11010011' ; (011)1:16->TMR0
movwf OPTION_REG ;(w) ->OPTION_REG
clrf STATUS ;nulirane na STATUS
goto main
Трябва ми на 12F629 s intosc с timer 0, прескалер на 1;16, изходи на 0,1,2 и вход на 3порт
|
| Пет Апр 21, 2006 1:32 pm |
|
 |
|
Gogo
Ранг: Форумен бог
Регистриран на: Чет Фев 24, 2005 11:41 pm Мнения: 1049 Местоположение: Pz
|
 |  |  |  | Код: Processor 12F629 Radix DEC EXPAND errorlevel -302 include "p12f629.inc"
__CONFIG _CP_OFF&_WDT_OFF&_PWRTE_ON&_INTRC_OSC_NOCLKOUT ;************definirane na const. i promenliwi ;w EQU 0 ;f EQU 1 ;*******obqwqwane na izpolzwanite promenliwi CBLOCK H'20' ;adres na pyrwiq reg. ot GPR counter temp_counter flag_register a c h j ENDC ;************definirane bitowete na flag_register******* #define shift flag_register,0 #define shift_1 flag_register,1 #define shift_2 flag_register,2 #define g GPIO,0 #define e GPIO,1 #define r GPIO,2 #define in GPIO,3 ;*********potrebitelska programa************************ ORG H'0000' ;NU goto start ORG H'0004' ;wektor na prek goto start ;**************************Начало на програмата***************************** start: clrf STATUS ;nulirane na STATUS clrf counter clrf temp_counter clrf a clrf c clrf h clrf j clrf flag_register movlw B'00001000' ;vsichki izhodi - GP3=INPUT bsf STATUS, RP0 ;izbor na banka 1 movwf TRISIO ;izwodi RA<3:1>-izhodi, RA0-whod movlw B'11011011' ; (011)1:16->TMR0 movwf OPTION_REG ;(w) ->OPTION_REG bcf STATUS, RP0 ; goto main
END
|  |  |  |  |
|
| Пет Апр 21, 2006 2:21 pm |
|
 |
|
stoian_b
Ранг: Минаващ
Регистриран на: Пет Апр 21, 2006 11:51 am Мнения: 5
|
Така, пиша какво се получи и какво, не.
Файлла се компилира. Има едно предупреждение, че нещо не му харесва името на процесора но мина. Чипа се програмира /с IC Prog1,05C/ с ProPic2 и всичко дотук добре. Лошото е, че програмата не работи, както с 16F84.
Въпрос: MCLR OFF, или ON трябва да е, а BODEN? Bandgap стои на default.
Като цяло, на един от изходите излиза 5в., а не трябва да е така. Нещо липсва?
|
| Пет Апр 21, 2006 7:03 pm |
|
 |
|
Gogo
Ранг: Форумен бог
Регистриран на: Чет Фев 24, 2005 11:41 pm Мнения: 1049 Местоположение: Pz
|
MCLR трябва да е OFF, а BODEN не е важно в случая. Смени тоя ред, компилирай и ако не тръгне - викай неволята
__CONFIG _CP_OFF&_WDT_OFF&_PWRTE_ON&_INTRC_OSC_NOCLKOUT&_MCLR_OFF&_BODEN_OFF&_CPD_OFF
|
| Пет Апр 21, 2006 8:00 pm |
|
 |
|
milenjs
Ранг: Форумен бог
Регистриран на: Сря Мар 08, 2006 2:12 pm Мнения: 2017 Местоположение: Котел
|
Един въпрос - това цялата програма ли е или фрагмент от програма. Ако е фрагмент от програма кажи какво трябва да прави и пусни целия код за да не гадаем. Поне аз не разбирам какво трябва да прави това!
|
| Пет Апр 21, 2006 10:28 pm |
|
 |
|
stoian_b
Ранг: Минаващ
Регистриран на: Пет Апр 21, 2006 11:51 am Мнения: 5
|
Ами не е цялата програма, но засега не мога да я покажа, а и мисля, че останалото няма отношение. За съжаление не щя да тръгне. Имам съмнение да не би чипа нещо да е сдал багажа, че първо го пробвах с JDM програматор, но при четене и сверяване всичко е ОК. Ще взема нов другата седмица и с Неволята напред:). А ако все пак ми покажете къде има примери с 12F, само ще ви бъда благодарен
|
| Пет Апр 21, 2006 11:07 pm |
|
 |
|
milenjs
Ранг: Форумен бог
Регистриран на: Сря Мар 08, 2006 2:12 pm Мнения: 2017 Местоположение: Котел
|
|
| Съб Апр 22, 2006 8:59 am |
|
 |
|
stoian_b
Ранг: Минаващ
Регистриран на: Пет Апр 21, 2006 11:51 am Мнения: 5
|
Здравейте отново. След съдействието на колегите и помощта на неволята, задачата все пак бе решена. За да не се лутат и други като мене, ще подскажа къде беше трудността. Първо смених MPLAB 6.30 със 7.30 Тук е по добре и инициализацията на чипа, но още има какво да се желае. Пишеш му 629 и въпреки, че няма аналогови входове като 675, докато не конфигурирах всички портове като цифрови, не се получи. Не ясно и защо, след като му к онфигурирам осцилатора, при програмиране, вади съобщение, че не намира данни за това и си ги взима от неговия си адрес. Но това е за по-напреднали от мен и не ме тревожи толкова. Важното е, че целта беше постигната. 
|
| Съб Апр 29, 2006 8:16 pm |
|
|
|
Страница 1 от 1
|
[ 11 мнения ] |
|
Кой е на линия |
Потребители разглеждащи този форум: 0 регистрирани и 1 госта |
|
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл
|
|