Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

Как да конфигурирам контролера?
http://mcu-bg.com/mcu_site/viewtopic.php?f=7&t=4205
Страница 1 от 1

Автор:  Емил Енчев [ Пет Май 18, 2007 9:15 pm ]
Заглавие:  Как да конфигурирам контролера?

За пръв път работя с PIC16F877A. Опитвам се само да изведа данни на два от портовете, за да видя дали правилно работя, но нищо не се получава...
Ето сорсът, ако някой желае да каже какво съм пропуснал при дефинирането:


list p=16F877A
#include <p16F877A.inc>
__CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _HS_OSC

;**** DEFINIRANE NA KONSTANTI I PROMENLIVI ****
w EQU 0
f EQU 1
CBLOCK H'0C' ;Adres na parvija registar ot GPR
Counter
Row_Counter
ROW_BUFFER
ENDC
ORG H'0000' ;Vektor za Na4alno ustanovjavane
goto start ;Prehod kam na4aloto na programata

start bsf STATUS,RP0 ;Izbor na banka 1
movlw B'00000110' ;00000100b =>W
movwf OPTION_REG ;(W) => OPTION_REG => KOEF.NA DELENE (1:64)

bcf STATUS,RP0
bcf STATUS,RP1
clrf PORTA ;00h => PORT A
clrf PORTB ;00h => PORT B
clrf PORTC ;00h => PORT C
clrf PORTD ;00h => PORT D
clrf PORTE ;00h => PORT E
bsf STATUS,RP0 ;Izbor na banka 1
movlw B'00000110' ;00000100b =>W
movwf ADCON1 ;VSI4KI PORTOVE-DIGITALNI
movlw B'11100000' ;PORTA: RA0-RA4-IZHODI, RA5-VHOD
movwf TRISA
clrf TRISC ;RC0,RC7 - IZHODI
clrf TRISD ;RD0,RD7 - IZHODI
movlw B'11111000' ;PORTE: RE0-IZHOD, RE1,RE2-VHODOVE
movwf TRISE
bcf STATUS, RP0 ;Izbor na banka 0
main
movlw B'01010101'
movwf PORTC
movlw B'11100111'
movwf PORTD
END

Автор:  Ки4о [ Пет Май 18, 2007 9:48 pm ]
Заглавие: 

Да вземеш да отидеш на сайта на Майкрочип,да изтеглиш 1-2 ПДФ и да попрочетеш как стават нещата а?Има и примери ама май нещо не ти се чете.

Автор:  Емил Енчев [ Пет Май 18, 2007 10:33 pm ]
Заглавие: 

Имам ги 10-ина. И нищо не можах да направя. Ако можех да се оправя така, нямаше да питам.
Свободно свалете темата от форума. Да търсиш конкретен отговор е просто празна работа...

Автор:  Ки4о [ Пет Май 18, 2007 10:47 pm ]
Заглавие: 

Мързи те и още как! Ето ти едно парче код за инициализация.Преди да седнеш да пишеш седни и пропрочети за асемблера.Не си мисли че ще намериш в нета точно това дето на теб ти трябва за проекта ти - за това се хвани и чети здраво.
Винаги ще се намери някой да помогне,ама да седне да ви върши работата....


title "PIC16F877A"
list p=16F877A, f=INHX32
Clock_Freq EQU d'1000000'
include"P16F877A.INC"
__CONFIG _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON & _XT_OSC & _WRT_OFF & _LVP_OFF & _CPD_OFF


CBLOCK 0x030
tempone
temptwo
binh_reg
binl_reg
tenk_reg
thous_reg
hund_reg
tens_reg
ones_reg

ENDC

;******************************************************************************
;Reset vector
; This code will start executing when a reset occurs.

ORG 0x0000
goto Main ;go to start of main code

ORG 0x0060
Main:
CLRF tempone
CLRF temptwo

CLRF binh_reg
CLRF binl_reg
CLRF thous_reg
CLRF hund_reg
CLRF tenk_reg
CLRF tens_reg
CLRF ones_reg
;*******************************************


BANKSEL INTCON
CLRF INTCON
BANKSEL PORTB
CLRF PORTB
BANKSEL TRISB

CLRF PIE1
CLRF PIE2
MOVLW 0x00
MOVWF TRISB


BCF STATUS,RP0
BCF STATUS,RP1
CLRF PORTA
BSF STATUS,RP0
MOVLW B'10000000'
MOVWF ADCON1
banksel PORTC
CLRF PORTC
MOVLW 0х00
MOVWF TRISC
MOVWF PORTC

BANKSEL PORTD
CLRF PORTD
MOVLW 0x00
MOVWF CVRCON
BANKSEL CMCON
MOVLW B'00000111'
MOVWF CMCON
BANKSEL TRISD
MOVLW 0x00
CLRF TRISD
BANKSEL PORTD
CLRF PORTD

;************************************************************

Автор:  Dimitar [ Пет Май 18, 2007 11:59 pm ]
Заглавие: 

Емиле - освен инициализацията има още едно нещо дето му се вика основен цикъл на програмата. Като го няма това нещо и контролера по някое си време хваща къра без мотика 8) .
Кичо - не му се карай така на човека бе, нито ти, нито аз сме се родили научени :) . Доскоро и ти питаше разни елементарни работи за С-то 8) .

