|
|
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 07, 06:04. Visos datos yra GMT + 2 valandos.
|
|
|
|
Forumas » Mikrovaldikliai » Reikalinga pagalba
|
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
|
|
|
Puslapis 1 iš 2 Pereiti prie 1, 2 Toliau |
|
|
Reikalinga pagalba |
Parašytas: 2011 09 15, 20:44 |
|
|
|
Sveiki,reikalinga pagalba su AVR programavimu. |
|
Paskutinį kartą redagavo korne1, 2011 10 13, 17:23. Redaguota 1 kartą |
|
|
|
|
Reikalinga pagalba |
Parašytas: 2011 10 13, 15:14 |
|
|
|
Siaip reikalinga pagalba del atmega8 programos parasymo. O reikia kad paspaudus 1 jungtuka uzsidegtu 1 led , o paspaudus 2 uzsidegtu 2led ir uzgestu1led. |
|
|
|
|
|
Reikalinga pagalba |
Parašytas: 2011 10 13, 15:53 |
|
|
|
Man irgi būtų pravartu tai išsiaiškinti, būtent tą patį, nes nelabai suprantu tuos visus signalus mikrovaldikliuose ir kaip juos išgaut. |
|
|
|
|
|
Reikalinga pagalba |
Parašytas: 2011 10 13, 17:55 |
|
|
|
Kaip už pinigus tai tik rinkis iš pasiūlos, o kai paprasai nemokamai tai kaip su siena (tuščia) |
|
|
|
|
|
Reikalinga pagalba |
Parašytas: 2011 10 13, 18:00 |
|
|
|
Tai klausk pagalbos, o ne lauk kol kazkas uz tave koda parasys, kad ir koks jis paprastas bebutu. |
|
|
|
|
|
Reikalinga pagalba |
Parašytas: 2011 10 13, 18:15 |
|
|
|
Tai aš turiu pasirašęs programą
#include <avr/io.h>
int main(void)
{
while(1) {
DDRD=1;
DDRB=1;
if (PORTB==1)
{
PORTD=1;
}
}
}
Bet nemoku padaryt mygtuko, kad nusiųstų į Atmegą vienetą ir užžiebtų LED |
|
|
|
|
|
|
Reikalinga pagalba |
Parašytas: 2011 10 13, 18:34 |
|
|
|
vieno mygtuko funkcija:
#include <iom16.h>
int main( void )
{DDRD=255;
PORTA=1;
unsigned char a=0;
while(1){
if (!(PINA&1))// Tikriname ar paspaustas mygtukas. Ženkliukas &
reiškia lyginę IR operaciją, o ! reiškia loginę inversiją
{
if (a==0)a=1; else a=0; // Tikriname, ar prieš tai buvo paspaustas
mygtukas ir įjungti diodai, jei taip, tai juos išjungsime
while(!(PINA&1)){} // Čia paprasta priemonė nuo trumpų impulsų,
atsirandančių paspaudus mygtuką
}
if (a==1)
PORTD=255; else PORTD=0; // Junginėjam šviesos diodus, pagal
kintamojo a reikšmes
}}
tik reikia pasirinkti savo mikrovaldikli ir pagal ji portus. Čia ištrauka iš puslapio http://www.elektronika.lt/schemos/mikrovaldikliai/4537/pirmi-zingsniai-atmel-avr-pradedantiesiems/ |
|
|
|
|
|
Reikalinga pagalba |
Parašytas: 2011 10 13, 18:59 |
|
|
|
Dėkui, nemaniau kad jeigu neparašiau else dėl to neveikia, gal dar kažką dėl PWM galit? |
|
|
|
|
|
Reikalinga pagalba |
Parašytas: 2011 10 13, 19:07 |
|
|
|
Iš manes toks programuotojas, kad geriau patylėsiu ( tai buvo pirmas mano projektas ir pagaliau susidorojau). Šiaip pasidariau su 3 led ir 3 buttons toki tipo šviesoforą. |
|
|
|
|
|
Reikalinga pagalba |
Parašytas: 2011 10 13, 19:18 |
|
|
|
SiNiD rašo: |
Tai aš turiu pasirašęs programą
#include <avr/io.h>
int main(void)
{
while(1) {
DDRD=1;
DDRB=1;
if (PORTB==1)
{
PORTD=1;
}
}
}
Bet nemoku padaryt mygtuko, kad nusiųstų į Atmegą vienetą ir užžiebtų LED |
Tavo sitam kode yra tiek klaidu ,kad operatorius else cia ne prie ko.
Na ir jeigu dar nesugebi su iejimais/isejimais susidoroti, tai PWM atidek ateiciai. Jei domina tai parasyk man i PM pabandysiu atsakyti kur tavo klaidos,kaip reikia rasyti programos koda nuo ko pradeti ir t.t |
|
|
|
|
|
Reikalinga pagalba |
Parašytas: 2011 10 13, 19:56 |
|
|
|
pagal mane gaunas lyg ir taip:
#include <avr/io.h>
int main(void){
DDRD=0x60;
while(1){
if ((PINB & 0x60) != 0x60){ // Tikriname ar nera paspausti abu mygtukai
if (PINB & 0x20) PORTD=(PORTD & 0x9F) | 0x20; // uzdegam LED1, gesinam LED2
if (PINB & 0x40) PORTD=(PORTD & 0x9F) | 0x40; // uzdegam LED2, gesinam LED1
}}} |
|
|
|
|
|
Reikalinga pagalba |
Parašytas: 2011 10 15, 08:00 |
|
|
|
Dėkui AlgisL už pagalba. Tavo aprašymas trumpesnis nei mano,o rezultatas tas pats. |
|
|
|
|
|
|
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 |
|
|
|