Aktyw Forum
Zarejestruj się na forum.ep.com.pl i zgłoś swój akces do Aktywu Forum. Jeśli jesteś już zarejestrowany wystarczy, że się zalogujesz.
Sprawdź punkty Zarejestruj sięAttiny 2313A zmiana stanu wysokiego na niski,duty cycle 50%
Moderatorzy:Jacek Bogusz, procesorowiec, r-mik, Moderatorzy
Mam kilka kodów w j.C które działają tak jak chcę tj. 64/64 sek niektóre zajmują 12 linijek.
Co do CD4060 ,ja mam to zrobione na CD4047 ,wystarczy dodać 1 opornik i 1 kondensator, duty 50 % i stanie niskim i wysokim 64 sek i działa wyśmienicie.
Chciałam zobaczyć na jaką pomoc i profesjonalizm mogę tutaj liczyć,a to widać ,słychać i czuć, na jaką.
Co do CD4060 ,ja mam to zrobione na CD4047 ,wystarczy dodać 1 opornik i 1 kondensator, duty 50 % i stanie niskim i wysokim 64 sek i działa wyśmienicie.
Chciałam zobaczyć na jaką pomoc i profesjonalizm mogę tutaj liczyć,a to widać ,słychać i czuć, na jaką.
Ostatnio zmieniony 1 sie 2018, o 10:50 przez Ania30, łącznie zmieniany 4 razy.
Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50%
Jeden mój kody w.j C który zajmują 12 linijek działa na wszystkie mikrokontrolery ,pozostałe także.
Ostatnio zmieniony 1 sie 2018, o 10:50 przez Ania30, łącznie zmieniany 2 razy.
Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50%
To nie ladnie tak publicznie powiedziec ze moja maskotka cuchnie Kobieta powinna to zrobic bardziej subtelnie np PW... czuć,..
Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50%
To po co pchać się w asm?Mam kilka kodów w j.C które działają tak jak chcę tj. 64/64 sek niektóre zajmóją 14 linijek.
Jeśli działa poprawnie to po co ulepszać dobre? Gdyby na sprzedaż, to rozumie, cel marketingowy "Mikroprocesorowy, precyzyjny...." w podtekście wyciągacz pieniędzy, jak np "Najprostszy sposób oszczędzania prądu elektrycznego zobacz tutaj >> Oszczędności -50%! + Zniżka 50%! Jedyne 219zł" a w środku kondensator z 1zł.Co do CD4060 ,ja mam to zrobione na CD4047 duty 50 % i stanie niskim 64 sek i działa wyśmienicie.
Jeśli do własnego użytku, to czy będą to 64 sekundy, 30, czy 2 minuty nie ma to znaczenia. Co do 50%, to odchyłka kilku % też nie będzie miała większego wpływu na nierównomierność korozji elektrod.
Co do przydatności urządzenia to już się wypowiedziałem. W smaku czysta a brudna woda z kranu, źródła, itp (czysta chemicznie woda nie ma smaku i nie przewodzi prądu, więc elektrolizer by nie działał) różni sie smakiem, to czy jest lepsza to sprawa gustu. Np większości ludziom, nie smakuje mleko prosto od krowy! Wolą to "uzdatniane" (odessanie tłuszczu zwierzęcego aby zrobić masło i dodanie roślinnego w to miejsce) z mleczarni. Są przyzwyczajeni to tego białego płynu (mlekiem tego nazwać nie można) od prawdziwego mleka, bo od zawsze pili to (nie)mleko.
Proponuje zrobić analizę chemiczną wody po potraktowaniu tym elektrolizerem. Także ślepe testy smaku przez miarodajną grupę osób. Mojej mamie Kaszpirowski pomagał do chwili gdy nie okazało się, że to oszust. Później pomagał Nowak (dziwne, że jedynie dobra woda nadająca się do energetyzowania co jakiś czas się zmieniała wraz z tym jak zmieniał się sponsor) do czasu, jak nie okazało się, że wszyscy bioenergoterapeuci to oszuści. Nadal jednak pojawiają się nowi "magicy", cudowne "oszczędzacze energii" "ulepszacie wody" i nowi naiwniacy dzięki czemu biznes się kręci.
Waracając do wody, proszę przefiltrować przez węgiel aktywny. Ma gorszy smak niż przed filtrowaniem? Tak (pomijam filtrowanie wody z sadzawki, piszę o wodzie pitnej). Dlaczego gorszy? Bo jest czysta, większość minerałów została odfiltrowana.
Mam kilka kodów w j.C które działają tak jak chcę tj. 64/64 sek niektóre zajmują 14 linijek.
Kod: Zaznacz cały
main(){
DDRB = 0xFF;
while(1){
PORTB = 0xF0;
_delay_ms(64000);
PORTB = 0x0F;
_delay_ms(64000);
}
}
Cóż, bioenergoterapeuta czy inny szarlatan/manipulator wmówi, że to bardzo duża różnica. Tyle, że 1ppm to "kosmos" podług tych ułamków.
Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50%
Czy tutaj ktoś potrafi w j.C,lub innym dogodnym , podać kod aby duty 50% było idealne,wypełnienie może być w przedziale od 60 do 70 sekund ,okres od 120 sek do 140 sekund.
Czy zastąpienie delay millis popraiwi dokładnośc duty 50%.
Czy zamiast ms,us,danie ns porawi duty 50 %
Czy zastąpienie delay millis popraiwi dokładnośc duty 50%.
Czy zamiast ms,us,danie ns porawi duty 50 %
Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50%
Użycie timera da dokładnie (w granicach możliwości oscylatora) 50%. Różnica pomiędzy delay a sprzętowym sterowaniem będzie widać tym bardziej im wyższa jest częstotliwość sygnału wyjściowego. Gdyby sygnał miał 20kHz już byłoby widać różnice, przy MHz bardzo duże. Przy 64 sekundach wyliczyłem błąd. Błąd jest o co najmniej rząd mniejszy niż "pływanie" oscylatora. Po co więc tak ogromna dokładność? Aby to miało sens, potrzebny jest precyzyjny oscylator, koszt ok 1500zł netto.Czy zastąpienie delay millis popraiwi dokładnośc duty 50%.
Skoro ma już być taka super precyzja jak przy obliczaniu położenia w systemie GALILEO to proponuje dać odbiornik GPS (ok 40zł) z anteną (kolejne 40zł). Z wyjścia PPS dzielnik przez 64 i memy ekstra precyzję za cenę poniżej 100zł. Jakiś uC też się przyda aby wyświetlić informację czy sygnał 1pps jest stabilny. Na uzyskanie stabilności GPS potrzebuje ok 20minut, chyba, ze już taka synchronizacja była a moduł ma podtrzymanie bateryjne. Wtedy trwa to ok 5 minut.
Podsumuję tak:
Jeśli klient chciałby abym zrobił mu precyzyjny generator to go zrobię, zapłaci za to słono a efekty będą takie same (czyli żadne) jak i na rozwiązaniu 100 razy tańszym.
Programy, które było już pokazane spełniają z nawiązką stawiane im zadanie. Niedokładność generowanego sygnału jest na poziomie promili promili. Wyliczone 0,000000015% to 0,00000015%%(promila).
Bardziej obrazowo, czy zarabiając 5000zł na miesiąc zmieni się pracę na inną bo zaoferują 5000,00000075zł?
Nawet jak w obliczeniach pomyliłem się o 1000 razy to 5000,00075zł. Sto tysięcy 5000,75zł.
Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50%
Nie wiem jaki masz problem Program ktory masz podany w dwuch wersjach dziala poprawnie Jesli tak bardzo Ci zalezy na 50-50% to wystarcz dopisac dwa rozkazy nop (jak proponuje r-mik) na poczatku main:
Tu masz wsad z dodanymi rozkazami nop
- main:
nop ;1 cycle
nop ;1 cycle
ldi r16, 0b1111_1110 ;1 cycle
out portb, r16 ;1 cycle
rcall del_s
ldi r16, 0b1111_1101 ;1 cycle
out portb, r16 ;1 cycle
rcall del_s
rjmp main ;2 cycles
Tu masz wsad z dodanymi rozkazami nop
- :020000020000FC
:1000000000C004E00EBF0FE50DBF0FEF07BB0000FF
:1000100000000EEF08BB04D00DEF08BB01D0F7CFF6
:10002000CAEF0000E8E5FEE93196F0F7CA95C9F796
:02003000089531
:00000001FF
Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50%
Właśnie o nop chciałem napisać:
main()
{
DDRB = 0xFF;
while(1)
{
nop();
nop();
PORTB = 0xF0;
_delay_ms(64000);
PORTB = 0x0F;
_delay_ms(64000); **
}
}
Tak to będzie wyglądać po skompilowaniu do asm:
DDRB = 0xFF;//==START
c7e: 8f ef ldi r24, 0xFF ; 255
c80: 84 b9 out 0x04, r24 ; 4
while(1)
{
nop();
nop();
PORTB = 0xF0;
c82: 50 ef ldi r21, 0xF0 ; 240
milliseconds can be achieved.
*/
void
_delay_loop_2(uint16_t __count)
{
__asm__ volatile (
c84: 28 ec ldi r18, 0xC8 ; 200
c86: 30 e0 ldi r19, 0x00 ; 0
_delay_ms(64000);
PORTB = 0x0F;
c88: 4f e0 ldi r20, 0x0F ; 15
DDRB = 0xFF;//==START
while(1)
{
nop();
c8a: 00 00 nop
nop();
c8c: 00 00 nop
PORTB = 0xF0;
c8e: 55 b9 out 0x05, r21 ; 5
c90: 8f ef ldi r24, 0xFF ; 255
c92: 9f ef ldi r25, 0xFF ; 255
c94: f9 01 movw r30, r18
c96: 31 97 sbiw r30, 0x01 ; 1
c98: f1 f7 brne .-4 ; 0xc96 <main+0x18>
__ticks = (uint16_t) (__ms * 10.0);
while(__ticks)
{
// wait 1/10 ms
_delay_loop_2(((F_CPU) / 4e3) / 10);
__ticks --;
c9a: 01 97 sbiw r24, 0x01 ; 1
__ticks = 1;
else if (__tmp > 65535)
{
// __ticks = requested delay in 1/10 ms
__ticks = (uint16_t) (__ms * 10.0);
while(__ticks)
c9c: d9 f7 brne .-10 ; 0xc94 <main+0x16>
_delay_ms(64000);
PORTB = 0x0F;
c9e: 45 b9 out 0x05, r20 ; 5
ca0: 8f ef ldi r24, 0xFF ; 255
ca2: 9f ef ldi r25, 0xFF ; 255
ca4: f9 01 movw r30, r18
ca6: 31 97 sbiw r30, 0x01 ; 1
ca8: f1 f7 brne .-4 ; 0xca6 <main+0x28>
{
// wait 1/10 ms
_delay_loop_2(((F_CPU) / 4e3) / 10);
__ticks --;
caa: 01 97 sbiw r24, 0x01 ; 1
__ticks = 1;
else if (__tmp > 65535)
{
// __ticks = requested delay in 1/10 ms
__ticks = (uint16_t) (__ms * 10.0);
while(__ticks)
cac: d9 f7 brne .-10 ; 0xca4 <main+0x26>
cae: ed cf rjmp .-38 ; 0xc8a <main+0xc>
ale dla zegara 14,567MHz a nie 1MHz.
Teraz proponuję policzyć jitter oscylatora jak się ona ma do tych 0,000000015%.
* bez znaczników CODE bo źle formatuje.
** Nie wiem czy przypadkiem nie powinno być:
_delay_ms(64000UL);
main()
{
DDRB = 0xFF;
while(1)
{
nop();
nop();
PORTB = 0xF0;
_delay_ms(64000);
PORTB = 0x0F;
_delay_ms(64000); **
}
}
Tak to będzie wyglądać po skompilowaniu do asm:
DDRB = 0xFF;//==START
c7e: 8f ef ldi r24, 0xFF ; 255
c80: 84 b9 out 0x04, r24 ; 4
while(1)
{
nop();
nop();
PORTB = 0xF0;
c82: 50 ef ldi r21, 0xF0 ; 240
milliseconds can be achieved.
*/
void
_delay_loop_2(uint16_t __count)
{
__asm__ volatile (
c84: 28 ec ldi r18, 0xC8 ; 200
c86: 30 e0 ldi r19, 0x00 ; 0
_delay_ms(64000);
PORTB = 0x0F;
c88: 4f e0 ldi r20, 0x0F ; 15
DDRB = 0xFF;//==START
while(1)
{
nop();
c8a: 00 00 nop
nop();
c8c: 00 00 nop
PORTB = 0xF0;
c8e: 55 b9 out 0x05, r21 ; 5
c90: 8f ef ldi r24, 0xFF ; 255
c92: 9f ef ldi r25, 0xFF ; 255
c94: f9 01 movw r30, r18
c96: 31 97 sbiw r30, 0x01 ; 1
c98: f1 f7 brne .-4 ; 0xc96 <main+0x18>
__ticks = (uint16_t) (__ms * 10.0);
while(__ticks)
{
// wait 1/10 ms
_delay_loop_2(((F_CPU) / 4e3) / 10);
__ticks --;
c9a: 01 97 sbiw r24, 0x01 ; 1
__ticks = 1;
else if (__tmp > 65535)
{
// __ticks = requested delay in 1/10 ms
__ticks = (uint16_t) (__ms * 10.0);
while(__ticks)
c9c: d9 f7 brne .-10 ; 0xc94 <main+0x16>
_delay_ms(64000);
PORTB = 0x0F;
c9e: 45 b9 out 0x05, r20 ; 5
ca0: 8f ef ldi r24, 0xFF ; 255
ca2: 9f ef ldi r25, 0xFF ; 255
ca4: f9 01 movw r30, r18
ca6: 31 97 sbiw r30, 0x01 ; 1
ca8: f1 f7 brne .-4 ; 0xca6 <main+0x28>
{
// wait 1/10 ms
_delay_loop_2(((F_CPU) / 4e3) / 10);
__ticks --;
caa: 01 97 sbiw r24, 0x01 ; 1
__ticks = 1;
else if (__tmp > 65535)
{
// __ticks = requested delay in 1/10 ms
__ticks = (uint16_t) (__ms * 10.0);
while(__ticks)
cac: d9 f7 brne .-10 ; 0xca4 <main+0x26>
cae: ed cf rjmp .-38 ; 0xc8a <main+0xc>
ale dla zegara 14,567MHz a nie 1MHz.
Teraz proponuję policzyć jitter oscylatora jak się ona ma do tych 0,000000015%.
* bez znaczników CODE bo źle formatuje.
** Nie wiem czy przypadkiem nie powinno być:
_delay_ms(64000UL);
Tym bardziej, że nadal nie ma schematu jak LED-y są podłączone. Jest schemat z X-ami, ale gdzie podłączone są X? Tego pewnie nawet autorka nie wie.
Trudno pomoc jak ktos mowi ze nie dziala ale nie mowi co i jak robi
Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50%
Oto program w j.C, na 12 linijek ,działa na wszystkich uC.
Czy można go tak przerobić aby nie był bez delay, a z millis.
Czy zamiast while(1),danie, for(;;){, poprawi coś ?
Kod wgrałam do uC i działa.
kod:
#include <avr/io.h>
#include <util/delay.h>
int main (void)
{
DDRB = (1<<PB1)|(1<<PB2);
PORTB|=(1<<PB1);
while(1)
{
PORTB ^= (1<<PB1)|(1<<PB2);
_delay_us(64000000);
}
}
Czy można go tak przerobić aby nie był bez delay, a z millis.
Czy zamiast while(1),danie, for(;;){, poprawi coś ?
Kod wgrałam do uC i działa.
kod:
#include <avr/io.h>
#include <util/delay.h>
int main (void)
{
DDRB = (1<<PB1)|(1<<PB2);
PORTB|=(1<<PB1);
while(1)
{
PORTB ^= (1<<PB1)|(1<<PB2);
_delay_us(64000000);
}
}
Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50%
Jeśli mowa o millis to Arduino. Millis spowoduje zwiększenie błędu 50% wypełnienia przebiegu. Jaki jest cel użycia millis? Będą wykonywane jeszcze jakieś zadania? Jeśli tak, to nie tylko millis (jego odpowiednik) ale także sprzętowe sterowanie wyjściem przez timer. Nie proponuję rozwiązania sterowania GPIO w przerwaniach, bo inne przerwania mogą zwiększyć jitter. Samo użycie przerwań zwiększy jitter. Wynika to choćby z tego, że w procedurę obsługi przerwania uC wejdzie po zakończeniu wykonywania bieżącego rozkazu, a rozkaz może wykonywać się 1 lub 2 cykle. No i te promile promili będą większe ale i tak kilka rzędów razy mniejsze niż jitter oscylatora.
PS
Do tej zabawki wymagana jest dokładność większa niż do określenia położenia obiektu w przestrzeni na podstawie sygnału radiowego (GPS, GALILEO)? Zanieczyszczacz wody ma aż takie wymagania? Oscylator za 1500zł? Pewnie platynowe przewody?
PS
Do tej zabawki wymagana jest dokładność większa niż do określenia położenia obiektu w przestrzeni na podstawie sygnału radiowego (GPS, GALILEO)? Zanieczyszczacz wody ma aż takie wymagania? Oscylator za 1500zł? Pewnie platynowe przewody?
Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50%
... dioda LED czerwona (anoda do portu PB0, katoda do PB1)
dioda LED zielona (katoda podłączona do PB0, anoda do PB1) ...
Moze problem jest ze masz podpiete diody inaczej niz opisane w programiePORTB ^= (1<<PB1)|(1<<PB2);
Tu masz program na atmega8a piny na porcie B zmieniaja sie na przemian
- .nolist
.include "m8adef.inc"
.list
.cseg
.equ fosc = 1 ;czestotliwosc kwarcu w MHz
.org 0
rjmp ResetProcessor
ResetProcessor:
ldi r16, high(RAMEND) ; init stack pointer
out SPH, r16
ldi r16, low (RAMEND) ; init stack pointer
out SPL, r16
ldi r16, 0xff
out ddrb, r16
main:
nop ;1 cycle
nop ;1 cycle
ldi r16, 0b1010_1010 ;1 cycle
out portb, r16 ;1 cycle
rcall del_s
ldi r16, 0b0101_0101 ;1 cycle
out portb, r16 ;1 cycle
rcall del_s
rjmp main ;2 cycles
del_s:
ldi R28, 250
del_ss:
nop
del_100ms:
ldi r30, low (-100000*fosc/4)
ldi r31, high(-100000*fosc/4) ;opoznienie 100ms
delay:
adiw r30, 1 ;dwubajtowe dodawanie
brcc delay ;skok gdy nie nastapilo przepelnienie pary R31R30
dec r28
brne del_ss
ret
.exit
- :020000020000FC
:1000000000C004E00EBF0FE50DBF0FEF07BB0000FF
:1000100000000AEA08BB04D005E508BB01D0F7CF11
:10002000CAEF0000E8E5FEE93196F0F7CA95C9F796
:02003000089531
:00000001FF
Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50%
Tylko nie mam licznika czasu za 100000zł aby sprawdzić jaki jest jitterKod wgrałam do uC i działa.
Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50%
A policzyłaś jaki jest jitter oscylatora? Jakie spowoduje odchyłki? Czy walka przy czasie 64sekundy czyli 64e6 (64000000) o te 2us ma sens?Tylko nie mam licznika czasu za 100000zł aby sprawdzić jaki jest jitterKod wgrałam do uC i działa.
Chcesz użyć millis, bo pewnie słyszałaś, że millis jest lepsze od delay. Millis dotyczy Arduinowców a ten temat nie dotyczy Arduino. Fakt, że delay (czy w Arduino czy gdzie indziej) blokuje program, umiejętnie użyte millis (lub podobnych mechanizmów) nie. Pytanie. Poza sterowaniem elektrodami (ledami) co jeszcze będzie robił program? Wysyłał coś po Wi-Fi, GSM? Może na wyświetlacz albo USB?
Millis lub funkcja alternatywna zwiększy jitter, z którym tak zaparcie walczysz. Gdzie więc sens? Gdzie logika?
Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50%
Brawo ACeK !!!!!!
Wgrałam pik hex, do Atmega 8A,na pinie PB1 i PB2 działa !!!!!!!,jest zmiana polaryzacji co 64 sekund tak jak chciałam.
Wielkie dzięki.
Tylko jestem ciekawa jak z tą dokładnością 50%/50% jest.
Czy jak w programie dać tylko jedną parę pin np.PB1 i PB2 ,a pozostałe piny B aby ich nie było,czy to zwiększy dokładność 50%/50%
Wgrałam pik hex, do Atmega 8A,na pinie PB1 i PB2 działa !!!!!!!,jest zmiana polaryzacji co 64 sekund tak jak chciałam.
Wielkie dzięki.
Tylko jestem ciekawa jak z tą dokładnością 50%/50% jest.
Czy jak w programie dać tylko jedną parę pin np.PB1 i PB2 ,a pozostałe piny B aby ich nie było,czy to zwiększy dokładność 50%/50%
Ostatnio zmieniony 1 sie 2018, o 14:23 przez Ania30, łącznie zmieniany 1 raz.
Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50%
Powtorka z rozrywki Program do ATMEGA8A-16PU DIP28 zmiana biegunów zasilania
Nowy program mam nadzieje ostatni z happy endem
W tej chwili opoznienie jest troche wieksze niz 25 sekund. Zeby bylo 64 nalezy zmienic liczbe 250 na 160 Oraz dodac extra rcall del_s
Nowy program mam nadzieje ostatni z happy endem
W tej chwili opoznienie jest troche wieksze niz 25 sekund. Zeby bylo 64 nalezy zmienic liczbe 250 na 160 Oraz dodac extra rcall del_s
- .nolist
.include "m8adef.inc"
.list
.cseg
.equ fosc = 1 ;czestotliwosc kwarcu w MHz
.org 0
rjmp ResetProcessor
ResetProcessor:
ldi r16, high(RAMEND) ; init stack pointer
out SPH, r16
ldi r16, low (RAMEND) ; init stack pointer
out SPL, r16
ldi r16, 0xff
out ddrb, r16
main:
nop ;1 cycle
nop ;1 cycle
ldi r16, 0b1010_1010 ;1 cycle
out portb, r16 ;1 cycle
rcall del_s
rcall del_s
rcall del_s
rcall del_s
ldi r16, 0b0101_0101 ;1 cycle
out portb, r16 ;1 cycle
rcall del_s
rcall del_s
rcall del_s
rcall del_s
rjmp main ;2 cycles
del_s:
ldi R28, 160
del_ss:
nop
del_100ms:
ldi r30, low (-100000*fosc/4)
ldi r31, high(-100000*fosc/4) ;opoznienie 100ms
delay:
adiw r30, 1 ;dwubajtowe dodawanie
brcc delay ;skok gdy nie nastapilo przepelnienie pary R31R30
dec r28
brne del_ss
ret
.exit
- :020000020000FC
:1000000000C004E00EBF0FE50DBF0FEF07BB0000FF
:1000100000000AEA08BB0AD009D008D007D005E5DD
:1000200008BB04D003D002D001D0F1CFC0EA000059
:0E003000E8E5FEE93196F0F7CA95C9F70895A4
:00000001FF
Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50%
Dziękuję nawzajem.
Czy jak w programie dać tylko jedną parę pin np.PB1 i PB2 ,a pozostałe piny B aby ich nie było,czy to zwiększy dokładność 50%/50%
Czy jak w programie dać tylko jedną parę pin np.PB1 i PB2 ,a pozostałe piny B aby ich nie było,czy to zwiększy dokładność 50%/50%
Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50%
Czym jest taktowany uC? Generator RC? Kwarc? Oscylator?Wgrałam pik hex, do Atmega 8A,na pinie PB1 i PB2 działa !!!!!!!,jest zmiana polaryzacji co 64 sekund tak jak chciałam.
Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50%
AVR Studio 5.1 przy kompilacji daje z automatu 1 MHz,chyba ,tak myślę.
Jest sam uC bez żadnego dodatku,tj.bez kwarcu,RC.,bez niczego,goły.
Jest sam uC bez żadnego dodatku,tj.bez kwarcu,RC.,bez niczego,goły.
Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50%
Bez znaczenia Teraz masz na 100% 50-50%... Czy jak w programie dać tylko jedną parę pin np.PB1 i PB2 ,a pozostałe piny B aby ich nie było,czy to zwiększy dokładność 50%/50%
Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50%
Skoro tak, to generator RC.AVR Studio 5.1 przy kompilacji daje z automatu 1 MHz,chyba ,tak myślę.
Jest sam uC bez żadnego dodatku,tj.bez kwarcu,RC.,bez niczego,goły.
Proponuje spojrzeć na obrazek https://obrazki.elektroda.pl/2937832200_1363806891.gif
pochodzi z https://www.elektroda.pl/rtvforum/viewt ... 9#12088759
i zastanowić się, czy walka o o te ppm miała sens skoro używany jest generator RC.
Kto jest online
Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 18 gości