www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 

Programiranje v bascom avr
Pojdi na stran Prejšnja  1, 2, 3, 4 ... 36, 37, 38  Naslednja
 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Bascom sekcija
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
vilko
Član
Član



Pridružen-a: Pet 13 Feb 2004 10:26
Prispevkov: 3351
Aktiv.: 15.09
Kraj: Dragomer

PrispevekObjavljeno: Sob Apr 26, 2008 11:09 am    Naslov sporočila:  Točno Odgovori s citatom

Točno, le da ne smeš imeti byte spremenljivke ampak odgovarjajoče večje, da bo tudi največje število, ki nastopa v računu šlo v spremenljivko.
_________________
Prepričan sem, da je inteligentnih bitij v vesolju veliko. A ker so inteligenta, se nam nočejo prikazati.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
program_er
Član
Član



Pridružen-a: Sob 08 Mar 2008 13:47
Prispevkov: 2173
Aktiv.: 11.12
Kraj: Maribor (Pohorje)

PrispevekObjavljeno: Sob Apr 26, 2008 11:41 am    Naslov sporočila:   Odgovori s citatom

Pa sem iskal v helpu, pa nisem našel kake tabele ali pa kaj, kjer bi pisalo, katera spremenljivka lahko ima koliko števk. Ker jaz ponavadi dam kar nekaj "na blef" pol pa preizkušam, kako daleč gre... A ima kdo to tabelo?

Pa če pri 8-bitnem ADC-ju delim z 256, z koliko morem delit pri 10-bitnem ADC-ju?

_________________
Upanje ni del naše projektne strategije.
Member of Trisat - 1. Slovenian satellite running new fault tolerant aerospace processor.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo MSN Messenger - naslov
vilko
Član
Član



Pridružen-a: Pet 13 Feb 2004 10:26
Prispevkov: 3351
Aktiv.: 15.09
Kraj: Dragomer

PrispevekObjavljeno: Sob Apr 26, 2008 5:42 pm    Naslov sporočila:  Eh, Odgovori s citatom

v Helpu piše med 'Language fundametals' tudi sledeče:
Citiram:
Data Types

Every variable in BASCOM has a data type that determines what can be stored in the variable. The next section summarizes the elementary data types.

Elementary Data Types

Bit (1/8 byte). A bit can hold only the value 0 or 1. A group of 8 bits is called a byte.
Byte (1 byte). Bytes are stores as unsigned 8-bit binary numbers ranging in value from 0 to 255.
Integer (two bytes). Integers are stored as signed sixteen-bit binary numbers ranging in value from -32,768 to +32,767.
Word (two bytes). Words are stored as unsigned sixteen-bit binary numbers ranging in value from 0 to 65535.
Long (four bytes). Longs are stored as signed 32-bit binary numbers ranging in value from -2147483648 to 2147483647.
Single. Singles are stored as signed 32 bit binary numbers. Ranging in value from 1.5 x 10^–45 to 3.4 x 10^38
Double. Doubles are stored as signed 64 bit binary numbers. Ranging in value from 5.0 x 10^–324 to 1.7 x 10^308
String (up to 254 bytes). Strings are stored as bytes and are terminated with a 0-byte. A string dimensioned with a length of 10 bytes will occupy 11 bytes.


Odgovor na zadnje vprašanje je 1024

_________________
Prepričan sem, da je inteligentnih bitij v vesolju veliko. A ker so inteligenta, se nam nočejo prikazati.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
program_er
Član
Član



Pridružen-a: Sob 08 Mar 2008 13:47
Prispevkov: 2173
Aktiv.: 11.12
Kraj: Maribor (Pohorje)

PrispevekObjavljeno: Sob Apr 26, 2008 9:13 pm    Naslov sporočila:  Re: Eh, Odgovori s citatom

vilko je napisal/a:
Odgovor na zadnje vprašanje je 1024


Aha, se pravi da je pri 10-bitnem ADC-ju račun takšen:
&H80 = Zy <--neka cifra (če mi to vrže v programu)
Zy x referenčna napetost = Rz
Rz x 1000 (ne 10) = Kp
Kp : 1024 = mV

