programátor Velleman P 8048

Nemáte někdo zkušenosti s tímto programátorem jsem upný začátečník a nemůžu ho rozchodit :frowning: předem díky za informace

Nemam s nim skusenosti, ale ten nazov ma vydesil :open_mouth:

Musel som trochu googlit, aby som zistil, co je to zac a az po zhliadnuti procesorov, ktore to programuje som sa upokojil. Ako moze dnes niekto nazvat programator 8048 a pritom programuje PIC-ka?

Drzim ti palce.

Není to moc známí programátor, jak jsi k němu přišel?

Funguje ti nějak částečně nebo jeho ovládací SW o něm vůbec neví?

Jedna z častých chyb je ve volbě kabelu k programátoru - některé programátory jsou dělané na přímí a jiné zase na křížený kabel.

to je stavebnice od vellemana a ten originál program co dávají ten mi funguje ale pokud chci náhrát nějakej jinej tak mi to nefunguje program se přenese ale nefunguje to nejspíš je problém v programu v nastavení mikroprocesoru v originálu je rozepsáno docela hodně věcí ještě před samotnym programem
tady je odkaz přímo na výrobce www.velleman.be

Jestli ti dobře rozumím, tak programátor / zkušební deska funguje s přiloženou demo aplikací, ale když si tam nahraješ něco podle sebe, tak to nepracuje. To bys nám musel ten svůj program nejdřív ukázat, jinak ti nikdo neporadí.

;**************************************************************************
;* VELLEMAN High-Q KIT K8048/VM111 SAMPLE SOFTWARE *
;**************************************************************************
;* DEMO1: Simple Running light for testing LD1…LD5 *
;* DEMO1: Program for testing K8048/VM111 with PIC16F627! *
;**************************************************************************
;* © VELLEMAN Components,2003 All rights reserved *
;**************************************************************************
;* Hardw. Rev: P8048’1 Softw. Rev: 1.20 *
;* OSC…: XT 4MHz Max. POWER…: 12V DC *
;**************************************************************************

W EQU H’0000’
F EQU H’0001’

;----- Register Files------------------------------------------------------

INDF EQU H’0000’
TMR0 EQU H’0001’
PCL EQU H’0002’
STATUS EQU H’0003’
FSR EQU H’0004’
PORTA EQU H’0005’
PORTB EQU H’0006’

INTCON EQU H’000B’
OPTION_REG EQU H’0081’
TRISA EQU H’0085’
TRISB EQU H’0086’
CMCON EQU H’001F’

;----- STATUS Bits --------------------------------------------------------
IRP EQU H’0007’
RP1 EQU H’0006’
RP0 EQU H’0005’
NOT_TO EQU H’0004’
NOT_PD EQU H’0003’
Z EQU H’0002’
DC EQU H’0001’
C EQU H’0000’

;==========================================================================
;
; RAM Definition
;
;==========================================================================

__MAXRAM H'01FF'
__BADRAM H'07'-H'09', H'0D', H'13'-H'14', H'1B'-H'1E'
__BADRAM H'87'-H'89', H'8D', H'8F'-H'91', H'93'-H'97', H'9E'
__BADRAM H'105', H'107'-H'109', H'10C'-H'11F', H'150'-H'16F'
__BADRAM H'185', H'187'-H'189', H'18C'-H'1EF'

;==========================================================================
;
; Configuration Bits
;
;==========================================================================

_BODEN_ON EQU H’3FFF’
_BODEN_OFF EQU H’3FBF’
_CP_ALL EQU H’03FF’
_CP_75 EQU H’17FF’
_CP_50 EQU H’2BFF’
_CP_OFF EQU H’3FFF’
_DATA_CP_ON EQU H’3EFF’
_DATA_CP_OFF EQU H’3FFF’
_PWRTE_OFF EQU H’3FFF’
_PWRTE_ON EQU H’3FF7’
_WDT_ON EQU H’3FFF’
_WDT_OFF EQU H’3FFB’
_LVP_ON EQU H’3FFF’
_LVP_OFF EQU H’3F7F’
_MCLRE_ON EQU H’3FFF’
_MCLRE_OFF EQU H’3FDF’
_ER_OSC_CLKOUT EQU H’3FFF’
_ER_OSC_NOCLKOUT EQU H’3FFE’
_INTRC_OSC_CLKOUT EQU H’3FFD’
_INTRC_OSC_NOCLKOUT EQU H’3FFC’
_EXTCLK_OSC EQU H’3FEF’
_LP_OSC EQU H’3FEC’
_XT_OSC EQU H’3FED’
_HS_OSC EQU H’3FEE’

