Доброе время суток.
Народ подскажите в чем может быть проблема.
Делал Лампу настроения, но с изменениями.
Разница в том что цвета у меня заранее записаны и выбераются из таблицы случайным образом.
И ШИМ уменя програмный.
Полный код программы.
Код: Выделить всё
$regfile = "attiny85.dat "
$crystal = 8000000
'тикущий цвет
Dim Red As Single
Dim Green As Single
Dim Blue As Single
'следующий цвет
Dim Nextred As Byte
Dim Nextgreen As Byte
Dim Nextblue As Byte
'приращение шага
Dim Delta_red As Single
Dim Delta_green As Single
Dim Delta_blue As Single
'временные переменые
Dim Temp1 As Integer
Dim Temp2 As Long
Dim Temp5 As Byte
Dim I As Byte
Dim Tik As Byte
Dim Ledr As Byte
Dim Ledg As Byte
Dim Ledb As Byte
Config Pinb.0 = Output
Config Pinb.1 = Output
Config Pinb.2 = Output
Config Timer0 = Timer , Prescale = 1
Enable Timer0
Enable Interrupts
On Timer0 Pwms
Start Timer0
Do
Temp1 = Rnd(110)
Restore Color
For I = 0 To Temp1
Read Temp2
Next
Nextblue = Temp2 And 255
Temp2 = Temp2 / 256
Nextgreen = Temp2 And 255
Temp2 = Temp2 / 256
Nextred = Temp2 And 255
'вычесляем прибавку для перехода к новому цвету за 255 шагов
Delta_red = Nextred - Red
Delta_red = Delta_red / 255
Delta_green = Nextgreen - Green
Delta_green = Delta_green / 255
Delta_blue = Nextblue - Blue
Delta_blue = Delta_blue / 255
For I = 0 To 255 'вывод цвета за 255 шагов
Red = Red + Delta_red
Green = Green + Delta_green
Blue = Blue + Delta_blue
Temp5 = Fix(red)
Ledr = Temp5
Temp5 = Fix(green)
Ledg = Temp5
Temp5 = Fix(blue)
Ledb = Temp5
Waitms 15
Next
'удержание цвета
Wait 20
Loop
Pwms:
Incr Tik
If Tik = 255 Then
Tik = 0
Portb.0 = 0
Portb.1 = 0
Portb.2 = 0
End If
If Tik > Ledr Then Portb.0 = 1
If Tik > Ledg Then Portb.1 = 1
If Tik > Ledb Then Portb.2 = 1
Return
Color:
Data &HF08080& , &HFA8072& , &HE9967A& , &HFFA07A& , &HDC143C& , &HFF0000& , &HB22222& , &H8B0000&
Data &HFFC0CB& , &HFFB6C1& , &HFF69B4& , &HFF1493& , &HC71585& , &HDB7093& , &HFFA07A& , &HFF7F50&
Data &HFF6347& , &HFF4500& , &HFF8C00& , &HFFA500& , &HFFD700& , &HFFFF00& , &HFFFFE0& , &HFFFACD&
Data &HFAFAD2& , &HFFEFD5& , &HFFEFD5& , &HFFE4B5& , &HFFDAB9& , &HEEE8AA& , &HF0E68C& , &HBDB76B&
Data &HE6E6FA& , &HD8BFD8& , &HDDA0DD& , &HEE82EE& , &HDA70D6& , &HFF00FF& , &HBA55D3& , &H9370DB&
Data &H8A2BE2& , &H9400D3& , &H9932CC& , &H8B008B& , &H800080& , &H4B0082& , &H6A5ACD& , &H483D8B&
Data &HADFF2F& , &H7FFF00& , &H7CFC00& , &H00FF00& , &H32CD32& , &H98FB98& , &H90EE90& , &H00FA9A&
Data &H00FF7F& , &H3CB371& , &H2E8B57& , &H228B22& , &H008000& , &H006400& , &H9ACD32& , &H6B8E23&
Data &H808000& , &H556B2F& , &H66CDAA& , &H8FBC8F& , &H20B2AA& , &H008B8B& , &H008080& , &H00FFFF&
Data &HE0FFFF& , &HAFEEEE& , &H7FFFD4& , &H40E0D0& , &H48D1CC& , &H00CED1& , &H5F9EA0& , &H4682B4&
Data &HB0C4DE& , &HB0E0E6& , &H87CEEB& , &H87CEFA& , &H00BFFF& , &H1E90FF& , &H6495ED& , &H7B68EE&
Data &H4169E1& , &H0000FF& , &H0000CD& , &H00008B& , &H000080& , &H191970& , &HFFF8DC& , &HFFEBCD&
Data &HFFE4C4& , &HFFDEAD& , &HF5DEB3& , &HDEB887& , &HD2B48C& , &HBC8F8F& , &HF4A460& , &HDAA520&
Data &HB8860B& , &HCD853F& , &HD2691E& , &H8B4513& , &HA0522D& , &HA52A2A& , &H800000&