V tem primeru sem dal kar neke spremenjlijke, ker nisem vedel točnih cifer. Zahvala, da zdaj to razumem (delno) gre @vilkotu! Hvala.

_________________
Upanje ni del naše projektne strategije.
Member of Trisat - 1. Slovenian satellite running new fault tolerant aerospace processor.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo MSN Messenger - naslov
videosony
Član
Član



Pridružen-a: Čet 15 Nov 2007 1:32
Prispevkov: 20
Aktiv.: 0.10
Kraj: Maribor

PrispevekObjavljeno: Sre Apr 30, 2008 4:17 pm    Naslov sporočila:   Odgovori s citatom

Da ne odpiram nove teme bom kar tu vprašal.
Kako v bascomu napisat program da bo bral podatke iz SPI vodila enega drugega vezja ki pošilja binarne podatke 0 do 1023.
Pogledal sem literaturo o SPI pa mi je približno jasno delovanje, samo meni program noče delat-brat.
Rad bi prebral prek hardware SPI in izpisal na LCDju.

Config Lcdpin = Pin , Db4 = Porta.4 , Db5 = Porta.5 , Db6 = Porta.6 , Db7 = Porta.7 , E = Portd.6 , Rs = Portd.4
Dim I As Byte
Config Lcd = 16 * 2
Initlcd
Cls
Spiinit
Do
Waitms 50
Spiin I , 1
Cls
Lcd I
Loop
End

probal sem tudi ta prog:
'------------------------------------------------------------------
' SPI-SLAVE.BAS
' (c) MCS Electronics
' sample shows how to create a SPI SLAVE
' use together with sendspi.bas
'------------------------------------------------------------------
' Tested on the STK500. The STK200 will NOT work.
' Use the STK500 or another circuit
$regfile = "m16def.dat"


Dim B As Byte , Rbit As Bit , Bsend As Byte

'First configure the MISO pin
Config Pinb.6 = Output ' MISO

'Then configure the SPI hardware SPCR register
Config Spi = Hard , Interrupt = On , Data Order = Msb , Master = No , Polarity = Low , Phase = 0 , Clockrate = 128
Config Lcdpin = Pin , Db4 = Porta.4 , Db5 = Porta.5 , Db6 = Porta.6 , Db7 = Porta.7 , E = Portd.6 , Rs = Portd.4
'Then init the SPI pins directly after the CONFIG SPI statement.
Spiinit

Cls
'specify the SPI interrupt
On Spi Spi_isr Nosave

'enable global interrupts
Enable Interrupts

'show that we started
Lcd "start"
Wait 1
Spdr = 0 ' start with sending 0 the first time
Do
If Rbit = 1 Then
Lcd "r" ; B
Reset Rbit
Bsend = Bsend + 1 : Spdr = Bsend 'increase SPDR
End If
' your code goes here
Waitms 100
Cls
Loop



'Interrupt routine
'since we used NOSAVE, we must save and restore the registers ourself
'when this ISR is called it will send the content from SPDR to the master
'the first time this is 0
Spi_isr:
push r24 ; save used register
in r24,sreg ; save sreg
push r24
B = Spdr
Set Rbit ' we received something
pop r24
!out sreg,r24 ; restore sreg
pop r24 ; and the used register
Return
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
rene_9
Član
Član



Pridružen-a: Sob 01 Mar 2008 16:13
Prispevkov: 64
Aktiv.: 0.33
Kraj: Maribor

PrispevekObjavljeno: Tor Maj 06, 2008 10:18 pm    Naslov sporočila: icon_question Štetje pristiskov tipke Odgovori s citatom

Zdravo
Da ne bom nove teme odpiral bom kar tu vprašal.Pgogram bi naj štel število pritiskov tipke in ob vsakem pritisku naredil določeno stvar. Bascom pa mi javo 2 napaki in ne vem kaj bi blo narobe, pa sem gledo help pa nisem najdo rešitve za napaki:

Error:7 Line:67 IF THEN expectet[67]
Error:269 Line:67 END SELECT expectet

Program ja je sledeč:

$regfile = "m8515.dat"
$crystal = 12000000
Config Debounce = 40


