hey

ik ben een 8 kanalen pwm controler aan het maken met een at90s8515 in het bascom.


$baud = 19600
Config Portb = Output
Config Timer0 = Timer , Prescale = 256
Config Porta = Input

Enable Urxc
Stop Timer0
Start Timer0
Dim Temp As Byte
Dim Pwm0 As Byte
Dim Pwm1 As Byte
Dim Pwm2 As Byte
Dim Pwm3 As Byte
Dim Pwm4 As Byte
Dim Pwm5 As Byte
Dim Pwm6 As Byte
Dim Pwm7 As Byte
On URXC Uart Nosave

Do

'pwm 0

   If Timer0 > Pwm0 Then
      Portb.0 = 1
   Else
      Portb.0 = 0
   End If
   If Pwm0 = 0 Then
      Portb.0 = 1
   End If

'pwm 1

  ...

'pwm2

  ...

'pwm 3

  ...
'pwm 4

  ...
'pwm 6

  ...

'pwm 7

   If Timer0 > Pwm7 Then
      Portb.7 = 1
   Else
      Portb.7 = 0
   End If

   If Pwm7 = 0 Then
      Portb.7 = 1
   End If


Loop
 Uart:
       Input "select pwm channel" , Temp
       Select Case Temp
         Case "a" : Input "pwm0 is " , Pwm0
         Case "b" : Input "pwm1 is " , Pwm1
         Case "c" : Input "pwm2 is " , Pwm2
         Case "d" : Input "pwm3 is " , Pwm3
         Case "e" : Input "pwm4 is " , Pwm4
         Case "f" : Input "pwm5 is " , Pwm5
         Case "g" : Input "pwm6 is " , Pwm6
         Case "h" : Input "pwm7 is " , Pwm7
      End Select

De bedoeling is dat als de interupt URXC( Serial RX complete interrupt) er over geschakelt word uit de lus
en dan het "pwm menu" word gegeven. Nu komt het de interupt werkt nie? Kan niemand mijn helpen?
Alvast bedankt

RT

sorry voor zoveel code

Ik zou je graag willen helpen maar weet niets van AVR en Bascom. Maar moet je interrupts niet 'enablen' ?

MvgEat

Subroutine nog afsluiten met 'end' ?

Nog 'enable interrupts' geven ?

Ik ken urxc interrupt niet. Is die nog gekoppeld aan een pin ? Zo ja is die pin al als 'input' geconfigureerd ?

het werkt nu
Ik was 'enable interrupts' vergeten:)
URXC is een interrupt die 'aan' gaat als UDR uart data regiseter vol is.