__CONFIG        _BODEN_ON & _CP_OFF & _DATA_CP_OFF & _PWRTE_ON & _WDT_OFF & _LVP_OFF & _MCLRE_ON & _XT_OSC

;==========================================================================
; Variable Definition
;==========================================================================
TIMER1 EQU H’20’ ;Used in delay routine
TIMER2 EQU H’21’ ; " " "
PATERN EQU H’22’ ;Pattern data for effect’s

	ORG	0		;Reset vector address
	GOTO	RESET		;goto RESET routine when boot.

; *********************************************
; * Example of a delay routine *
; *********************************************

DELAY_ROUTINE MOVLW D’255’ ;54 Generate approx 10mS delay at 4Mhz CLK
MOVWF TIMER2
DEL_LOOP1 MOVLW D’255’ ;60
MOVWF TIMER1
DEL_LOOP2 DECFSZ TIMER1,F
GOTO DEL_LOOP2
DECFSZ TIMER2,F
GOTO DEL_LOOP1
RETLW 0

; **********************************
; ** RESET : main boot routine **
; **********************************

RESET MOVLW B’00000111’ ;Disable Comparator module’s
MOVWF CMCON
;
BSF STATUS,RP0 ;Switch to register bank 1
;Disable pull-ups
;INT on rising edge
;TMR0 to CLKOUT
;TMR0 Incr low2high trans.
;Prescaler assign to Timer0
;Prescaler rate is 1:256
MOVLW B’11010111’ ;Set PIC options (See datasheet).
MOVWF OPTION_REG ;Write the OPTION register.
;
CLRF INTCON ;Disable interrupts
MOVLW B’11000000’
MOVWF TRISB ;RB7 & RB6 are inputs.
;RB5…RB0 are outputs.
MOVLW B’11111111’ ;all RA ports are inputs
MOVWF TRISA
BCF STATUS,RP0 ;Switch Back to reg. Bank 0
CLRF PORTB
;

EFFECT_1 MOVLW B’00000001’ ;Activate LD1 (RB0)
MOVWF PORTB
CALL DELAY_ROUTINE
MOVLW B’00000010’ ;Activate LD2 (RB1)
MOVWF PORTB
CALL DELAY_ROUTINE
MOVLW B’00000100’ ;Activate LD3 (RB2)
MOVWF PORTB
CALL DELAY_ROUTINE
MOVLW B’00001000’ ;Activate LD4 (RB3)
MOVWF PORTB
CALL DELAY_ROUTINE
MOVLW B’00010000’ ;Activate LD5 (RB4)
MOVWF PORTB
CALL DELAY_ROUTINE
MOVLW B’00100000’ ;Activate LD6 (RB5)
MOVWF PORTB
CALL DELAY_ROUTINE
GOTO EFFECT_1
END

tohle je demo který funguje

a tohle tam potřebuju dostat mělo by to jen na zamčknutí mikrospínače rosvítit led
org 000
;********************************************************
movlw 0fh ;konfigurace vstupů a výstupů
tris 5 ;RA3/0 vstupy, RA4 a RB7/0 výstupy
movlw 00h
tris 6
movlw 0ffh ;výstupy LED do H (RB7/0)
movwf 06
;********************************************************
loop comf 05h,0 ;negovaný Port A přesuň do Portu B
iorlw B’11110000’ ;(současně bity 7/4 Portu B
movwf 06h ; nastav do H- zhasni LED7/4)
;********************************************************
goto loop
;********************************************************
end

No, ono bude potřeba použít nějakou počáteční inicializaci, nastavení oscilátoru apod. Tvůj způsob zápisu není moc přehledný, ale přesto si troufám tvrdit, že registry TRIS nejsou ani u 16F627 v bance 0.
Řekni mi prosím, jestli ten tvůj program potřebuješ, nebo ti jde jen o procvičení?

