Sida 2 av 5
Postat: 1 november 2006, 21:33:59
av vfr
TRIS-registerna talar om om portpinnarna är ingångar eller utgångar. Instruktionen "MOVWF TRISA" flyttar helt enkelt innehållet i W-registret till TRISA. Har du då rätt värde i W från början så kan du få t.ex RA4 till input. Det beror helt enkelt på vad du laddat i W-registret i instruktionerna före.
Postat: 2 november 2006, 10:21:30
av squiz3r
ok.. Tack!
jag får läsa vidare. intr för att jag fattar mycket... men när man har läst igenom allt typ tre gånger kan man nog något...

Postat: 2 november 2006, 14:09:07
av squiz3r
hej, igen
en idiotisk fråga till bara:
är följande programspråk C eller vad är det??
_____________________________________________
include f628_4i
include jlib
var volatile byte CMCON at 0x1F = 0x07 -- disable port a analog functions
var bit LED is pin_a0
pin_a0_direction = output
forever loop
delay_100ms( 5 )
LED = high
delay_100ms( 5 )
LED = low
end loop
Postat: 2 november 2006, 14:12:55
av Icecap
Ser ut som det avskyvärda språket BASIC.
Mitt råd: ge dig inte in på BASIC om du vill lära dig att programmera, det är en återvändsgränd.
Postat: 2 november 2006, 14:22:25
av squiz3r
basic har jag redan programerat med i många år (basic stamp) men tanken va ju att sluta med det...
det jag tycker är konstigt bara är:
för att programera en pic12f628 i basic behöver man väl en basic tolk?
jag hittade exemplet på:
http://www.voti.nl/blink/index.html
och där framgår inte att man skulle ha en basic tolk???

Postat: 2 november 2006, 14:25:38
av vfr
Då är det säkert "jal". Ett eget språk som han själv konstruerat, efter vad jag har förstått.
Postat: 2 november 2006, 14:53:55
av Icecap
Ja, det kan ju då vara JAL (Just Another Language). Börja inte med det heller, det är ett mycket specifikt PIC-språk.
Om du MÅSTE börja med annat än Assembler kan jag rekommendera
MikroC som är gratis men har en kodbegränsning som, i nuläget, vida överskrider ditt behov.
Men jag vill fortfarande rekommendera MPLAB från
Microchip, det ger den bästa start i min mening, sedan kan man avancera uppåt när man väl 'kan' PIC.
Postat: 2 november 2006, 15:10:01
av squiz3r
vad är lättast att börja med mikroC eller assembler?
jag har läst ca 50sider i produkt bladet o kolat på miljontals andra ställen o suttit time efter time o läst om assembler, nu börjar jag förstå nåt men det är väldigt lite... (jag kan fortfarande så lite så att jag tycker att det är fullkomligt ologiskt...)
men hur funkar det när man programerar en pic i annat än assembler? måste man inte ha en "tolk" då? eller kan en pic fler språk? som tex "JAL"?
Postat: 2 november 2006, 16:02:01
av Icecap
En PIC kan inga språk!
Den kan däremot utföra de instruktioner som man lägger i minnet på de. De instruktioner kan man skapa med assembler, C, JAL, Pascal, Basic eller annat språk efter önska använder en kompiler, dessa kompilers "omvandlar" det man skriver till assembler och kör det sedan genom en assembler som då gör den slutgiltiga koden som man kan programmera in i PIC'en.
Så när programkoden väl ligger som en HEX-fil har PIC'en ingen aning om vem eller vad som har genererat dessa instruktioner, den utför dom bara.
Mitt råd är att traska på i assembler-spåret, jag tycker att inlärningströskeln är lägst där om man vill förstå vad som händer. Senare kan du kliva "uppåt" i språk men det finns en inlärningströskel där också, alltså ska du klara av 2 steg om du går direkt på ett högnivåspråk, med assembler är det bara 1 steg nu.
Postat: 2 november 2006, 16:25:38
av squiz3r
ok tack för svaret!!
då fortsätter jag med assembler
vet du om man kan hitta några lätta prog. exempel nånstans samt komando lista där det står vad alla komandon betyder?
(då menar jag riktigt lätta progexempel där det står steg för steg vad som "händer")
Tack i gen (på förhand)

Postat: 2 november 2006, 16:42:39
av Icecap
Kommandons betydelse: Kolla databladet! Det står alltid i dom.
Lätta programexemplen kan lätt finnas på Microchips sida, där finns många AN (Application Notes = "hur gör man"), en del är mycket komplicerat, andra är oerhört enkla.
Har för mig att de har en tutorial också
Postat: 2 november 2006, 17:48:12
av idiotdea
Första träffen
http://www.mstracey.btinternet.co.uk/pi ... icmain.htm på google med "pic tutorial" tyckte jag var ganska bra när jag började med PIC (några månader sedan). Den förklarar ganska bra om assembler, hur man programmerar en PIC, och även hur man kopplar den för enkla test.
Å andra sidan kunde jag delvis assembler redan när jag började med PIC, och det underlättade nog en hel del. När man väl har lärt sig grunderna blir databladen
mycket lättare att förstå sig på, och samtidigt även mycket mer användbara.
Postat: 2 november 2006, 19:22:48
av squiz3r
tack för länken!!

den är JÄTTE bra!
bara två frågor angående programet nedan...
fråga 1: om "labeln" start ska stå först i programet, kan den då stå på samma rad som (i detta fallet) "wovlw"?
fråga 2: efter som det inte fins nån "pause" funktion i detta prog.et borde det ju blinka en gång värje millisekund?
_______________________________________________________
Kod: Markera allt
bsf 03h,5
movlw 00h
movwf 85h
bcf 03h,5
Start movlw 02h
movwf 05h
movlw 00h
movwf 05h
goto Start
edit: en fråga till kan man "räkna" om HEX tal till Binära tal???
Postat: 2 november 2006, 19:26:05
av Icecap
En label får en adress när assemblern kommer till den. Den ska stå före en instruktion, mellan dom, ha en kommentar efter eller vad du vill.
Jag brukar ofta göra någonting såhär:
Hex2Dec ; Här omvandlas en Hex sträng till ett tal
...
...
...
osv
Då ser man vad som händer. Är det bara ett "internt" label i en rutin är det sällan jag kommenterar det på så vis.
Postat: 2 november 2006, 19:30:36
av danei
"edit: en fråga till kan man "räkna" om HEX tal till Binära tal???"
Ja det är däsför amn använder HEX. en siffra HEX motsvara fyra binära.
Kod: Markera allt
1 0001
2 0010
3 0011
4 0100
5 0101
6 0110
7 0111
8 1000
9 1001
A 1010
B 1011
C 1100
D 1101
E 1110
F 1111