Ik ben al een tijdje bezig met pic processors, maar dat waren voornamelijk kleine projecten. Nu wil ik een klok maken en ik heb het programma al geschreven, maar ik kom uit op 9k aan geheugen. Ik wou een 16f877 gebruiken maar kan dit omdat hij maar 8k program geheugen heeft, of klopt dit niet want in de datasheet staat dat hij 8k x14 aan geheugen heeft maar waarom zetten ze er dan niet gewoon 112k aan geheugen heeft????
elektron_
beetje gek
9K ? heb je een Super Klok ?
http://www.geocities.com/vsurducan/electro/PIC/two.html#clock
Ik weet het, het is nogal een groot bestand, maar als iemand meer info weet dat 8k x 14 dan zou ik het graag willen horen
:9
Wouter van Ooijen
Wouter van Ooijen: VOTI webwinkel, docent HvU (Technische Informatica); C++ on mictrocontrollers blog
Ik wou een 16f877 gebruiken maar kan dit omdat hij maar 8k program geheugen heeft, of klopt dit niet want in de datasheet staat dat hij 8k x14 aan geheugen heeft maar waarom zetten ze er dan niet gewoon 112k aan geheugen heeft???? [/quote]
Hij heeft inderdaad 112k *bits* aan geheugen, maar dat is niet zo interessant. Iedere instructie is 12 bits, dus je kan er 8k instructies in kwijt, basta. En helaas is zijn er geen grotere 14-bit flash PICs. Dus je sult je programma moeten wassen op een hoge temperatuur, of uitwijken naar een 18F452 (16k instructies), maar die is wel van een 'hogere' serie en heeft een wat andere (verbeterde) structuur.
balen. Zal ik toch maar kijken of ik mijn programma iets kan inkorten, want mijn programmer ondersteund geen pic's uit de 18 serie.
iig bedankt voor de reacties
Dat moet dan toch wel een heftige klok worden als je daar 9k aan geheugen voor nodig hebt..(lijkt mij tenminste)
k.p.meinesz
Een schizofreen is nooit alleen!
Op 28 december 2002 18:44:04 schreef Wouter SSijm:
Ik ben al een tijdje bezig met pic processors, maar dat waren voornamelijk kleine projecten. Nu wil ik een klok maken en ik heb het programma al geschreven, maar ik kom uit op 9k aan geheugen. Ik wou een 16f877 gebruiken maar kan dit omdat hij maar 8k program geheugen heeft, of klopt dit niet want in de datasheet staat dat hij 8k x14 aan geheugen heeft maar waarom zetten ze er dan niet gewoon 112k aan geheugen heeft????
What The Hell are you doeing?
9k nodig voor alleen een klok?
kijk hier eens voor de basis
loopt nog niet helemaal goed maar daar word aangewerkt
klok
Ik weet het hij is HEEL groot, maar ik zal eens een stukje van het programma laten zien:
var byte u1 = 0
var byte u2 = 0
var byte m1 = 0
var byte m2 = 0
const bit l = low
const bit h = high
forever loop
delay_1s ( 60 )
m1 = m1 + 1
if m1 == 10 then
m2 = m2 + 1
end if
if m1 == 10 then
m1 = 0
end if
if m2 == 7 then
u1 = u1 + 1
end if
if m2 == 7 then
m2 = 0
end if
if u1 == 10 then
u2 = u2 + 1
end if
if u1 == 10 then
u1 = 0
end if
if u1 == 4 & u2 == 2 then
u1 = 0
u2 = 0
m1 = 0
m2 = 0
end ifik weet niet of dit een beetje te begrijpen is maar dit is eigelijk om het zo maar te noemen de "engine". De rest van de code (waardoor hij zo groot is geworeden dus) staat hier nier bij maar dat is om als m1 bijvoorbeeld 2 is dat de pic dan bij de laaste digit een 2 neerzet. Dit heb ik dus bij alle variabelen moeten doen. Hierdoor is hij zo groot geworden
k.p.meinesz
Een schizofreen is nooit alleen!
dit is geen assembler taal
is je hex file zo giganties ?
als je mijn code bekijkt zie je een stukje dat heet checktime
deze doet exact wat jij ook doet in dit stukje code
maar bij mij past die klok toch echt gewoon in een 16f84a
bij het programeren in een andere taal dan de pic heeft ward de data vertaald naar assembler en van assembler naar hex hierbij ontstaat soms nogal wat onzin code omdat een directe vertaling niet mogelijk is hierdoor kan een simpel programma toch heel groot worden
[Bericht gewijzigd door k.p.meinesz op ]