Program za reguliranje brzine vrtnje 9 V motora

Rasprava o AVR mikrokontrolerima, AVR projekti i drugo vezano za AVR...

Moderators: pedja089, stojke369, trax, InTheStillOfTheNight

Post Reply
User avatar
andrija88
Posts: 14
Joined: 09-11-2009, 18:28

Program za reguliranje brzine vrtnje 9 V motora

Post by andrija88 »

Trebam program u BASCOMU koji će regulirat brzinu vrtnje 9 V motora (2400 okr./min). integrirac je atmel 89C2051
User avatar
mega162
Odlično uznapredovao
Odlično uznapredovao
Posts: 934
Joined: 10-04-2010, 17:54

Re: Program za reguliranje brzine vrtnje 9 V motora

Post by mega162 »

ja bi mogel nabaviti (ako se potrudim) ali za avr.... regulira se prek analognog ulaza
User avatar
bob4
Stariji član
Stariji član
Posts: 2572
Joined: 31-01-2010, 16:12
Location: Kutina

Re: Program za reguliranje brzine vrtnje 9 V motora

Post by bob4 »

Još nam neki dodatni materijal (chip-možda DA) moraš dati da ti pomognemo :wink:
A možda bi se moglo i ovo pregledati:
http://www.8051projects.net/lofiversion ... ignal.html" onclick="window.open(this.href);return false;
User avatar
bob4
Stariji član
Stariji član
Posts: 2572
Joined: 31-01-2010, 16:12
Location: Kutina

Re: Program za reguliranje brzine vrtnje 9 V motora

Post by bob4 »

Code: Select all

$regfile = "89c2051.dat"
$crystal = 12000000

Dim A As Byte
Dim Brzina As Byte
Dim Ad_vrij As Byte
Dim Broj As Byte
Dim Broj1 As Byte
Dim Uklj As Byte
Dim Isklj As Byte

Izlaz Alias P3.3

Do
Ad_vrij = Getad2051()
Select Case Ad_vrij
   Case Is < 10 : Brzina = 0
   Case 10 To 15 : Brzina = 1
   Case 15 To 20 : Brzina = 2
   Case 20 To 25 : Brzina = 3
   Case 25 To 30 : Brzina = 4
   Case 30 To 35 : Brzina = 5
   Case 35 To 40 : Brzina = 6
   Case 40 To 45 : Brzina = 7
   Case 45 To 50 : Brzina = 8
   Case Is > 50 : Brzina = 9
   End Select

Broj = Lookup(brzina , Tabela_brojeva_p1)
Broj1 = Lookup(brzina , Tabela_brojeva_p3)

A = P1 And &B00000011
P1 = A Or Broj
A = P3 And &B11111101
P3 = A Or Broj1

Uklj = Brzina * 3
Isklj = 30 - Brzina

If Brzina = 9 Then
   Reset Izlaz
   Elseif Brzina = 0 Then
      Set Izlaz
   Else
      Reset Izlaz
      Waitms Uklj
      Set Izlaz
      Waitms Isklj
End If

Loop

Tabela_brojeva_p1:
Data &B00100011
Data &B01101111
Data &B01010011
Data &B01000111
Data &B00001111
Data &B10000111
Data &B10000011
Data &B01101111
Data &B00000011
Data &B00000111

Tabela_brojeva_p3:
Data &B11111101
Data &B11111111
Data &B11111101
Data &B11111101
Data &B11111111
Data &B11111101
Data &B11111101
Data &B11111101
Data &B11111101
Data &B11111101
Moderator:Zar je toliko tesko kliknuti na Code :roll:
Post Reply