rozdil mezi PIC 16F...a PIC12F

Diskuze a poradna o programátorech a programování různých obvodů

Moderátor: Moderátoři

Odpovědět
Zpráva
Autor
Uživatelský avatar
goliasinek
Příspěvky: 69
Registrován: 25 lis 2008, 01:00

rozdil mezi PIC 16F...a PIC12F

#1 Příspěvek od goliasinek »

Dobrý den,chci si postavit osciloskop podle tohoto návodu. http://pandatron.cz/?484&digitalni_osciloskop_k_pc

Ale ten pic PIC12F675 nemam ale zkusil bych tam dat PIC16F676???aLE NEJDRIVE CHCI VEDET V CEM SE LISI ANEBO JESTLI BYCH HO VLASTNE MOHL POUZIT.

Uživatelský avatar
petus
Příspěvky: 594
Registrován: 12 led 2009, 01:00
Bydliště: Pelhřimov
Kontaktovat uživatele:

#2 Příspěvek od petus »

Dělám sice Atmel ale není náhodou rozdíl v délce slova?A nebo si to najdi v datašitu.Strejda googl poradí.
Pokud něco chcete a neodpovídám,pošlete SZ :)
https://chiptron.cz - novinky ze světa elektro (Arduino, Raspberry Pi, ESP8266, STM32, ESP32...)
Peťus

Uživatelský avatar
eljaro
Příspěvky: 441
Registrován: 03 pro 2004, 01:00
Bydliště: Krnov
Kontaktovat uživatele:

#3 Příspěvek od eljaro »

ano rozdíl je v délce kodových instrukcí - aneb vzhledem k tomu že máš jen hex soubor do procesoru nutno pužít i originál procesor ! mimo to jede to jen do 7,5kHz to už můžeš rovnou požít zvukovku ta jede výše !

Uživatelský avatar
jankop
Příspěvky: 679
Registrován: 04 dub 2007, 02:00
Kontaktovat uživatele:

#4 Příspěvek od jankop »

eljaro neví, co mluví, žádný rozdíl v délce kódových instrukcí neexistuje. Ty procesory jsou prakticky shodné, 16f676 má šest bitů brány C navíc. Bohužel je tam odchylka v jednom registru, který se jmenuje ANSEL. A pouze dík tomu by program portovaný z 12f675 na 16f676 pravděpodobně nefungoval. Ve zdrojovém textu by nejspíš stačilo změnit jeden dva bajty, ale dělat to v hex kódu je nejspíš pracnější než si sehnat běžný 12f675.

Uživatelský avatar
eljaro
Příspěvky: 441
Registrován: 03 pro 2004, 01:00
Bydliště: Krnov
Kontaktovat uživatele:

#5 Příspěvek od eljaro »

omlouvám se jankop má pravdu , asi to fungovat ale stejně nebude protože zrovna 675 má v jednom registru sloučeny výběrové bity a taktovací zrovna od AD převodníku kdež to v tom druhém obvodu jsou solo každy v jiném registru . když už tak koupit 675 stojí pár kaček a bez zdrojáku to upravit nepude nebo jen moc pracně

Uživatelský avatar
petus
Příspěvky: 594
Registrován: 12 led 2009, 01:00
Bydliště: Pelhřimov
Kontaktovat uživatele:

#6 Příspěvek od petus »

Pokud jsem to dobře pochopil tak to je rozdíl mezi 675 a 6 ale rozdíl mezi 12F... a 16F...?
Pokud něco chcete a neodpovídám,pošlete SZ :)
https://chiptron.cz - novinky ze světa elektro (Arduino, Raspberry Pi, ESP8266, STM32, ESP32...)
Peťus

Uživatelský avatar
eljaro
Příspěvky: 441
Registrován: 03 pro 2004, 01:00
Bydliště: Krnov
Kontaktovat uživatele:

#7 Příspěvek od eljaro »

rozdíl není mají sice označení 12F675 a 16Fxxx ale oba mají 14bit instrukční slovo ! Ta 16f ma několik registrů na víc - větší výbavu - výrobce dodržuje kompabilitu tudíž na stejných adresách jsou stejné registry ! ale jak jsem psal ta varinta 12F je hospodařeno usporně a tudíž zrovna regestry pro taktování a adresování AD převodníku byly sloučeny v jeden registr ! Tudíž program s AD převodníkem v akci není použitelny mimo procesor pro který je vykompilován! ono dotaz je to dobrý ale trocha samostudia by asi neškodila ?! :roll:

Uživatelský avatar
jankop
Příspěvky: 679
Registrován: 04 dub 2007, 02:00
Kontaktovat uživatele:

#8 Příspěvek od jankop »

Já to trochu rozšířím. Ten problém existuje i u programů, které A/D převodník nepoužijí. Tato řada procesorů má totiž jednu v praxi problematickou vlastnost. Vstupy, které mají volitelné analogové funkce, jako A/D nebo komparátor, jsou defaultně po resetu nastaveny právě jako analogové. Dokud je programově nepřepnu, tak je digitální funkce těchto pinů velmi specifická. Na to narazí skoro každý začínající programátor.

Uživatelský avatar
petus
Příspěvky: 594
Registrován: 12 led 2009, 01:00
Bydliště: Pelhřimov
Kontaktovat uživatele:

#9 Příspěvek od petus »

Jo trochu blbej dotaz. Jsem začátečník a dělám jak jsem psal Atmel ale když jsme narazili na ten problém tak jsem se chtěl poptat jak to teda je.Dík za vysvětlení.
Pokud něco chcete a neodpovídám,pošlete SZ :)
https://chiptron.cz - novinky ze světa elektro (Arduino, Raspberry Pi, ESP8266, STM32, ESP32...)
Peťus

Uživatelský avatar
goliasinek
Příspěvky: 69
Registrován: 25 lis 2008, 01:00

#10 Příspěvek od goliasinek »

taky dekuji moc za vysvetleni.Takže urcite musim sehnat ten ten 12F....

Odpovědět

Zpět na „Programování PIC, ATMEL, EEPROM a dalších obvodů“