当前位置: 首页 > news >正文

哪个网站做的系统好nodejs的网站开发

哪个网站做的系统好,nodejs的网站开发,怎么做企业网站,网站内容建设出现的问题四、音乐播放器 任务要求#xff1a; 设计制作一个简易音乐播放器#xff08;通过手柄板上的蜂鸣器发声#xff0c;播放2到4首音 乐#xff09;#xff0c;同时LED模块闪烁#xff0c;给人视、听觉美的感受。 评分细则#xff1a; 按下播放按键P15开始播放音乐#x…四、音乐播放器 任务要求 设计制作一个简易音乐播放器通过手柄板上的蜂鸣器发声播放2到4首音 乐同时LED模块闪烁给人视、听觉美的感受。 评分细则 按下播放按键P15开始播放音乐再次按下停止播放20分按下按键P14播放下一首按下按键P13播放上一首20分播放音乐时OLED显示相应的曲目名20分当按下下一首或者上一首〃按键但是已经播放至最后一首时显示屏显 示无更多曲目同时蜂鸣器报警三秒钟20分歌曲名横向滚动显示10分具有音乐播放模式切换键播放模式有单曲循环、顺序播放、随机播放三种 模式。10分 要求可以播放2至4首音乐音乐节拍可通过网络等渠道收集。LED模块的闪烁 方式不做要求。 涉及的单片机内容以及口袋开发板模块 单片机I/O功能、定时/计数器、显示接口 口袋开发板独立按键、OLED显示屏、蜂鸣器 原理单片机使用PWM驱动无源蜂鸣器发声PWM频率改变发声频率就会改变。一首简谱就是由不同频率的音节组成的。 部分代码 /* ****************************************** */ /* ******** 延时 80 ms 控制音乐节拍 */ /* ****************************************** */ void delay1() {delay_ms( 80 ); }char taskBusy; void main( void ) {unsigned char u 0, t 0;WDT_Init(); /*看门狗设置 */Clock_Init(); /* 系统时钟设置 */User_SystemInit(); /* 用户控制系统初始化函数 */Timer_Init( TimerA, 10000 ); /* 10ms定时器中断 */TBCCTL0 CCIE; /* CCR0 interrupt enabled */TBCCR0 0;TBCTL TBSSEL_2 MC_1 ID_3; /* SMCLK, contmode */dis_bofangmode();dis_bofangmode();_EINT();while ( 1 ){if ( taskBusy 1 ){User_RealTimeTask( 100 ); /* 实时控制任务 */}else { /* 空闲任务大部分时间空闲可以用来管理一些不紧急的任务不易放长时间执行的任务 */User_IdleTask();}delay_ms(10);if(daojishi0 ((music_crr 10) ||(music_crr-1)))//倒计时结束关闭蜂鸣器{TBCTL TBSSEL_2 MC_0 ID_3; /* 关闭 */GPIO_Set( P5, 6, 1 ); /* 关闭蜂鸣器 */}if(daojishi!0){TBCCR0 SYSCLK / H7 / 2; /*选一个频率 */TBCTL TBSSEL_2 MC_1 TBCLR ID_3; /* SMCLK, upmode */}if ( (music_crr 0) open_flag 1 ){u 0; /* 从第1个音符f[0]开始播放 */while ( music0[u] ! 0xff ) /* 只要没有读到结束标志就继续播放 */{if ( music_crr ! 0 ) /* 切换音乐 */{TBCTL TBSSEL_2 MC_0 ID_3; /* 关闭 */GPIO_Set( P5, 6, 1 ); /* 关闭蜂鸣器 */break;}while ( open_flag 0 ); /* 如果暂停音乐 */TBCCR0 SYSCLK / music0[u] / 2; /*选一个频率 */TBCTL TBSSEL_2 MC_1 TBCLR ID_3; /* SMCLK, upmode */for ( t 0; t music0_JP[u]; t ) /* 控制节拍数 */delay1(); /* 延时1个节拍单位 */TBCTL TBSSEL_2 MC_0 ID_3; /* 关闭 */u; /* 播放下一个音符 */}if(bofang_mode1){music_crrmusic_crr1;if(music_crr4)music_crr0;//顺序循环}else if(bofang_mode2){music_crr(music_crr13)%4;//随机}TBCTL TBSSEL_2 MC_0 ID_3; /* 关闭 */GPIO_Set( P5, 6, 1 ); /* 关闭蜂鸣器 */}if ( music_crr 1 open_flag 1 ){u 0; /* 从第1个音符f[0]开始播放 */while ( music1[u] ! 0xff ) /* 只要没有读到结束标志就继续播放 */{if ( music_crr ! 1 ) /* 切换音乐 */{TBCTL TBSSEL_2 MC_0 ID_3; /* 关闭 */GPIO_Set( P5, 6, 1 ); /* 关闭蜂鸣器 */break;}while ( open_flag 0 ); /* 如果暂停音乐 */TBCCR0 SYSCLK / music1[u] / 2; /*选一个频率 */TBCTL TBSSEL_2 MC_1 TBCLR ID_3; /* SMCLK, upmode */for ( t 0; t music1_JP[u] / 2; t ) /* 控制节拍数 */delay1(); /* 延时1个节拍单位 */TBCTL TBSSEL_2 MC_0 ID_3; /* 关闭 */u; /* 播放下一个音符 */}if(bofang_mode1){music_crrmusic_crr1;if(music_crr4)music_crr0;//顺序循环}else if(bofang_mode2){music_crr(music_crr13)%4;//随机}TBCTL TBSSEL_2 MC_0 ID_3; /* 关闭 */GPIO_Set( P5, 6, 1 ); /* 关闭蜂鸣器 */}if ( music_crr 2 open_flag 1 ){u 0; /* 从第1个音符f[0]开始播放 */while ( music2[u] ! 0xff ) /* 只要没有读到结束标志就继续播放 */{if ( music_crr ! 2 ) /* 切换音乐 */{TBCTL TBSSEL_2 MC_0 ID_3; /* 关闭 */GPIO_Set( P5, 6, 1 ); /* 关闭蜂鸣器 */break;}while ( open_flag 0 ); /* 如果暂停音乐 */TBCCR0 SYSCLK / music2[u] / 2; /*选一个频率 */TBCTL TBSSEL_2 MC_1 TBCLR ID_3; /* SMCLK, upmode */for ( t 0; t music2_JP[u]; t ) /* 控制节拍数 */delay1(); /* 延时1个节拍单位 */TBCTL TBSSEL_2 MC_0 ID_3; /* 关闭 */u; /* 播放下一个音符 */}if(bofang_mode1){music_crrmusic_crr1;if(music_crr4)music_crr0;//顺序循环}else if(bofang_mode2){music_crr(music_crr13)%4;//随机}TBCTL TBSSEL_2 MC_0 ID_3; /* 关闭 */GPIO_Set( P5, 6, 1 ); /* 关闭蜂鸣器 */}if ( music_crr 3 open_flag 1 ){u 0; /* 从第1个音符f[0]开始播放 */while ( music3[u] ! 0xff ) /* 只要没有读到结束标志就继续播放 */{if ( music_crr ! 3 ) /* 切换音乐 */{TBCTL TBSSEL_2 MC_0 ID_3; /* 关闭 */GPIO_Set( P5, 6, 1 ); /* 关闭蜂鸣器 */break;}while ( open_flag 0 ); /* 如果暂停音乐 */TBCCR0 SYSCLK / music3[u] / 2; /*选一个频率 */TBCTL TBSSEL_2 MC_1 TBCLR ID_3; /* SMCLK, upmode */for ( t 0; t music3_JP[u]; t ) /* 控制节拍数 */delay1(); /* 延时1个节拍单位 */TBCTL TBSSEL_2 MC_0 ID_3; /* 关闭 */u; /* 播放下一个音符 */}if(bofang_mode1){music_crrmusic_crr1;if(music_crr4)music_crr0;//顺序循环}else if(bofang_mode2){music_crr(music_crr13)%4;//随机}TBCTL TBSSEL_2 MC_0 ID_3; /* 关闭 */GPIO_Set( P5, 6, 1 ); /* 关闭蜂鸣器 */}} }/* Timer B0 interrupt service routine */ #pragma vectorTIMERB0_VECTOR __interrupt void Timer_B( void ) {GPIO_turn( P5, 6 ); } 全部代码https://github.com/xddun/blog_code_search
http://www.zqtcl.cn/news/111759/

