Dvouintervalový blikač
Moderátor: Moderátoři
Dvouintervalový blikač
Zdravím, potřeboval bych radu, jak na obvod pro LEDku, která byl po připojení napětí 4x zablikala, pak 2s zůstala svítit a následně se celý cyklus opakoval, dokud by se nepřerušilo napájení.
Vím, že nejjednodušší bude řešit to přes nějaký μP (pokud možno Pascal nebo C)
Máte proto nějaké doporučení, jaký μP zvolit, případně schéma zapojení?
Obvod bude pro napájení 12 V.
Předem děkuji za rady.
Vím, že nejjednodušší bude řešit to přes nějaký μP (pokud možno Pascal nebo C)
Máte proto nějaké doporučení, jaký μP zvolit, případně schéma zapojení?
Obvod bude pro napájení 12 V.
Předem děkuji za rady.
Díky za rady...
Atlan: Nemáš nějaký příklad zapojení (schéma)?
hakamusai: Programování by právě nebyl problém, horší je to se sestavením programátoru..
Nějaké odkazy na funkční levný programátor (schéma)?
Bude stačit, když si sestavím tento?
Atlan: Nemáš nějaký příklad zapojení (schéma)?
hakamusai: Programování by právě nebyl problém, horší je to se sestavením programátoru..
Nějaké odkazy na funkční levný programátor (schéma)?
Bude stačit, když si sestavím tento?
Naposledy upravil(a) elektrom dne 14 črc 2012, 20:59, celkem upraveno 1 x.
Můžeš to zkusit.Já používám programátor presto,dneska už je forte http://www.asix.cz/prg_presto.htm
V mikropascalu jsou v helpu i schémata zapojení.
Schema třeba tohle:
V mikropascalu jsou v helpu i schémata zapojení.
Schema třeba tohle:
inšpirácia ku 555+4017
http://6502.org/users/dieter/mpd/mpd_3.htm
http://6502.org/users/dieter/mpd/mpd_3.htm
Tak jsem po delší odmlce zpět.
Mám následující problém po vložení PIC12F675 do patice se nic neděje, přitom chci, aby dioda blikala s 1 sekundovým intervalem.
Použivám kompilátor mikroPascal PRO.
(Frekvence oscilátoru v mP PRO nastavena na 40 Hz namísto 4 MHz z DataSheetu, tam je zjevně překlep)
Zde je schéma (použil jsem doporučené):
Na netu jsou pro tento konkrétní typ čipu příklady, ale jsou většinou v Assembleru, což není něco, čemu bych rozuměl.
Datasheet zde nebo zde (CZ).
Budu rád za jakékoliv rady.
Mám následující problém po vložení PIC12F675 do patice se nic neděje, přitom chci, aby dioda blikala s 1 sekundovým intervalem.
Použivám kompilátor mikroPascal PRO.
(Frekvence oscilátoru v mP PRO nastavena na 40 Hz namísto 4 MHz z DataSheetu, tam je zjevně překlep)
Zde je schéma (použil jsem doporučené):
Zjištění:program PIC12F675_LEDBLINK;
begin
TRISIO := 0;
{
CMCON := 7;
ANSEL := 0;
VRCON := 0;
ADCON0 := 0;
}
while 1 do
begin
GPIO.GP2 := 1;
Delay_ms(1000);
GPIO.GP2 := 0;
Delay_ms(1000);
end;
end.
- když přes (další) rezistor měřím napětí na GPIO5 (cca 2.22 V) a "sáhnu" si na onen rezistor, tak začně dioda blikat, jinak nic.
- zřejmě je třeba pozměnit prvotní nastavení před cyklem, protože ať nastavím TRISIO jakkoliv (:=%00010 (0) nebo %00011 (3)...) dělá to pořád to stejný - viz "zjištění výše"... Když to nenastavím vůbec, nedělá to nic
Na netu jsou pro tento konkrétní typ čipu příklady, ale jsou většinou v Assembleru, což není něco, čemu bych rozuměl.
Datasheet zde nebo zde (CZ).
Budu rád za jakékoliv rady.
Ze všeho nejradši mám ty, kteří něco píší aniž by si přečetli topic.
Každopádně se mi to podařilo zprovoznit!!!
Zásek byl hlavně v kompilátoru a jeho nastavení:
Je třeba nastavit interní oscilátor (Project/Edit Project.../Oscillator Selection - INTOSC oscillator) a frekvenci oscilátoru zde tedy nastavit zpět na 4 MHz (v datasheetu to mají správně, jen z počátku došlo k nepochopení)
Výsledný kód, kdyby ho někdo potřeboval (dioda bliká po 1 sekundě):
(Změna blikání už je jen věcí úpravy kódu ve while cyklu)
Každopádně se mi to podařilo zprovoznit!!!
Zásek byl hlavně v kompilátoru a jeho nastavení:
Je třeba nastavit interní oscilátor (Project/Edit Project.../Oscillator Selection - INTOSC oscillator) a frekvenci oscilátoru zde tedy nastavit zpět na 4 MHz (v datasheetu to mají správně, jen z počátku došlo k nepochopení)
Výsledný kód, kdyby ho někdo potřeboval (dioda bliká po 1 sekundě):
Kód: Vybrat vše
program PIC12F675_LEDBLINK;
begin
GPIO := 0x00;
TRISIO := 0x00; // all ports as output
ANSEL := 0x00; // turns off the ADC module
ADCON0 := 0x00; // turns off the A/D converter
CMCON := 0x07; // turns off the comparator
VRCON := 0x00; // turns off Vref for min current
while 1 do
begin
GPIO.GP2 := 1;
Delay_ms(1000);
GPIO.GP2 := 0;
Delay_ms(1000);
end;
end.
- frantajetel11
- Příspěvky: 1922
- Registrován: 13 lis 2008, 01:00
- Bydliště: Kladno