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

阿坝网站建设做网上竞彩网站合法吗

阿坝网站建设,做网上竞彩网站合法吗,网址怎么做小程序类的二维码,wordpress mysql 挂了闲来无事,折腾通过USBHOST 把本地的MP3 音频文件 发送给USB 音频设备 播放音乐。1. 先把USB HOST 做成个USB U盘 通过MSC FATFS 往本地SD_NAND先存放音频文件,2.再把USB HOST 驱动成 audio ,移植 软解码MP3HEX库。3.移植USB HOST audio 相关驱动库&#…

闲来无事,折腾通过USBHOST 把本地的MP3 音频文件 发送给USB 音频设备 播放音乐。

1. 先把USB HOST 做成个USB U盘 通过MSC FATFS 往本地SD_NAND先存放音频文件,

2.再把USB HOST 驱动成 audio ,移植 软解码MP3HEX库。

3.移植USB HOST audio 相关驱动库,通过usbh_audio.c 分析整份代码过于繁琐,只需要保留枚举那部分代码即可,驱动操作可以自己封装相关的函数,4

typedef struct {uint8_t buff[AUDIT_SZIE+4];int32_t out_ptr;uint32_t in_ptr;
}Audio_BufferTypeDef;/* Private variables ---------------------------------------------------------*/
//static WAV_InfoTypedef WavInfo;
//static FIL WavFile;static Audio_BufferTypeDef  BufferCtl;
static u32 pRdBufSize,halfSize;void AUDIO_Process(void)
{int32_t diff;USBH_StatusTypeDef Status = USBH_FAIL;switch(audio_state){case 0://if(Status ==USBH_OK)TRACE("sent cur:%d\n",10);//	_HSetAur(&hUsbHostFS,10);//	_HSetAur(&hUsbHostFS,5);_HSetAur(&hUsbHostFS,5);_HSetMirSpeak(&hUsbHostFS,0,1);//	Mp3Reset();audio_state =1;break;case 1:Status = 	USBH_AUDIO_Play(&hUsbHostFS, &BufferCtl.buff[0],halfSize * GetMp3TotalFram(),48000,16,1);if(Status ==USBH_OK){audio_state ++;}break;case 2 :if((BufferCtl.out_ptr = USBH_AUDIO_GetOutOffset(&hUsbHostFS)) < 0) /* End of file */{    //audio_state ++;TRACE("sent all:%d\n",total);}else if(BufferCtl.out_ptr  >= pRdBufSize ) /* End of buffer  4608 */{//	TRACE("S:%d\n",BufferCtl.out_ptr);USBH_AUDIO_ChangeOutBuffer(&hUsbHostFS, &BufferCtl.buff[0]);}else    {diff = BufferCtl.out_ptr - BufferCtl.in_ptr;if(diff < 0){diff = pRdBufSize + diff;}if(diff >=  pRdBufSize /2 )//9216{BufferCtl.in_ptr += halfSize;if(BufferCtl.in_ptr >= pRdBufSize)//(AUDIO_BLOCK_SIZE * AUDIO_BLOCK_NBR)){BufferCtl.in_ptr = 0;}if(!CheckMP3Over()){//	TRACE("in:%d\n",BufferCtl.in_ptr);halfSize =  GetMP3Fram(&BufferCtl.buff[BufferCtl.in_ptr],1);}elseaudio_state = 3;}MP3ShowTimes();}break;case 3:Status =  USBH_AUDIO_Stop(&hUsbHostFS);if(Status ==USBH_OK)audio_state ++;TRACE("err exit:%d\n",BufferCtl.in_ptr);break;default:break;}}void MX_USB_HOST_Process(void)
{int tx = 0;/* USB Host Background task */USBH_Process(&hUsbHostFS);if(  Appli_state == APPLICATION_READY){AUDIO_Process();//AUDIO_Micr_Process();}if(!connected){TIM2->CNT = 0;TIM2->CR1|=0x01;    //使能定时器2pRdBufSize =  GetMP3Fram(&BufferCtl.buff[0],4);//AUDIO_BLOCK_SIZE * AUDIO_BLOCK_NBR);TIM2->CR1&=~0x01;    //使能定时器2TRACE("mp3_run_us:%d\n",TIM2->CNT);BufferCtl.out_ptr = BufferCtl.in_ptr = 0;halfSize = pRdBufSize /4;TRACE("get byte:%d,%d\n",pRdBufSize,halfSize);connected = 1;}}

4.整个处理流程只需保留几个相关操作API,开始播放和停止播放,设置音量大小,因为usb 音频设备是单声道,对MP3解码的双通道 做 /2 处理

http://www.dtcms.com/a/448145.html

相关文章:

  • 悠悠我心个人网站模板成都网站建设哪家
  • 制作网页网站小说教程抖音代运营保证金
  • 潍城营销型网站建设怎么查询域名
  • 陕西免费网站建设网站流量被黑
  • 专业企业网站制作怎么做c2c电子商务
  • 北京网站优建设保证量身定制的营销型网站
  • 网页站点怎么命名编程自学教程入门
  • 网站代运营 如何纳税龙岗区网站建设公司
  • 建一个团购网站谷歌建站哪家好
  • 昆明专业网站排名推广做卖东西的网站多少钱
  • 做网站的用什么电脑好湖南网站建设 要上磐石网络
  • 外国网站英语要求泉州百度推广排名优化
  • 泰顺机械网站建设logo商标设计公司
  • 购物网站的目的和意义怎样在网站上做销售
  • 网站需要兼容哪些浏览器深圳网站建设的服务怎么样
  • 东台做网站找哪家好网站制作网站模板
  • 舟山网站建设开发青少年编程培训教育
  • 一款电脑定时关机软件工具
  • 薛城做网站东莞百度推广教程
  • 如何建设线报网站wordpress主题换图片不显示不出来
  • 网站产品介绍长图哪个软件做的域名解析服务器ip地址
  • 怎么用自己电脑做服务器发布网站吗免费h5源码资源源码站
  • wordpress禁止右键模板网站会影响网站优化吗
  • 网站 优化 教程wordpress获取当前分类名
  • 手机网站微信登录建晨网站建设
  • wordpress网站变慢删除WordPress底部
  • 手机版网站建设费用清单做外贸面料哪个网站可以接单
  • 邵阳哪里做网站罗湖网站建设的公司哪家好
  • 集约化网站建设情况企业级网站内容管理解决方案
  • 教程推广优化网站排名市场监督管理局管什么