相关文章:

  • 网站源文件修改科技网站欣赏
  • 关于h5的网站目录 首页 wordpress
  • 包头网站建设推广手机网站开发介绍
  • 网站推广设计用那种语言做网站比较好
  • 手机品牌网站如何做好网站内更新
  • 订餐网站模板下载毕业设计动漫网页设计
  • 网站阵地建设管理办法移动端网页界面设计
  • 网站和做游戏重庆市建设工程信息网安全监督特种人员
  • 沈阳网站建设活动方案部分网站打不开的原因
  • 网站维护界面设计做的网站一直刷新
  • 国外网站 国内访问速度土木工程毕业设计网站
  • 宿迁网站建设制作中国广告设计网
  • 上门做美容的有什么网站微信网页版本
  • 专门做餐饮运营的网站网站开发相关知识
  • 石家庄门户网站建设免费简历模板的网站
  • 微网站建设市场如何做好平台推广
  • 网站不备案做优化小程序开发前景怎么样
  • 美丽说网站优化百度关键词优化
  • 同性男做的视频网站赶集网招聘最新招聘附近找工作
  • 做挖机配件销售的网站oa办公系统软件哪家好
  • 聊城设计网站商务网站的特点
  • 厦门做个网站多少钱工程建设范围
  • 百度推广官方网站在哪里制作网页
  • 济南集团网站建设方案沈阳手机网站制作
  • 网站备案号注销的结果做网站的外包能学到什么
  • 在线购物网站开发项目网站建设电话推广话术
  • 网站主体信息太原站扩建
  • 西平县住房和城乡建设局网站空间商网站
  • p2p网站建设cms一键生成图片
  • 甘肃省第八建设集团公司网站能够做物理题的网站