tenhle program nepotřebuju jen tak zkoušim tady nefunguje tabulátor takže se to dost rozházelo ale zkoušel jsem okopírovat nastavení z toho originál ale to taky nefunguje

Tvůj přesný zájměr jsem zcela nepochopil, ale připravil jsem program, ze kterého bys mohl vycházet. Psal jsem ho v prostředí Microchip MPLAB. O tom, co tu vidíš, se můžeme bavit a diskutovat proč a jak. Protože nevím přesně, jak program překládáš, tak připojuji i přeložený hex soubor, který by měl jít rovnou “vypálit” do procesoru.

[code] list p=16F627 ; list directive to define processor
#include <P16f627.inc> ; processor specific variable definitions
errorlevel -302
__CONFIG _BODEN_ON & _CP_OFF & _DATA_CP_OFF & _PWRTE_ON & _WDT_OFF & _LVP_OFF & _MCLRE_ON & _XT_OSC
;--------- CONSTANTS DEFINITIONS ------------------------------------
#define RAM_Start 0x70
;--------- VARIABLE DEFINITIONS -------------------------------------
CBLOCK RAM_Start
w_temp ; variable used for context saving
status_temp ; variable used for context saving
ENDC
;--------------------------------------------------------------------
ORG 0x000 ; Processor reset vector
reset goto init ; Go to beginning of program
;--------------------------------------------------------------------
; Start procesoru , konfigurace
;------------------------ BANK 0 ----------------------------------
init
clrf STATUS ; Restore Bank 0
clrf INTCON ; zakaz vsech preruseni
movlw B’00000111’ ; Disable Comparator module’s
movwf CMCON ; "
clrf PORTB ; reset output for future
;------------------------ BANK 1 ---------------------------------
bsf STATUS,RP0 ; Bank 1
movlw B’11101111’ ; definice I/O pro PORTA
movwf TRISA ; pouze RA4 jako vystup
movlw B’11000000’ ; definice I/O pro PORTB
movwf TRISB ; pouze RB6, RB7 jako vstup
bcf STATUS,RP0 ; Bank 0
;-------------------------------------------------------------------
start
movf PORTA,W
andlw B’00001111’
movwf PORTB
goto start

END[/code]

velleman_01.HEX (137 Bytes)

Tabulátor funguje, jen je nutné použít režim pro vkládání kódu - režim “code” nahoře v nabídce.

TAk koukam že neumim nic od toho začátku až k bank 1 tomu nerozumim něco jako trochu a něco vůbec nemáš k tomu nějaký vysvětlivky mam knížky od benu a tam nic takovýho není

Ty vysvětlivky tam jsou, ale jsem schopen je rozšířit. Ale nejsem schopen ani ochoten odpovídat na dvě slova třemi stránkami. Buď konkrétní a precizuj svoje otázky. A taky vyzkoušej, jestli to funguje nebo ne.

díky moc program funguje jenom nevim k čemu slouží řádek s errorlevel -302 jinak na to ostatní jsme už přišel ještě jednou díky

errorlevel -302 jen blokuje některá specifická chybová hlášení překladače. Já ho používám pro odstranění hlášení o nutnosti přepínání mezi jednotlivými bankami. Když ho nepoužiješ, tak se nic neděje.

Zdravím všechny. Mám také tento kit a program MPLAB IDE 8.10 a nějak se nemohu spojit. Jaký kabel používáte? Jsem připojen k ntb přes USB_Serial převodník. S jiným propojením, například se sat. receivery a řídícími systémy nemám problém se spojit, ale tento kit jsem prostě ještě nepřipojil.Díky za rady.

Jsi si opravdu jistý, že by tvůj programátor měl fungovat v prostředí MPLAB? Podle mého názoru s ním nemá nic společného.
A Velleman ještě k tomu tvrdí, že tento programátor nebude správně pracovat s převodníky USB/COM.

Aha, tak to bude ten problém…Nejprve ho vyzkouším s dodávaným softwarem a pak se kdyžtak ještě ozvu. MPLAB je přehledné prostředí pro vývoj. Díky zatím za radu…