📄 pwmusic.c
字号:
#include "config.h"#include "music.h"
/* žèÇúÇúÆ× £ ºç²ÊÃÃÃÃ*/
const uint32 HCMM[] =
{
_LA, _SO, _MI, _LA, _SO, _MI,
_LA, _LA, _SO, _LA,
_LA, _SO, _MI, _LA, _SO, _MI,
_RE, _RE, _DO, _RE,
_MI, _MI, _SO, _LA, _DO1, _LA, _SO,
_MI, _MI, _SO, _DO,
_MI, _MI, _MI, _MI, _MI,
_1LA,_1LA,_1SO,_1LA,
};
/* žèÇúœÚÅÄ */
const uint32 HCMM_L[] =
{
_4, _8, _8, _4, _8, _8,
_8, _4, _8, _2,
_4, _8, _8, _4, _8, _8,
_8, _4, _8, _2,
_4, _8, _8, _8, _8, _8, _8,
_8, _4, _8, _2,
_4, _4, _4, _8, _8,
_8, _4, _8, _2,
};
/*
********************************************************************************************************
** º¯ÊýÃû³Æ: Delay
** ¹ŠÄÜÃèÊö: ÈíŒþÑÓʱº¯Êý
*******************************************************************************************************
*/
void Delay(uint8 dly)
{
uint32 i;
for(; dly > 0; dly--)
for(i = 0; i < 0x7FFF; i++);
}int main(){ int fd; uint32 i; fd = open("/dev/PWM", O_RDONLY); if(fd == -1) { printf("\nCan't open PWM!\n"); return -1; } printf("Test PWM2(P0.7) output.\n"); for(i=0; i<40; i++) { ioctl(fd, PWM_SET_CYC, Fpclk / HCMM[i]); ioctl(fd, PWM_2_SET_DUTY, Fpclk / HCMM[i]/2); ioctl(fd, PWM_2_ENABLE); Delay(HCMM_L[i]); } close(fd); return 0;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -