Brugtgrej.dk
Forside  |   Ny annonce  |   Forum  |   Nyhedsmails  |   Om brugtgrej  |   Kontakt Brugtgrej
140 online brugere
2970 online annoncer
SælgesKøbes

pic 16f876A asm fil

Denne tråd er lukket for nye indlæg

#1  13/01-17 12:22
Jørn Hansen

Indlæg: 39
jeg får ikke udlæst linie 2 på display

hvad er galt her får det åben bart ikke skrevet rigtig når jeg make a hex fil.

håber det er tii at forstå.


goto LA00 ;
;--------------------------------------------------------------------*
; 07 SCRITTA PRESENTAZIONE SU LCD *
;--------------------------------------------------------------------*
PRESE bcf RS ; RS basso per comandi
call RI005M ; Indirizzo 0 di DD RAM
movlw b'10000000' ;
call WRITE ;
movlw .1 ; Cursore a capo e cancellazione LCD
call WRITE ;
bsf RS ; Reg. Select a 1 per dati
call RI005M ;
movlw ' ' ; R1 C01 = spazio
call WRITE ;
movlw 'S' ; R1 C02 = S
call WRITE ;
movlw 'W' ; R1 C03 = W
call WRITE ;
movlw 'R' ; R1 C04 = R
call WRITE ;
movlw '/' ; R1 C05 = /
call WRITE ;
movlw 'W' ; R1 C06 = W
call WRITE ;
movlw 'A' ; R1 C07 = A
call WRITE ;
movlw 'T' ; R1 C08 = T
call WRITE ;
movlw 'T' ; R1 C09 = T
call WRITE ;
movlw ' ' ; R1 C10 = spazio
call WRITE ;
movlw 'M' ; R1 C11 = M
call WRITE ;
movlw 'E' ; R1 C12 = E
call WRITE ;
movlw 'T' ; R1 C13 = T
call WRITE ;
movlw 'E' ; R1 C14 = E
call WRITE ;
movlw 'R' ; R1 C15 = R
call WRITE ;
movlw ' ' ; R1 C16 = spazio
call WRITE ;
bcf RS ; Reg. Select a 0 per istruzioni
call RI005M ; Ritardo
movlw .192 ; Indirizzo inizio seconda riga
call WRITE ;
bsf RS ; Reg. Select a 1 per dati
call RI005M ; Ritardo
movlw ' ' ; R2 C01 = spazio
call WRITE ;
movlw ' ' ; R2 C02 = J
call WRITE ;
movlw ' ' ; R2 C03 = O
call WRITE ;
movlw ' ' ; R2 C04 = R
call WRITE ;
movlw ' ' ; R2 C05 = N
call WRITE ;
movlw ' ' ; R2 C06 = spazio
call WRITE ;
movlw ' ' ; R2 C07 = D
call WRITE ;
movlw ' ' ; R2 C08 = E
call WRITE ;
movlw ' ' ; R2 C09 = spazio
call WRITE ;
movlw ' ' ; R2 C10 = O
call WRITE ;
movlw ' ' ; R2 C11 = Z
call WRITE ;
movlw ' ' ; R2 C12 = 1
call WRITE ;
movlw ' ' ; R2 C13 = A
call WRITE ;
movlw ' ' ; R2 C14 = F
call WRITE ;
movlw ' ' ; R2 C15 = F
call WRITE ;
movlw ' ' ; R2 C16 = spazio
call WRITE ;
call RI750M ; I Tempo visione scritta iniziale
call RI750M ; II Tempo visione scritta iniziale
;--------------------------------------------------------------------*
; 08 LETTURA DATI CALIBRAZIONE DA EEPROM *
;--------------------------------------------------------------------*

Vedhæftede filer: wattmeter04.asm  
#2  13/01-17 16:46
Jørgen Kragh
Indlæg: 638
Svar til #1:
Det ville jo lette lidt, hvis du skrev, hvori fejlen består.

Du beder displayet om at skrive, (hvor _ betyder mellemrum):

_SWR/WATT_METER_
________________

Og hvad står der så i displayet???

mvh

Jørgen

#3  14/01-17 07:13
Lars Juel Hansen

Indlæg: 315
Svar til #1:
Du vil gerne have skrevet:
" SWR/Watt Meter " i linie 1, og:
" Jorn DE OZ1AFF " i linie 2, i et 2 x 16 liniers LCD ?

Er det korrekt opfattet ? Eller vil du bruge et andet type display ? Nu er de fleste displays udsat for en industristandard; mht benforbindelser og start addresser for hver linier, men der er som bekendt undtagelser...

Jeg gætter på, at du "bare" skal have fundet den rigtige addresse for linie 2 i databladet, og så have ændret den tilsvarende i .asm filen

Mht. det vedhæftede program; det er ulideligt at læse på den måde det er stillet op; kan du ikke smide en link til det originale ?

----------
mvh - `73
Lars - OZ1FUS

Redigeret 14/01-17 07:16
#4  14/01-17 08:38
Jørgen Kragh
Indlæg: 638
Svar til #3:
Hej FUS

Der adresseres fint nok til linje 2, men prøv at kigge nærmere på nedenstående:

Load af w med karakter 3 i linje 1: movlw 'W' ; R1 C03 = W
Load af w med karakter 2 i linje 2: movlw ' ' ; R2 C03 = O

Ka' du se forskellen?

mvh

Jørgen

#5  14/01-17 08:55
OZ8CW

Indlæg: 274
Svar til #4:

Hvorfor skriver du ikke bare at der mangler bogstavet i mellem '' istedet for at lave det til en gættekonkurrence ?

Load af w med karakter 3 i linje 1: movlw 'W' ; R1 C03 = W
Load af w med karakter 2 i linje 2: movlw ' ' ; R2 C03 = O

skal være
Load af w med karakter 3 i linje 1: movlw 'W' ; R1 C03 = W
Load af w med karakter 2 i linje 2: movlw 'O' ; R2 C03 = O

Hjalmar
OZ1JHM

#6  14/01-17 09:41
Lars Juel Hansen

Indlæg: 315
Svar til #4:
Ja, jeg kan, selvom jeg ikke er god til hverken italiensk eller asm, godt se forskellen...
Helle linie 2 bliver bare fyldt op med spazioèr...

Nå, men hvis vi nu alle skrev i C, med rigelige kommentarer, var alting bare så meget nemmere... Not ???

----------
mvh - `73
Lars - OZ1FUS

#7  14/01-17 10:56
Jørgen Kragh
Indlæg: 638
Svar til #6:
Det var godt. Mon ikke Jørn kan komme videre nu?

Jeg kan godt se ideen i at alle koder i C++, for så er det lettere at fejlfinde for andre, men i assembler kan man jo lave noget rasende hurtig tidstro kode, og det er nogen gange nødvendigt. Og så fylder det ikke så meget. Hele min 14 GHz frekvenstæller fylder vel 100 linjer.

mvh

Jørgen
Hvis italienske indskrænker sig til "Uno litro vino rosso della casa"

#8  14/01-17 12:57
J. Lau Lindhardt
Indlæg: 608
Svar til #5:
Hej Hjalmar.
Måske for at vi andre, der gerne vil lærer lidt om emnet, bliver sat en opgave så vi kan forstå det som problemet/fejlen drejer sig om.
Personligt synes jeg at det er et fint svar.

God dag.

----------
Kleinsmed Emeritus
Proud member of DDXG
https://www.dc3vennerne.dk

#9  14/01-17 14:26
OZ9F, Leif L. Hjørringgaard

Indlæg: 75
Svar til #1:
Hej Jørn

Jeg løb ind i samme problem da jeg fik filen fra Italien i sin tid. Hi hi.

Dum som jeg er mente jeg at det jo var klaret med at skrive ude til højre.
Jeg fik compilet de linier en del gange inden 25 øren faldt.
Nemlig som Jørgen Kragh skriver, at tegnet du vil have frem i displayet er en delt af linien

movlw 'HER SKAL STÅ ET TEGN'

Har du fået resten af instrumentet til at virke?

Ellers er der lidt at hente her:

http://oz9f.dk/index.php/digital-vswr-power-met er

Mvh.

Leif - OZ9F

#10  15/01-17 13:59
Jørn Hansen

Indlæg: 39
Der fik jeg vist stukket hånden i en vebserede

og ja der skal stå
linie 1 i display SWR/WATT METER
linie 2 i display JORN/DE/OZ1AFF

koden se nu sådan ud og det virker
så der er tak til alle for input

Til Leif har ikke lavet måle broen færdig
skal nok komme med info når alt virker.
vy 73 de oz1aff

07 SCRITTA PRESENTAZIONE SU LCD *
;--------------------------------------------------------------------*
PRESE bcf RS ; RS basso per comandi
call RI005M ; Indirizzo 0 di DD RAM
movlw b'10000000' ;
call WRITE ;
movlw .1 ; Cursore a capo e cancellazione LCD
call WRITE ;
bsf RS ; Reg. Select a 1 per dati
call RI005M ;
movlw ' ' ; R1 C01 = spazio
call WRITE ;
movlw 'S' ; R1 C02 = S
call WRITE ;
movlw 'W' ; R1 C03 = W
call WRITE ;
movlw 'R' ; R1 C04 = R
call WRITE ;
movlw '/' ; R1 C05 = /
call WRITE ;
movlw 'W' ; R1 C06 = W
call WRITE ;
movlw 'A' ; R1 C07 = A
call WRITE ;
movlw 'T' ; R1 C08 = T
call WRITE ;
movlw 'T' ; R1 C09 = T
call WRITE ;
movlw ' ' ; R1 C10 = spazio
call WRITE ;
movlw 'M' ; R1 C11 = M
call WRITE ;
movlw 'E' ; R1 C12 = E
call WRITE ;
movlw 'T' ; R1 C13 = T
call WRITE ;
movlw 'E' ; R1 C14 = E
call WRITE ;
movlw 'R' ; R1 C15 = R
call WRITE ;
movlw ' ' ; R1 C16 = spazio
call WRITE ;
bcf RS ; Reg. Select a 0 per istruzioni
call RI005M ; Ritardo
movlw .192 ; Indirizzo inizio seconda riga
call WRITE ;
bsf RS ; Reg. Select a 1 per dati
call RI005M ; Ritardo
movlw ' ' ; R2 C01 = spazio
call WRITE ;
movlw 'J' ; R2 C02 = J
call WRITE ;
movlw 'O' ; R2 C03 = O
call WRITE ;
movlw 'R' ; R2 C04 = R
call WRITE ;
movlw 'N' ; R2 C05 = N
call WRITE ;
movlw '/' ; R2 C06 = /
call WRITE ;
movlw 'D' ; R2 C07 = D
call WRITE ;
movlw 'E' ; R2 C08 = E
call WRITE ;
movlw '/' ; R2 C09 = /
call WRITE ;
movlw 'O' ; R2 C10 = O
call WRITE ;
movlw 'Z' ; R2 C11 = Z
call WRITE ;
movlw '1' ; R2 C12 = 1
call WRITE ;
movlw 'A' ; R2 C13 = A
call WRITE ;
movlw 'F' ; R2 C14 = F
call WRITE ;
movlw 'F' ; R2 C15 = F
call WRITE ;
movlw ' ' ; R2 C16 = spazio
call WRITE ;
call RI750M ; I Tempo visione scritta iniziale
call RI750M ; II Tempo visione scritta iniziale
;--------------------------------------------------------------------*
; 08 LETTURA DATI CALIBRAZIONE DA EEPROM *
;--------------------------------------------------------------------*

Vedhæftede filer: wattmeter04.asm  
#11  16/01-17 13:26
Lars Juel Hansen

Indlæg: 315
Svar til #10:
Det syntes jeg da ikke at du gjorde...Spørgsmålet var fint relevant; du fik løst dit problem, og vi fik lov at diskutere lidt teknik i al fordragelighed...
Jeg tror, at vi alle har været et sted, hvor vi ikke kunne se skoven for bare træer...
Iøvrigt, jeg har et dokument der beskriver lidt om de LCD man kan falde over; benforbindelser og addressering; det blev fisket ud fra nettet en sen nattetime, hvor jeg skulle have et ukurant display til at spille...
Jeg kan sende det til dig hvis du vil have det ? Eller til andre, hvis det har interesse ?

----------
mvh - `73
Lars - OZ1FUS

Denne tråd er lukket for nye indlæg