標題: bascom avr版WS2812漸變流水的燈 [打印本頁]

作者: taotie    時間: 2021-1-19 13:27
標題: bascom avr版WS2812漸變流水的燈
本帖最后由 taotie 于 2021-1-19 13:31 編輯


rem Main.bas file generated by New Project wizard
rem
rem Created:   周一 1月 18 2021
rem Processor: ATmega8
rem Compiler:  BASCOM-AVR

rem Write your code here

$regfile = "m8def.dat"
$crystal = 16000000
$hwstack = 32
$swstack = 32
$framesize = 32

'-------------------------------------------------------------點亮彩帶長度:
const N_LED =64       '陣列中LED的數(shù)量(自定義)
dim n as word                        '計數(shù)器

'顏色
dim g(N_LED) as word                 '綠色部分
dim r(N_LED) as word                 '紅色部分
dim b(N_LED) as word                '藍色部分

'-----------------------------------------------------------------配置:
Config PinB.2 = Output             '新像素:數(shù)據(jù)輸入

'------------------------------------------------------生成LED陣列RESET:
reset portB.2             'T_RST = Lo =  RESET = 10000 ns
waitus 10

'--------------------------------------------------------------------起始值:
'顏色的起始值可能對效果起決定性作用(可以根據(jù)需要更改)
for n = 1 to N_LED
  g(n) = 2*n
  b(n) = 255- G(n)
  r(n) = 3 * G(n)
next n

'-----------------------------------------------------------------主循環(huán):
do

   '############################################################################
  ' 這是使用任何算法來執(zhí)行
  '  更改LED的顏色并更改速度:

   waitms 25
           '改變速度

for n = 1 to N_LED      '更改所有LED的顏色
      g(n) =  g(n) +1
      r(n) = r(n)+ 3
     b(n) = b(n)+ 5
  next n

   '############################################################################

   '---------------------------------------------------創(chuàng)建LED陣列重置:
reset portB.2          'T_RST = Lo =  RESET = 10000 ns
  waitus 10
   '-----------------------用新顏色描述整個LED陣列:
   For n = 1 to N_LED
$include "../ws28_4.BAS"               '將每個LED的綠色、紅色和藍色字節(jié)分離并輸出到24位數(shù)據(jù)流中:
   next n
   '----------------------------------------------------------------------------
Loop
End

工程文件用Proteus 8 .9打開
ws2812.zip (23.69 KB, 下載次數(shù): 24)








歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1