|
|
Elektronika.lt portalo forumas
Jūs esate neprisijungęs lankytojas. Norint dalyvauti diskusijose, būtina užsiregistruoti ir prisijungti prie forumo.
Prisijungę galėsite kurti naujas temas, atsakyti į kitų užduotus klausimus, balsuoti forumo apklausose.
Administracija pasilieka teisę pašalinti pasisakymus bei dalyvius,
kurie nesilaiko forumo taisyklių.
Pastebėjus nusižengimus, prašome pranešti.
Dabar yra 2025 01 10, 00:46. Visos datos yra GMT + 2 valandos.
|
|
|
|
Forumas » Mikrovaldikliai » reikia pagalbos: nzn ar kodas blogas ar dar kas bet..
|
Jūs negalite rašyti naujų pranešimų į šį forumą Jūs negalite atsakinėti į pranešimus šiame forume Jūs negalite redaguoti savo pranešimų šiame forume Jūs negalite ištrinti savo pranešimų šiame forume Jūs negalite dalyvauti apklausose šiame forume
|
|
|
|
|
reikia pagalbos: nzn ar kodas blogas ar dar kas bet.. |
Parašytas: 2007 01 24, 09:27 |
|
|
|
tai va programatoriu turiu. su AVR studio parasau programa, padarau *.hes faila, su ponyprogu irasau bet nieko nesigauna. LED'ai net net nemirkteli
Kodas: |
#include <inttypes.h>
#include <avr/io.h>
#include <avr/interrupt.h>
#include <avr/sleep.h>
void ioinit()
{
DDRC = 255;
DDRD = 255;
}
int main()
{
int j = 0;
ioinit();
while (10)
{
PORTC = 0;
PORTD = 255;
j=0;
while (j < 10000) j++;
PORTC = 255;
PORTD = 0;
int j = 0;
while (j < 10000) j++;
}
return 0;
}
|
gal ka patarsit kur gedimu ieskoti?
kodas irasomas tvarkingai atrodo, nes ka irasau ta nuskaites randu. tiesa ka ir akip elgtis su tais secutity bitais??? gal ten kas blogo yra??? |
|
|
|
|
|
|
reikia pagalbos: nzn ar kodas blogas ar dar kas bet.. |
Parašytas: 2007 01 24, 13:52 |
|
|
|
jau issiaiskinau. resetas buvo pajungtas kaip I/O pin'as ir gel to nepradedavo programos bet dabar viskas OK. reikia tik schema tadetinti kiek tai
tiesa gal kas galite tuos security bitus paaiskinti ka kas ten reiskia??? PonyProg'e. |
|
|
|
|
|
reikia pagalbos: nzn ar kodas blogas ar dar kas bet.. |
Parašytas: 2007 01 25, 10:01 |
|
|
|
Kaskaip labai jau didele programa tam mirksiukui
Jei tai butu ant PIC tai atrodytu taip:
Void main()
{
pr:
output_portc()=255;
output_portd()=0;
delay_ms(100);
output_portc()=0;
output_portd()=255;
delay_ms(100);
goto pr;
}
ir dar zmones kalba kad AVR lengviau programuoti |
|
|
|
|
|
reikia pagalbos: nzn ar kodas blogas ar dar kas bet.. |
Parašytas: 2007 01 25, 21:27 |
|
|
|
kad ten mirksiukas tai tik formalumas o ne tikslas. jei tai butu tixlas galima butu rasyti
Kodas: |
#include <inttypes.h>
#include <avr/io.h>
void ioinit()
{
DDRC = 255;
DDRD = 255;
}
int main()
{
ioinit();
while (1)
{
PORTC = 0;
PORTD = 255;
while (j < 10000) j++;
PORTC = 255;
PORTD = 0;
while (j < 10000) j++;
}
return 0;
}
|
tiesa cia jau valdomi do portai, beto nenaudoju dar delay o tiesiog apkraunu uC bereikalingu dsarbu kad palauktu.
bet cia ne apie tai kalba... |
|
|
|
|
|
|
reikia pagalbos: nzn ar kodas blogas ar dar kas bet.. |
Parašytas: 2007 01 25, 21:36 |
|
|
|
hmm, rašant programą geriau naudoti kuo mažiau while ar kartojimo funkcijų, nes galima susimaišyt tada labai lengvai... Na aišku, kai reikia, tada reikia, bet jei visas šitas dalykas nėra būtinas, tada nėra būtina naudoti while, geriau rašyt be jo.
P.S. čia tik taip pastebėjimas. |
|
_________________ nepamirškit, klysti žmogiška
privatas - privatiems klausimams
arch linux |
|
|
|
|
reikia pagalbos: nzn ar kodas blogas ar dar kas bet.. |
Parašytas: 2007 01 25, 23:56 |
|
|
|
tam yra programavimo kultura, kad lengviau pastebetum sumaisymus ir kt. del viso to zn tik dabar ma ne while galvoj buvo nes norejautik paleisti uC ir gryzti ramus prie mokslu dar ben savaitei. tiesa kodel mas nu AVR studio prie ciklo for gali kabintis, dabar nepamenu kokia tixliai klaida meta tik zn kad joje yra skaicius 99 |
|
|
|
|
|
reikia pagalbos: nzn ar kodas blogas ar dar kas bet.. |
Parašytas: 2007 01 28, 14:36 |
|
|
|
zvasas rašo: |
Kaskaip labai jau didele programa tam mirksiukui
Jei tai butu ant PIC tai atrodytu taip:
Void main()
{
pr:
output_portc()=255;
output_portd()=0;
delay_ms(100);
output_portc()=0;
output_portd()=255;
delay_ms(100);
goto pr;
}
ir dar zmones kalba kad AVR lengviau programuoti |
Lygiai tas pats veiks ir ant AVR. |
|
|
|
|
|
|
reikia pagalbos: nzn ar kodas blogas ar dar kas bet.. |
Parašytas: 2011 11 24, 10:41 |
|
|
|
Prikeliu tema nes nenoriu kurt naujos. Skubiai reikia veikiancio kodo signalu generavimui su attiny2313 (taspats kas ir led mirksiukui). Koks portas bus naudojamas nesvarbu ir koks kvarco daznis jusu pasirinkimui palieku (vidini kvarca naudosiu). Maks daznis kuri naudosiu signalo generavimui bus 500Hz. Dazni noreciau keisti pats perprogramuodamas, arba jei jums nesunku ideti mygtuka kad ties paspaudimu padidintu dazni 6 ar 9 Hz. Naudoju CodeVisionAVR, galiu ir AVR Studio 5. Viskas yra reikia tik kodo. Kalibruosiu spidometra, tad prireike signalo generatoriaus. Aciu is anksto! |
|
|
|
|
|
|
reikia pagalbos: nzn ar kodas blogas ar dar kas bet.. |
Parašytas: 2011 11 24, 13:28 |
|
|
|
Cheburator rašo: |
Prikeliu tema nes nenoriu kurt naujos. Skubiai reikia veikiancio kodo signalu generavimui su attiny2313 (taspats kas ir led mirksiukui). Koks portas bus naudojamas nesvarbu ir koks kvarco daznis jusu pasirinkimui palieku (vidini kvarca naudosiu). Maks daznis kuri naudosiu signalo generavimui bus 500Hz. Dazni noreciau keisti pats perprogramuodamas, arba jei jums nesunku ideti mygtuka kad ties paspaudimu padidintu dazni 6 ar 9 Hz. Naudoju CodeVisionAVR, galiu ir AVR Studio 5. Viskas yra reikia tik kodo. Kalibruosiu spidometra, tad prireike signalo generatoriaus. Aciu is anksto! |
Kiek mokesi? Derybas nuo kokiu 500Lt apsimoketu pradet manau. |
|
|
|
|
|
|
|
reikia pagalbos: nzn ar kodas blogas ar dar kas bet.. |
Parašytas: 2011 12 29, 02:32 |
|
|
|
Erm.... tingejau kurti nauja tema tai valanda laiko kapsciau senus postus nieko tikslaus neradau tai cia paklausiu.....
ATtinny13 procesoriui nelabai veikia kodas arba veikia tik as testuoti nesugebu.
Kodas: |
/* -----------------------------------------------------------------------
* Title: Led blinking reaction on pressed switch (I/O)
* Hardware: ATtiny13
* Software: AVR Studio
-----------------------------------------------------------------------*/
#define F_CPU 9600000UL // Aprasome procesoriaus dazni, naudoti pries delay.h
#include <avr/io.h>
#include <util/delay.h>
#define WIRE PB0 // Apsirasome WIRE komunikavimo isvada PB0 isvade
int i, a, b, c; // 8 bits integer
int main(void)
{
DDRB |= (1 << WIRE); // Nustatome isejimo krypti WIRE isvade
ADCSRA |= (1 << ADEN)| // Aktyvuojam ADC
(1 << ADPS2)| // Nustatome ADC dalikli 64 (F_CPU / 64 = 150Khz)
(1 << ADPS1); // ^
ADCSRA &= ~(1 << ADPS0); // ^
ADMUX |= (1 << ADLAR); // Nurodome ADC Reiksmes saugojimo trarka
PORTB &= ~(1 << WIRE); // Nustatome 0 WIRE isvade
for (;;) // Endless loop
{
//*****Vykdomas ADC0 nuskaitymas ir rezultato issiuntimas WIRE komunikacijos kanalu
ADMUX &= ~(1 << MUX0); // Nustatome ADC iejima ADC0 (BP 5)
ADMUX &= ~(1 << MUX1); // ^
ADCSRA |= (1 << ADEN)| // Aktyvuojamas ADC
(1 << ADSC); // Pradedama ADC konvertacija
while (ADCSRA & (1 << ADSC)); // Laukiama kol baigsis konvertacija
ADCSRA |= (1 << ADSC); // Pradedama ADC konvertacija
while (ADCSRA & (1 << ADSC)); // Laukiama kol baigsis konvertacija
ADCSRA &= ~(1<<ADEN); // Isjungiamas ADC
PORTB &= ~(1 << WIRE); // WIRE komunikavimo isvadu sionciamas "0"
_delay_ms(45); // ^
PORTB |= (1 << WIRE); // ^
_delay_us(15); // ^
PORTB &= ~(1 << WIRE); // ^
PORTB &= ~(1 << WIRE); // WIRE komunikavimo isvadu sionciamas "0"
_delay_ms(45); // ^
PORTB |= (1 << WIRE); // ^
_delay_us(15); // ^
PORTB &= ~(1 << WIRE); // ^
for (i = 7 ; i <= 0 ; i--)
{
if (ADCH & (1 << i))
{
PORTB &= ~(1 << WIRE); // WIRE komunikavimo isvadu sionciamas "1"
_delay_ms(15); // ^
PORTB |= (1 << WIRE); // ^
_delay_us(45); // ^
PORTB &= ~(1 << WIRE); // ^
} else
{
PORTB &= ~(1 << WIRE); // WIRE komunikavimo isvadu sionciamas "0"
_delay_ms(45); // ^
PORTB |= (1 << WIRE); // ^
_delay_us(15); // ^
PORTB &= ~(1 << WIRE); // ^
}
}
//*****Vykdomas ADC1 nuskaitymas ir rezultato issiuntimas WIRE komunikacijos kanalu
ADMUX |= (1 << MUX0); // Nustatome ADC iejima ADC1 (BP 2)
ADMUX &= ~(1 << MUX1); // ^
ADCSRA |= (1 << ADEN)| // Aktyvuojamas ADC
(1 << ADSC); // Pradedama ADC konvertacija
while (ADCSRA & (1 << ADSC)); // Laukiama kol baigsis konvertacija
ADCSRA |= (1 << ADSC); // Pradedama ADC konvertacija
while (ADCSRA & (1 << ADSC)); // Laukiama kol baigsis konvertacija
ADCSRA &= ~(1<<ADEN); // Isjungiamas ADC
PORTB &= ~(1 << WIRE); // WIRE komunikavimo isvadu sionciamas "0"
_delay_ms(45); // ^
PORTB |= (1 << WIRE); // ^
_delay_us(15); // ^
PORTB &= ~(1 << WIRE); // ^
PORTB &= ~(1 << WIRE); // WIRE komunikavimo isvadu sionciamas "1"
_delay_ms(15); // ^
PORTB |= (1 << WIRE); // ^
_delay_us(45); // ^
PORTB &= ~(1 << WIRE); // ^
for (i = 7 ; i <= 0 ; i--)
{
if (ADCH & (1 << i))
{
PORTB &= ~(1 << WIRE); // WIRE komunikavimo isvadu sionciamas "1"
_delay_ms(15); // ^
PORTB |= (1 << WIRE); // ^
_delay_us(45); // ^
PORTB &= ~(1 << WIRE); // ^
} else
{
PORTB &= ~(1 << WIRE); // WIRE komunikavimo isvadu sionciamas "0"
_delay_ms(45); // ^
PORTB |= (1 << WIRE); // ^
_delay_us(15); // ^
PORTB &= ~(1 << WIRE); // ^
}
}
//*****Vykdomas ADC2 nuskaitymas ir rezultato issiuntimas WIRE komunikacijos kanalu
ADMUX |= (1 << MUX0); // Nustatome ADC iejima ADC2 (BP 4)
ADMUX &= ~(1 << MUX1); // ^
ADCSRA |= (1 << ADEN)| // Aktyvuojamas ADC
(1 << ADSC); // Pradedama ADC konvertacija
while (ADCSRA & (1 << ADSC)); // Laukiama kol baigsis konvertacija
ADCSRA |= (1 << ADSC); // Pradedama ADC konvertacija
while (ADCSRA & (1 << ADSC)); // Laukiama kol baigsis konvertacija
ADCSRA &= ~(1<<ADEN); // Isjungiamas ADC
PORTB &= ~(1 << WIRE); // WIRE komunikavimo isvadu sionciamas "1"
_delay_ms(15); // ^
PORTB |= (1 << WIRE); // ^
_delay_us(45); // ^
PORTB &= ~(1 << WIRE); // ^
PORTB &= ~(1 << WIRE); // WIRE komunikavimo isvadu sionciamas "0"
_delay_ms(45); // ^
PORTB |= (1 << WIRE); // ^
_delay_us(15); // ^
PORTB &= ~(1 << WIRE); // ^
for (i = 7 ; i <= 0 ; i--)
{
if (ADCH & (1 << i))
{
PORTB &= ~(1 << WIRE); // WIRE komunikavimo isvadu sionciamas "1"
_delay_ms(15); // ^
PORTB |= (1 << WIRE); // ^
_delay_us(45); // ^
PORTB &= ~(1 << WIRE); // ^
} else
{
PORTB &= ~(1 << WIRE); // WIRE komunikavimo isvadu sionciamas "0"
_delay_ms(45); // ^
PORTB |= (1 << WIRE); // ^
_delay_us(15); // ^
PORTB &= ~(1 << WIRE); // ^
}
}
//*****Vykdomas ADC3 nuskaitymas ir rezultato issiuntimas WIRE komunikacijos kanalu
ADMUX |= (1 << MUX0); // Nustatome ADC iejima ADC3 (BP 3)
ADMUX |= (1 << MUX1); // ^
ADCSRA |= (1 << ADEN)| // Aktyvuojamas ADC
(1 << ADSC); // Pradedama ADC konvertacija
while (ADCSRA & (1 << ADSC)); // Laukiama kol baigsis konvertacija
ADCSRA |= (1 << ADSC); // Pradedama ADC konvertacija
while (ADCSRA & (1 << ADSC)); // Laukiama kol baigsis konvertacija
ADCSRA &= ~(1<<ADEN); // Isjungiamas ADC
PORTB &= ~(1 << WIRE); // WIRE komunikavimo isvadu sionciamas "1"
_delay_ms(15); // ^
PORTB |= (1 << WIRE); // ^
_delay_us(45); // ^
PORTB &= ~(1 << WIRE); // ^
PORTB &= ~(1 << WIRE); // WIRE komunikavimo isvadu sionciamas "1"
_delay_ms(15); // ^
PORTB |= (1 << WIRE); // ^
_delay_us(45); // ^
PORTB &= ~(1 << WIRE); // ^
for (i = 7 ; i <= 0 ; i--)
{
if (ADCH & (1 << i))
{
PORTB &= ~(1 << WIRE); // WIRE komunikavimo isvadu sionciamas "1"
_delay_ms(15); // ^
PORTB |= (1 << WIRE); // ^
_delay_us(45); // ^
PORTB &= ~(1 << WIRE); // ^
} else
{
PORTB &= ~(1 << WIRE); // WIRE komunikavimo isvadu sionciamas "0"
_delay_ms(45); // ^
PORTB |= (1 << WIRE); // ^
_delay_us(15); // ^
PORTB &= ~(1 << WIRE); // ^
}
}
}
return 0;
}
|
bandziau kazkiek tracinti su AVR Studio, bet labai daug ka ten persokineja, tada paleidau sukompiliuota HEX i zemiau pateikta proteus simuliacija, bet negaunu jokio rezultato WIRE linijoje.
veliau. tikuosi snd normaliu zmonems laiku pabaigsiu ir imesiu U2 koda taip pat.
Visos sitos sistemeles tikslas labai paprastas. Nuskaityti iki 4x ADC, gautas 8bit raiskos reiksmes persiusti "Wire" laidu, realybeje tai bus siustuvas>imtuvas, U2 tai is sifruoti ir pavesti analogine reiksme PWM pagalba, bei isskirti apatini 50% siusti vienu kanalu, virsutini - kitu. U2 gales priimti ir iskoduoti iki 2 is iki 4 ADC verciu. panaudojimas RC masineliu ir pns. valdymui.
Siam momentui klausimas yra ar U1 tinny kodas yra teisingas ir tiesiog kazkas netaip su testavimu ar yra kazkokiu klaidu.
is anksto dekui |
|
|
|
|
|
|
|
|
|
|
Google paieška forume |
|
|
Naujos temos forume |
|
|
FS25 Tractors
Farming Simulator 25 Mods,
FS25 Maps,
FS25 Trucks |
|
ETS2 Mods
ETS2 Trucks,
ETS2 Bus,
Euro Truck Simulator 2 Mods
|
|
FS22 Tractors
Farming Simulator 22 Mods,
FS22 Maps,
FS25 Mods |
|
VAT calculator
VAT number check,
What is VAT,
How much is VAT |
|
LEGO
Mänguköök,
mudelautod,
nukuvanker |
|
Thermal monocular
Thermal vision camera,
Night vision ar scope,
Night vision spotting scope |
|
FS25 Mods
FS25 Harvesters,
FS25 Tractors Mods,
FS25 Maps Mods |
|
Dantų protezavimas
All on 4 implantai,
Endodontija mikroskopu,
Dantų implantacija |
|
FS25 Mods
FS25 Maps,
FS25 Cheats,
FS25 Install Mods |
|
GTA 6 Weapons
GTA 6 Characters,
GTA 6 Map,
GTA 6 Vehicles |
|
FS25 Mods
Farming Simulator 25 Mods,
FS25 Maps |
|
ATS Trailers
American Truck Simulator Mods,
ATS Trucks,
ATS Maps |
|
|
|