|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
本帖最后由 RGB_lamp 于 2023-3-16 14:53 编辑 ( L2 R0 g0 [0 B7 w2 R2 W4 v8 @4 O
5 w* i- b, M# x, b' ~! s9 n
各位大神,我最近想做一个基于单片机PWM功能的流星灯(水滴效果),可是看了一些资料,按着书上的程序做了一边还是不行。那灯亮度压根儿就没变,,,求正解啊。。。。7 P) [9 [; {2 r. b" g/ K
#include
* t5 H$ p* a; U#include
" d1 d- l' g! D5 n; z#define uchar unsigned char
6 v* \9 ]( L# b/ W7 P! \* y***it PWM=P0^1;, A/ q+ Q4 p; q e6 I0 [- Y
void delay(uchar i)
9 Z& `6 k2 D' D! e, H2 d8 e{1 t- C1 y4 L# d1 w
uchar j;5 c( z9 m% r; n& p) T% H
for(;i>0;i--)9 c/ H+ y. a! w' |; P
{. ^; t* Q& M' ^5 e1 S( E( x
for(j=29;j>0;j--)& U! S$ t( G/ v; g# B- W
_nop_();5 ?( @, L, O$ d8 \2 p" h
_nop_();
. }$ z4 I H; Y( u }, p9 J3 _. H1 Q3 g' }. R* z
}
# M& [8 ]; P0 `5 `9 [void PWMout(uchar q)2 ] q$ o: O/ T% w. }$ E8 [7 z
{3 f! A! p& y2 p- f7 [5 z! T# J
PWM=1;
* j, @/ z$ M+ O delay(q);2 d8 R% [1 I5 U. |& @
PWM=0;
; z1 D& K. b: W v4 |: j: p delay(10-q);
- j5 I6 n+ u7 l5 k. b1 v2 I+ |}
3 A$ [9 A- b& e v" a4 |) Yvoid main()
& W4 t+ i% X- N5 c{
+ _: n9 e# j1 s+ [* f while(1)
$ w' J8 R* [- F& |) q* P {
" R Q. f. X) C* C$ |% f H a) Y2 u& [; {% C) x: ^2 N& p1 Q# R
PWMout(0);
+ R! Y. H# s. U& O$ F @ PWMout(1);
, |, y; G5 z( T/ t3 E" y+ o PWMout(2);5 k- l6 T T' W: l1 s' @4 F
PWMout(3);
. ]; v0 l9 e+ V# l PWMout(4);' A) [: x+ S! ?# m
PWMout(5);+ L7 l: V: H2 _1 V( E
PWMout(6);
7 I3 @ k8 S% {% M7 `& K$ `% \ PWMout(7);/ @+ L* X: Z7 D* e+ l& l2 Z$ ~ g
PWMout(8);
! U9 Z$ i* b1 F* _8 Z h, ]% S- ~ PWMout(9);
: a, Z/ D" \9 Q% R6 w( c PWMout(10);
, Q, W0 |& [* V7 k9 k
% _4 I2 w! w! ^9 [+ d1 D" Y; h5 F- D }3 y; K, F5 X) P V
}
) K* y3 ?( R- g4 F( I0 U
) _+ E: e7 M( K" _( p; _& Y' i
+ ]: c* p3 j# O
" |+ {* Q' {% u1 j+ {
& c- a' B+ n0 t1 ^
1 s2 i& F& [5 E6 c, h
|
|