fix wire & add pwm

This commit is contained in:
MikuQ.com 2016-09-15 17:03:24 +08:00
parent e5fdcb17d3
commit aed5fa5a27
2 changed files with 61 additions and 1 deletions

1
.gitignore vendored
View File

@ -2,5 +2,4 @@
!/examples/makefile
/*.o
/*.so
/examples/*

61
examples/pwmtest.cpp Executable file
View File

@ -0,0 +1,61 @@
/*
* pwmtest.cpp:
*
* Welcome to MikuQ.com! MikuDuino for BananaPi
*
* by MikuQ(i@mikuq.com) 2016-9-15
*
* https://github.com/bpiq/MikuPi
*
*/
#include <MikuDuino.h>
#include <MikuPWM.h>
MikuPWM pwm = MikuPWM();
uint8_t breathing_table[128] = {
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 8, 8, 9, 10, 11, 11, 12, 13, 14, 15, 16, 17, 18, 19, 21, 22, 23, 25, 26, 27, 29, 30, 32, 34, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53, 56, 58, 61, 63, 66, 68, 71, 74, 77, 80, 83, 86, 89, 92, 95, 98, 102, 105, 108, 112, 116, 119, 123, 126, 130, 134, 138, 142, 145, 149, 153, 157, 161, 165, 169, 173, 176, 180, 184, 188, 192, 195, 199, 203, 206, 210, 213, 216, 219, 223, 226, 228, 231, 234, 236, 239, 241, 243, 245, 247, 248, 250, 251, 252, 253, 254, 255, 255, 255
};
void setup() {
printf("16 channel PWM test!\r\n");
pwm.begin();
pwm.setPWMFreq(1600);
}
void loop() {
int i,j;
int x=1;
int y=5;
for(i=0;i<8;i++)
{
for(j=0;j<128;j+=x)
{
pwm.setPWM(i, 0, breathing_table[j]*15);
pwm.setPWM(15-i, 0, breathing_table[j]*15);
delay(y);
}
for(j=0;j<128;j+=x)
{
pwm.setPWM(i, 0, breathing_table[(128-x-j)]*15);
pwm.setPWM(15-i, 0, breathing_table[(128-x-j)]*15);
delay(y);
}
}
for(i=6;i>=1;i--)
{
for(j=0;j<128;j+=x)
{
pwm.setPWM(i, 0, breathing_table[j]*15);
pwm.setPWM(15-i, 0, breathing_table[j]*15);
delay(y);
}
for(j=0;j<128;j+=x)
{
pwm.setPWM(i, 0, breathing_table[(128-x-j)]*15);
pwm.setPWM(15-i, 0, breathing_table[(128-x-j)]*15);
delay(y);
}
}}