Dim Stevec As Byte
Config Porta = Input
Config Portb = Output
Tipka1 Alias Pina.0
Led1 Alias Portb.0
Led2 Alias Portb.1



Zacetek:
Do
Debounce Tipka1 , 0 , Vklop
Loop


Vklop:
Incr Stevec
If Stevec = 3 Then
Stevec = 0
Goto Izbira


Izbira:

Select Case Stevec
Case 0 : Goto Prog1
Case 1 : Goto Prog2
Case 2 : Goto Prog3

Prog1:
Set Led1

Prog2:
Do
Reset Led1
Wait 1
Set Led1
Wait 1
Set Led2
Loop

Prog3:
Do
Set Led2
Wait 1
Set Led1
Wait 1
Loop

Goto Zacetek
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
igo
Član
Član



Pridružen-a: Sre 11 Okt 2006 19:11
Prispevkov: 3638
Aktiv.: 17.11

PrispevekObjavljeno: Tor Maj 06, 2008 11:36 pm    Naslov sporočila: icon_question Re: Štetje pristiskov tipke Odgovori s citatom

rene_9 je napisal/a:
Error:7 Line:67 IF THEN expectet[67]
Error:269 Line:67 END SELECT expectet

Program ja je sledeč:

$regfile = "m8515.dat"
$crystal = 12000000
Config Debounce = 40


Dim Stevec As Byte
Config Porta = Input
Config Portb = Output
Tipka1 Alias Pina.0
Led1 Alias Portb.0
Led2 Alias Portb.1



Zacetek:
Do
Debounce Tipka1 , 0 , Vklop
Loop


Vklop:
Incr Stevec
If Stevec = 3 Then
Stevec = 0
End If
Goto Izbira ' tega ni treba

Izbira:

Select Case Stevec
Case 0 : Goto Prog1
Case 1 : Goto Prog2
Case 2 : Goto Prog3

Prog1:
Set Led1
Goto Zacetek

Prog2:
Reset Led1
Wait 1
Set Led1
Wait 1
Set Led2
Goto Zacetek

Prog3:
Set Led2
Wait 1
Set Led1
Wait 1
Goto Zacetek
V "Vklop: " si pozabil na "End If" . Pa preden vprašaš, zakaj se program povsem zaplete, kar tega popravljenega uporabi. Pa še kak "Reset Led2 in Led1 " dodaj, da bo vedno definirano, kaj naj se zgodi.
LP,
Igor

_________________
Teoretično je praksa posledica teorije, praktično je pa ravno obratno. (igo 2001)
LP, Igor
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
Pobesneli
Član
Član



Pridružen-a: Sre 02 Jan 2008 1:24
Prispevkov: 1070
Aktiv.: 5.41
Kraj: Ajdovščina

PrispevekObjavljeno: Sre Maj 07, 2008 12:01 am    Naslov sporočila:   Odgovori s citatom

za tem delom

Select Case Stevec
Case 0 : Goto Prog1
Case 1 : Goto Prog2
Case 2 : Goto Prog3

manjka tudi End select
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Pobesneli
Član
Član



Pridružen-a: Sre 02 Jan 2008 1:24
Prispevkov: 1070
Aktiv.: 5.41
Kraj: Ajdovščina

PrispevekObjavljeno: Sre Maj 07, 2008 12:05 am    Naslov sporočila:   Odgovori s citatom

Sedaj mam pa še jaz eno vprasanje..in sicer z 1wire DS1820.Zanima me kako se preveri koliko senzorjev je na vodilu in kako se potem prebere vsakega posebaj.
rabim kak namig Wink

Zanima me če ima kdo tiste primere iz Bascom seminarja (pdf),glede teh senzorjev.
Ker v pdfju jih ni.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
rene_9
Član
Član



Pridružen-a: Sob 01 Mar 2008 16:13
Prispevkov: 64
Aktiv.: 0.33
Kraj: Maribor

PrispevekObjavljeno: Sre Maj 07, 2008 12:45 pm    Naslov sporočila:   Odgovori s citatom

