Zaslal: po prosinec 06 2010, 21:34 Předmět: Oscilátor
Zdravím, mám menší problém s PIC18F2550, konkrétně nastavení rychlosti. Nastavím vše na 20MHz oscilátor ale LEDky blikají jak splašené. Když přejdu zpět na interní oscilátor, vše bliká jak by mělo.
Založen: Jul 01, 2010 Příspěvky: 364 Bydliště: Bratislava
Zaslal: st prosinec 08 2010, 20:52 Předmět:
a čo takto vložíť program? blikať môžte softwarovo, hardwarovo a bohvie ešte ako . Takže takto sa dá jedine veštiť. Aj keď ja s pic neviem(a nejeden tu na fóre by mohol napísať, že neviem ani s atmelom ), ale každopádne dotaz je zle položený.
void main()
{
LEDTris1 = 0;//Set LED Pin data direction to OUTPUT
LEDPin1 = 1;//Set LED Pin
LEDTris2 = 0;//Set LED Pin data direction to OUTPUT
LEDPin2 = 1;//Set LED Pin
while(1)
{
LEDPin1 = ~LEDPin1;//Toggle LED Pin
Delay10KTCYx(25);//Delay 250K cycles (1 second at 1MHz since each instruction takes 4 cycles)
LEDPin2 = ~LEDPin1;//Toggle LED Pin
Delay10KTCYx(25);//Delay 250K cycles (1 second at 1MHz since each instruction takes 4 cycles)
}
}
soubor configuration.h není potřeba přikládat, jsou v něm jen configuration bits a ty upravuji manuálně v MPLAB
Založen: Jul 01, 2010 Příspěvky: 364 Bydliště: Bratislava
Zaslal: čt prosinec 09 2010, 16:54 Předmět:
meníte niekde v kóde definovanie frekvenciu procesoru? u atmelov je to príkaz pred kniznicou delay(ako som spomínal, pic nepoznám, ale ta filozofia bude rovnaká, ako už spomínal majsi)
kód:
#define F_CPU 16E6 // 16 MHZ rychlost uPC
#include <util/delay.h>
Vies vobec co ma robit tato funkcia???
Delay10KTCYx(25);
caka 10000*25 instrukcnych cyklov. Inak povedane sa 250000 krat vykona instrukcia NOP. To znamena ze cim rychlejsi das oscilator tym kratsie sa tych 10000*25 instrukcnych cyklov vykona. Konkretne toto
Delay10KTCYx(25); trva 0,05sekundy
rata sa to asi takto
1 TCY = 1/Fosc/4 = 1/(20 000 000/4) = 0.000 000 2s = 0.2us
pre 2.5s = 2.5/0.000 000 2 = 12 500 000 TCY
takze pre delay dlhy 2.5 sekundy pouzijes pri 20 MHz
Delay10KTCYx(1250);
Tak po vysvětlení funkce to funguje, ale je tu další problém, a to když chci připojit čip s bootloaderem k PC pomocí USB, PC rozpozná pouze že se něco připojilo, ale nechce dál spolupracovat. Ovladače mám (HID).
Nemůžete odesílat nové téma do tohoto fóra. Nemůžete odpovídat na témata v tomto fóru. Nemůžete upravovat své příspěvky v tomto fóru. Nemůžete mazat své příspěvky v tomto fóru. Nemůžete hlasovat v tomto fóru. Nemůžete připojovat soubory k příspěvkům Můžete stahovat a prohlížet přiložené soubory
Informace na portálu Elektro bastlírny jsou prezentovány za účelem vzdělání čtenářů a rozšíření zájmu o elektroniku. Autoři článků na serveru neberou žádnou zodpovědnost za škody vzniklé těmito zapojeními. Rovněž neberou žádnou odpovědnost za případnou újmu na zdraví vzniklou úrazem elektrickým proudem. Autoři a správci těchto stránek nepřejímají záruku za správnost zveřejněných materiálů. Předkládané informace a zapojení jsou zveřejněny bez ohledu na případné patenty třetích osob. Nároky na odškodnění na základě změn, chyb nebo vynechání jsou zásadně vyloučeny. Všechny registrované nebo jiné obchodní známky zde použité jsou majetkem jejich vlastníků. Uvedením nejsou zpochybněna z toho vyplývající vlastnická práva. Použití konstrukcí v rozporu se zákonem je přísně zakázáno. Vzhledem k tomu, že původ předkládaných materiálů nelze žádným způsobem dohledat, nelze je použít pro komerční účely! Tento nekomerční server nemá z uvedených zapojení či konstrukcí žádný zisk. Nezodpovídáme za pravost předkládaných materiálů třetími osobami a jejich původ. V případě, že zjistíte porušení autorského práva či jiné nesrovnalosti, kontaktujte administrátory na diskuzním fóru EB.