Автор:  plameniv [ Съб Май 19, 2007 12:09 am ]
Заглавие:  Mne

Dimitar написа:
Емиле - освен инициализацията има още едно нещо дето му се вика основен цикъл на програмата. Като го няма това нещо и контролера по някое си време хваща къра без мотика 8) .
Кичо - не му се карай така на човека бе, нито ти, нито аз сме се родили научени :) . Доскоро и ти питаше разни елементарни работи за С-то 8) .

По скоро не е настроил портовете да не са аналогови :)

BSF STATUS,RP0
MOVLW B'10000010'
MOVWF OPTION_REG
MOVLW 0x06
MOVWF ADCON1 ;Настроиване на изходите само като цифрови
MOVLW B'00111001'
MOVWF TRISA ;RA0-RA3 - ВХОДОВЕ
CLRF TRISB ;RB0-RB7 - Изходи
CLRF TRISC ;RC0-RC7 - Изходи
BCF STATUS,RP0

Автор:  VSU [ Съб Май 19, 2007 1:45 am ]
Заглавие: 

Я разгледай това за port A,B,C е ама ти ще си го оправиш като го разучиш :idea:

Прикачени файлове:
io_test.asm [2.16 KiB]
203 пъти

Автор:  bobyk [ Съб Май 19, 2007 5:02 pm ]
Заглавие: 

Май имам DEJA VU :)
Ами достатъчно се каза, това не е първия случай накой започва с ПИК16Ф84, понаучи нещо и след това си мисли че всички контролери са същите и си копират инициялизацията и после викат ама що не работи, ами ако се чете внимателно ще е ясно що.
Цитат:
CBLOCK H'0C' ;Adres na parvija registar ot GPR

Това е вярно само при Ф84, и доста други ама на това обръщам внимание, че май най-често не се забелязва.
Е успех иначе, Ф877 от 16 серия май си остава класика, има защо. :wink:

Автор:  hobsi [ Пон Юли 09, 2007 1:02 am ]
Заглавие:  Как да конфигурирам контролера?

KI40 AZ PO PRINCIP SE OPRAVIAM SAM NO OT KADE GI VZE TIA PDF-I DETO SA OPISAN REGISTRITE CRVCON I CMCOM DAI NEKAF LIK SHTOT IAVNO IMA NESHTO V TIAH A V PDF-ITE DEOGI TEGLIA GI DAVAT KATO REZERVIRANI

Автор:  hobsi [ Пон Юли 09, 2007 1:36 am ]
Заглавие:  Как да конфигурирам контролера?

e eto i takuv link

http://ww1.microchip.com/downloads/en/D ... 39582b.pdf

Автор:  Predator_MF [ Пон Юли 09, 2007 7:39 am ]
Заглавие:  Re: Как да конфигурирам контролера?

hobsi написа:
KI40 AZ PO PRINCIP SE OPRAVIAM SAM NO OT KADE GI VZE TIA PDF-I DETO SA OPISAN REGISTRITE CRVCON I CMCOM DAI NEKAF LIK SHTOT IAVNO IMA NESHTO V TIAH A V PDF-ITE DEOGI TEGLIA GI DAVAT KATO REZERVIRANI


Добре дошъл във форума, тук се пише на кирилица, на клавиатурите си имаме клавиши CapsLock, които ще се наложи да използваш в бъдеще за да не бъдат затрити мненията ти.

По темата, къде ги видя тия резервирани CMCON и CVRCON ?

Автор:  Емил Енчев [ Нед Юли 22, 2007 9:28 pm ]
Заглавие:  Re: Как да конфигурирам контролера?

С изпратената от Кичо конфигурация се получи.
Работи и всичко останало в програмата ми.
Наистина, досега не ми е ясно какво бях сгрешил в началото...

Автор:  velio [ Вто Юли 24, 2007 10:25 am ]
Заглавие: 

Е то мързела голяма работа.
Цитат:
CBLOCK H'0C' ;Adres na parvija registar ot GPR

Това тука дали е така както си го написал?
Вече ти обърнаха внимание на него...

Автор:  Емил Енчев [ Съб Юли 28, 2007 2:03 am ]
Заглавие: 

Това с мързела не е зле да го позабравите. Защото работя този проект вече 3 месеца и го изпълнявам от проектирането на софтуера и хардуера, захранването, до статичното управление на 1200 консуматора (електромоторчета), които в момента свързвам и са някакъв изпълнителен възел. Мощността на това животно е около 5000 вата и едва ли можете да си представите колко неща трябва да съгласувам, за да не направя една голяма електронна, компютърно управляема факла! Мерната единица на количеството запоени елементи е не "бр.", а "хил.бр."! Не съм докачлив, но упреците на тема мързел определено приемам доста лично в този случай. Не си мислете, че става дума за проект в техникума, защото ще пусна линк след презентацията на "проектчето" и ще схванете за какво става дума като труд! При такова напрежение при работата(определено имам и срок за изпълнение), нормално е да допускам и грешки, нали? А и не се считам за компютърен бог, въпреки че цялата система използва три коренно различни нива на компютърно програмиране...

Автор:  milenjs [ Пон Юли 30, 2007 9:02 am ]
Заглавие: 

Огромна мигалка ??? :D

Страница 1 от 1 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/