Hvala.
Bom popravo, kaj se pa tiče pdf-ja iz Bascom seminarja pa ti ga lahko na e-mail pošljem.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Pobesneli
Član
Član



Pridružen-a: Sre 02 Jan 2008 1:24
Prispevkov: 1070
Aktiv.: 5.41
Kraj: Ajdovščina

PrispevekObjavljeno: Sre Maj 07, 2008 6:49 pm    Naslov sporočila:   Odgovori s citatom

seminar iz bascoma že imam.rabim le tiste primere ki naj bi pokazali delovanje 1wire

Kopirano iz Pdf-ja:

Program DS1820-5 je primer branja temperature konkretnega termometra
Program DS1820-6 je primer branja temperature iz treh termometrov.

če ima kdo ?
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
tozir
Član
Član



Pridružen-a: Pon 17 Mar 2008 19:10
Prispevkov: 187
Aktiv.: 0.96
Kraj: Celje

PrispevekObjavljeno: Sre Maj 07, 2008 10:40 pm    Naslov sporočila:   Odgovori s citatom

http://datasheets.maxim-ic.com/en/ds/DS18S20.pdf

na začetku, pod drugo točko:
Koda:
Each device has a unique 64-bit serial code stored in an onboard ROM


na strani 5 imaš pa zgradbo tega registra razloženo. npr. jaz bi šel preverjat koliko različnih vrednosti teh registrov pa imam, ter bi iz tega sklepal koliko senzorjev je priključeno. samo ideja Wink

_________________
http://www.rielektronika.comule.com/
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
mucek
Član
Član



Pridružen-a: Tor 01 Avg 2006 10:47
Prispevkov: 5327
Aktiv.: 24.78
Kraj: Domzale

PrispevekObjavljeno: Čet Maj 08, 2008 12:52 pm    Naslov sporočila:   Odgovori s citatom

Programi, ki smo jih uporabili na seminarju ...

LP, Grega



seminar.zip
 Opis:

Download
 Ime datoteke:  seminar.zip
 Velikost datoteke:  46.34 KB
 Downloadano:  185 krat

Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Pobesneli
Član
Član



Pridružen-a: Sre 02 Jan 2008 1:24
Prispevkov: 1070
Aktiv.: 5.41
Kraj: Ajdovščina

PrispevekObjavljeno: Čet Maj 08, 2008 10:22 pm    Naslov sporočila:   Odgovori s citatom

o hvala,to sem potreboval Wink
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
program_er
Član
Član



Pridružen-a: Sob 08 Mar 2008 13:47
Prispevkov: 2173
Aktiv.: 11.12
Kraj: Maribor (Pohorje)

PrispevekObjavljeno: Pet Maj 09, 2008 8:13 am    Naslov sporočila:   Odgovori s citatom

Pozdravljeni, spet jaz! Laughing

Zdaj tisto z ADC-jem razumem! Ampak tisto deluje samo, če mam naprimer fotoupor vezan men neko točno določeno npetostjo in enim pinom uC-ja.

Kaj pa če si jaz hočem narediti merilec napetosti baterij, in le to prikazovati na dveh 7-segmentnih prikazovalnikih ali LCD-ju?

To pa potem mora biti drugače zasnovano... Kaj lahko odgovori kdo, ki se ukvarja z Bascomom in AVR-ji (ATmega16) in to točno ve?

_________________
Upanje ni del naše projektne strategije.
Member of Trisat - 1. Slovenian satellite running new fault tolerant aerospace processor.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo MSN Messenger - naslov
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Bascom sekcija Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Pojdi na stran Prejšnja  1, 2, 3, 4 ... 36, 37, 38  Naslednja
Stran 3 od 38

 
Pojdi na:  
Ne, ne moreš dodajati novih tem v tem forumu
Ne, ne moreš odgovarjati na teme v tem forumu
Ne, ne moreš urejati svojih prispevkov v tem forumu
Ne, ne moreš brisati svojih prispevkov v tem forumu
Ne ne moreš glasovati v anketi v tem forumu
Ne, ne moreš pripeti datotek v tem forumu
Ne, ne moreš povleči datotek v tem forumu

Uptime: 47 dni


Powered by phpBB © 2001, 2005 phpBB Group