tag 标签: pa

相关帖子
相关博文
  • 热度 1
    2025-2-17 10:14
    270 次阅读|
    0 个评论
    【富芮坤FR3068x-C】REPL MicroPython 播放本地音频实践
    MicroPython 简介 MicroPython 是一个精简且高效的 Python 实现,专为微控制器和嵌入式系统设计。它允许开发者使用 Python 语言在资源受限的硬件(如单片机、开发板等)上编写程序,极大地简化了嵌入式开发的过程。它的特点如下: 1. 特点 轻量化 :MicroPython 的代码库非常紧凑,适合运行在内存和存储空间有限的设备上。 兼容性 :支持大部分 Python 3 的语法和标准库,同时针对嵌入式环境进行了优化。 实时性 :提供了实时操作的功能,适合需要快速响应的应用场景。 硬件交互 :内置对 GPIO、UART、I2C、SPI 等硬件接口的支持,方便直接与硬件通信。 2. 应用场景 MicroPython 常用于以下领域: 物联网 (IoT) :控制传感器、执行器和其他 IoT 设备。 教育 :作为学习嵌入式开发和编程的工具。 原型开发 :快速构建硬件原型,验证概念。 自动化 :实现家庭自动化、工业自动化等应用。 3. 支持的硬件平台 MicroPython 可以运行在多种硬件平台上,包括但不限于: ESP8266 和 ESP32(Wi-Fi 模块) STM32 系列微控制器 Pyboard(官方开发板) Raspberry Pi Pico(RP2040 芯片) 4. 开发工具 WebREPL :通过 Wi-Fi 或串口连接设备,进行远程调试和代码上传。 Thonny :一款简单易用的 IDE,支持 MicroPython 开发。 Mu Editor :专为初学者设计的轻量级编辑器,支持 MicroPython。 VS Code 插件 :Visual Studio Code 提供了丰富的插件来支持 MicroPython 开发。 5. 学习资源 官方文档: https://docs.micropython.org 社区论坛: https://forum.micropython.org GitHub 仓库: https://github.com/micropython/micropython REPL MicroPython 工程 第一次接触MicroPython工程,感觉移植适配到一个新的平台适配工作还是挺大的。当前项目除了需要适配,还需要在 MicroPython 中新增模块,绑定开发板上的硬件播放本地音频文件,至少需要支持SD卡、文件系统、音频播放的硬件(DAC)等等。 这里偷懒,直接使用大佬 qinyunti 的工程,项目地址: https://gitee.com/qinyunti/fr3068-e-c-micropython 工程结构 裁剪了官方的 fr3068-e sdk,只保留了启动文件、驱动、蓝牙驱动、FreeRTOS,删除了 LVGL。 音频播放工程的关键代码都放在了 examples/evb_demo/lvgl_demo/src 目录下: easylogger 日志组件 fr_bt 富芮坤蓝牙应用层 fr_device 板级驱动 py 是MicroPython核心源码 py_port 是针对此款开发板的适配层,并新增了命令 shell 一个命令行组件,开机默认运行这个shell,串口接收命令 硬件环境 完成本次任务需要的硬件环境如下: SD卡,存储音频文件。 喇叭,播放音频 富芮坤 FR3068x-C 开发板,运行 MicroPython 固件 音频文件转换 使用 ffmpeg 工具把 MP3 文件转换为 WAV 文件。 从第15秒钟开始转换音乐文件 ffmpeg/ffmpeg.exe -i apple.mp3 -ac 1 -ar 16000 -acodec pcm_s16le -ss 00:00:15 -t 00:01:15 apple.wav 部分shell命令 传输音频文件 开发板和上位机通过串口传输文件,使用 Xmodem 或者 Ymodem,需要在开发板实现对应的 shell 命令,并支持把文件写入 SD 卡。 开发板shell命令接收音频文件 rxfile filepath filesize filepath 表示文件在SD上的文件路径,例如 2:/apple.wav filesize 表示wav文件的大小,以字节为单位,例如 apple.wav 文件在磁盘的大小为 2400130 字节 例如开发板shell命令中输入 rxfile 2:/apple.wav 2400130 命令,然后在上位机工具通过 Xmodem 发送 apple.wav 文件,如下图所示: 传输完毕,开发板打印 res:1 shell 播放音频 打开功放 dacpa 1 关闭功放 dacpa 0 播放音频 dacplay 2:/apple.wav 停止播放 dacstop 调整音量 dacvolume 20 micropython 播放音频 从shell进入micropython环境,输入命令 micropython。 从 micropython 环境退出,按住 ctrl+d 组合键。 输入以下代码播放音频 python import pyb audio = pyb.AUDIO(1) # 开始播放 audio.play("2:/apple.wav") # 停止播放 audio.stop() # 调节音量 audio.volume(5) # PA 开 audio.mute(0) # PA 关 audio.mute(1) 视频演示
  • 热度 17
    2015-11-12 18:55
    1031 次阅读|
    0 个评论
        广州创龙拥有TI C2000/C5000/C6000/DaVinci/KeyStone/Sitara、Xilinx Spartan/Virtex、Altera Cyclone/Stratix等系列产品线,推出基于DSP+ARM+FPGA三核架构的数据采集处理解决方案,广泛应用于工控、电力、通信、仪器仪表、图像、音视频处理等行业。     TL138F-EVM使用OMAP-L138和Xilinx Spartan-6架构,提供FPGA入门教程、丰富的Demo程序、完整的软件开发包,以及详细的DSP+ARM+FPGA系统开发文档,还协助客户进行底板的开发,提供长期、全面的技术支持,帮助客户以最快的速度进行产品的二次开发,实现产品的快速上市。     作为嵌入式领域的领导者,广州创龙注重产品质量和技术支持,致力于让客户减少研发成本、降低设计难度、缩短开发周期,使产品快速上市,是主板定制合作首选企业。 广州创龙,您身边的主板定制专家!
  • 热度 15
    2014-3-19 23:43
    803 次阅读|
    0 个评论
    上周日,几个朋友去黄河边飚车,我的车很一般,丰田普拉达,朋友的几台牧马人、酷路泽等,但是第一个冲下大的滑道的是我和车上的朋友,随后,那几个车也冲了下去,当我车里的朋友耐心和他们讲解河边需要注意淤泥,怎么打方向盘,怎么加油和尽量避免时,他们已经迫不及待的想飙上几圈,没过多久,一个牧马人就陷进了淤泥,几经折腾,却越陷越深,动弹不得……经验告诉我们,好车不如经验好的驾手,若是以为自己的车子很优秀,贸然行动也是很失败的结果;也有些和我玩单反的朋友,没事出去感受自然,我的单反很一般,只是很顺手而已,他们的单反基本都是全画幅配了白头,性能上肯定一流,创作激情更是没得说,因为他们的兴趣被我带动的,所以都称我为老师。因为都市村庄**,这4、5个朋友每个人家里都有7,8百平方的房产,称为土豪更为合适,玩摄影,更多的是心里的攀比,也有些想提升自己的修养,不喜欢让别人称他们是土豪,经验告诉我们,好的器材创作激情是高涨的,但是好的器材不一定就能照出来好的作品,好的摄影师用5千的相机更能比滥竽充数的用5万的相机照出来的照片有质量。对于一个好的摄影师,好的相机就是锦上添花,对于滥竽充数者来说,就是高档的玩耍而已……我们来说说这发烧友吧,我想这里边有很多经验丰富的烧友,对于音乐有很高的修为,也有很多打脸充胖子,自认为什么都对的人,实际站在自己的角度也没有错与对,只是角度不同。比如一些烧友,认为买了1万器材至少搭配1万的线材,这样器材的性能能够翻好几倍,这个我想不用说,多数发烧友也会知道的结果,那是不可能的,但你能说他的想法愚蠢吗?他说的搭配,站在他的立场就是对的,我们需要自己认真分析适合自己的才行。如果买辆10万的国产车,作为代步应该够用了,但是买了Q7我们追求的更多的是性能,就不追求性价比了,但是用到了不合适的场合也发挥不了车的性能,若是把Q7放到黄河边去飚车,我想在优秀的车手也会力不从心的,因为它是为城市而设计的。我们来到天逸论坛,更多的是想要了解天逸的功放,那么我们谈论一些高端的搭配就失去了意义了。我想买台长城汽车,而你非得给我介绍凯迪拉克多么出众,那你觉得你介绍的有多大用处呢?来到这里,我们更多的人是想花最少的钱,出更为优秀的声音,而不切实际、不计金钱的搭配也就失去了意义,花上万买线材搭配天逸功放更是扯淡,当然你非得愿意买一万的器材在搭配一万的线材,谁都管不着,人家浩浩还买了那么多天逸的功放呢,这也是执着把。音乐没有愚蠢,只有适合不适合,不懂音乐的土豪买上百万器材放着只会落土,一个买了稍微高端的设备来这里显摆,我觉得也没什么意思,去了高端论坛可能就啥都不是了,我们更多的需要帮助这里边想买天逸的朋友,一个经验,一个共识而已,我估计这里边的朋友更多的需要的是性价比,买的起的搭配,听自己能够承受得起的器材才是正道。 转自:http://www.tonewinner.com/bbs/showtopic.aspx?topicid=15941forumpage=1typeid=-1page=2
  • 热度 18
    2013-11-26 11:26
    1265 次阅读|
    1 个评论
      IT6604  合冠一级代理 15986840536 IT6604品牌:ITE IT6604封装:TQFP128 IT6604包装:900/BOX General Description   The IT6604 is a single-link HDMI receiver, fully compatible with HDMI 1.3, compatible with HDMI 1.4a   3D and HDCP 1.4 compliance specification and also backward compatible to DVI 1.0 specifications.   The IT6604 with its Deep Color capability (up to 36-bit) ensures robust reception of high-quality   uncompressed video content, along with state-of-the-art uncompressed and compressed digital audio   content such as DTS-HD and Dolby TrueHD in digital televisions and projectors. The IT6604 also                                                                                                                                           supports all the primary 3D formats which are compliant with the HDMI 1.4a 3D specification.                                                                 Aside from the various video output formats supported, the IT6604 also receives and provides up to 8                                                               channels of I S digital audio outputs, with sampling rate up to 192kHz and sample size up to 24 bits,                                                             facilitating direct connection to industry-standard low-cost audio DACs. Also, an S/PDIF output is                                                          provided to support up to compressed audio of 192kHz frame rate. Super Audio Compact Disc (SACD)                                                       is supported at up to 8 channels and 88.2kHz through DSD (Direct Stream Digital ports) ports.                                                                                                                                                                         2 The High-Bit Rate (HBR) audio is also provided by the IT6604 in two interfaces: with the four I  S input                                                                                           ports or the S/PDIF input port. With both interfaces the highest possible HBR frame rate is supported                                                                                      at up to 768kHz.                                                                                                                                            Each IT6604 comes preprogrammed with an unique HDCP key, in compliance with the HDCP 1.4                                    , standard so as to provide secure transmission of high-definition content. Users of the IT6604 need not                                  purchase any HDCP keys or ROMs.                              The IT6604 is pin compatible with the IT6603, the previous generation single-link HDMI 1.3 receiver.                             Single-link HDMI 1.4 receiver               Pin compatible with IT6603             Compliant with HDMI 1.3, HDMI 1.4a 3D, HDCP 1.4 and DVI 1.0 specifications            Supporting link speeds of up to 2.25Gbps (link clock rate of 225MHz).         Supporting all the primary 3D formats which are compliant with the HDMI 1.4a3D specification.        Supporting 3D video up to 1080P@50/59.95/60Hz, 1080P@23.98/24/29.97/30Hz,        1080i@50/59.94/60/Hz, 720P@23.98/24/29.97/30Hz, 720P@50/59.94/60Hz        Supporting formats: Framing Packing, Side-by-Side ( half ), Top-and-Bottom.     Video output interface supporting digital video standards such as:        24/30-bit RGB/YCbCr 4:4:4  
  • 热度 20
    2012-11-26 13:41
    1354 次阅读|
    0 个评论
    现在将通过阅读代码,看看redboot是如何启动的,这是每个系统执行的第一步,也是不可缺少的一步。这部分会分几篇完成,这是第一部分,主要是一个概要介绍。 由于系统启动跟硬件的紧密关系,所以在不同的硬件平台下,这部分都会有相应不同的处理。 下面这幅图来自《EMBEDDED SOFTWARE DEVELOPMENT WITH ECOS》书中,介绍了一款PowerPC的设备启动流程。   而这里,仍将介绍PC下的启动流程,通过阅读代码可以了解其具体的执行步骤,也可以通过修改代码重新编译、运行前面介绍的实验,查看结果。在阅读代码的过程中,最好结合实验,这样能够证实系统是否象我们理解的那样运行。 在今后,会进一步分析eCos操作系统的其他部分代码结构,比如:调度,驱动等等。 也会对其他不同体系架构(如 mips arm)下的代码进行分析阅读。 在Redboot最先执行的文件通常命名为 vectors.S 因为我们是i386架构下,所以可以在下面目录下找到相应文件: package/hal/i386/arch/v2_0/src/vectors.S 程序执行的入口是 _start 。 从 _start 处开始执行,至 call cyg_start 完成启动部分。 在函数 cyg_start 中,将进入 Redboot的执行流程。 这并不是很长的一段代码,却完成了整个PC的启动和初始化的部分。其中相当部分代码为汇编,所以要阅读这些代码必须首先对i386体系结构有基本的了解。   虽然 Redboot的启动过程已经相对简单,它没有使用分页机制,也没有区分内核态和用户态。 所有的代码都被放在一个段中统一编址。只使用了两个段(selector)一个为code,另一个为data。这个对于redboot的size(大概在100k左右吧)已经足够了。 如果对于一个操作系统来讲,这是一个相当程度简化的操作系统。即便如此,启动过程也不是一目了然的清晰。所以,这里仍然会忽略掉一些不太必要的内容,比如对SMP,FPU,GDB的支持等等。 整个启动过程中大概分为以下几个部分: 1. boot-loader: 这部分的工作就是将代码加载(load)到内存中,对于不同的设备,代码会装在不同的地方,通常PC会放在硬盘里面,某些嵌入式设备会把代码放在ROM(一般是flash)里面,而这里是放在软盘里面。boot-loader就是把软盘的代码load至内存,然后运行它们。 2. 进入保护模式,对于i386体系架构的cpu上电后缺省时实模式,内存访问空间也只有1M,这只是为了跟最初的8086兼容,所以要进入保护模式。 3. 初始化中断向量和异常。 4. 初始化基本的输入输出设备,如显示器,键盘,串行口等等。 5. 其他还有一些零散的初始化工作。 从下次开始将按运行次序对启动过程进行介绍。     _start 之后的第一行是一个宏 hal_cpu_init , 该宏定义在package/hal/i386/pcmb/v2_0/include/pcmb.inc 文件中。 由于从软盘引导,所以 hal_cpu_init分为两部分: 一部分是引导分区部分(以0xAA55结束),另一部分的功能是使CPU进入保护模式。 解释:PC上电后会进入BIOS, BIOS会检测磁盘(软盘和硬盘),如果软盘(或硬盘)的第一个分区是引导分区(以 0xAA55结束为标志)则将软盘的第一个分区内容加载到内存 0x7c00处,并运行它。 引导分区被运行之后,将整个redboot逐个分区地加载到0x3000为起始地址的内存空间。 注意:这个过程,引导分区内容会再次被加载到0x3000处,且马上会跳转到0x3000处执行引导分区的代码。而0x7c00处的内容会在后面被覆盖掉。 在执行加载工作前,会先执行两个小任务: 1. 设置栈,栈顶为0x3000 2. 通过BIOS提供的中断,得到扩展内存和标准内存大小,压入栈中 引导分区代码结束后,程序将进入保护模式。大概次序如下: 1. 关中断 2. 初始化GDT和IDT 3. 进入保护模式 4. 设置数据段 5. 重新设置栈段(因为保护模式和实模式,内存编址方式不同) GDT主要用两个Selector分别是 0x08 (code) 和 0x10 (data)。 寻址空间都是从0x00000000 - 0xFFFFFFFF 特权级(DPL)为 0 IDT的地址为:0x1000 这部分比较复杂,这里不在详细说明,如果有时间,会在讨论i386架构的文章里,详细说明。而有关这部分的资料也相当丰富,可以在网上搜寻。 到这里 hal_cpu_init 已经执行结束了 ,不过进入保护模式还需要 激活A20地址线 。不激活A20地址线只能访问1M空间内的内存,激活A20才能访问所有内存。这个任务在另外一个宏 hal_memc_init 中实现,它位于文件 packages/hal/i386/arch/v2_0/include/arch.inc 这样,就完成了加载和进入保护模式的任务。   进入保护模式之后做以下工作: 设置中断栈空间,在之前栈定义在小于0x3000的内存空间中。通过 movl $__interrupt_stack, %esp 将栈重新设置在__interrupt_stack处,并分配了4096kB的栈空间。 栈大小也可以通过改变cdl文件进行调整。   hal_idt_init(packages/hal/i386/pc/v2_0/include/platform.inc) 设置idt向量, 回头会在介绍中断的文章中介绍这部分。 BSS段初始化(清零) 解释: BSS(Block Started by Symbol)用来存放程序中未初始化的全局变量的一块內存区域,属于静态內存分配。   hal_platform_init(packages/hal/i386/pc/v2_0/src/plf_misc.c) 这部分是内容比较多,也比较重要。主要为 初始化 中断,异常 以及虚拟向量表。 初始化虚拟向量表的工作通过调用函数 hal_if_init 来完成 在eCos中设置了3张向量表,idt, hal_vsr_table, hal_virtual_vector_table 内存地址如下: idtStart = 0x00001000; hal_vsr_table = 0x00001800; hal_virtual_vector_table = 0x00001c00; idt 是硬件实际设置的中断区域,当中断发生后进入调用idt的中断向量。而eCos将idt的中断向量有指向 hal_vsr_table (猜测是为了隔离不同的cpu中断机制不同,专门设置了hal_vsr_table,使其中断处理方式一致) 在 hal_platform_init 函数中,初始化所有中断(和异常),设定为缺省的中断处理例程,以防止有中断意外发生,造成程序进入未知状态。 有关中断,异常,虚拟向量等相关处理机制内容比较多,会在以后的文章具体介绍。 cyg_hal_invoke_constructors 这个函数主要执行相关的构造函数,因为ecos一部分代码是用c++写的,所以有些类具有构造函数,需要在首先执行,这里面做这部分的处理。   cyg_start 最后则进入主函数 cyg_start, 这个函数中,首先执行外围设备的初始化,之后就开始轮询处理用户输入的命令。 以上就是Redboot启动的全过程
相关资源
  • 所需E币: 1
    时间: 2022-7-23 11:01
    大小: 142.24KB
    上传者: Argent
    PVvariableofPAinstrumentintheControlLogix
  • 所需E币: 1
    时间: 2022-7-23 10:51
    大小: 136.25KB
    上传者: Argent
    ConfiguringProfibusPAintoRSLogix5000
  • 所需E币: 1
    时间: 2022-7-23 10:52
    大小: 142.24KB
    上传者: Argent
    ReadingProfibusPADatafromControlSistem
  • 所需E币: 0
    时间: 2021-3-24 13:03
    大小: 6.47MB
    上传者: stanleylo2001
    安捷伦的中文培训教材(PA,LNA)
  • 所需E币: 0
    时间: 2021-3-21 20:21
    大小: 6.47MB
    上传者: Goodluck2020
  • 所需E币: 0
    时间: 2020-9-28 19:01
    大小: 1.14MB
    上传者: LGWU1995
    穿越电流测量的无人区-pA等级电流测量
  • 所需E币: 0
    时间: 2020-8-24 17:54
    大小: 6.66MB
    上传者: samewell
    安捷伦的中文培训教材(PA,LNA).pdf
  • 所需E币: 1
    时间: 2020-8-14 16:20
    大小: 5.11MB
    上传者: zendy_731593397
    PA测试介绍5G测试介绍
  • 所需E币: 5
    时间: 2019-12-28 23:49
    大小: 141KB
    上传者: 2iot
    Microcoaxial"pigtails"areaninvaluabletoolforanyonetryingtodiagnoseorrepairRFsignalpathissues.Ifappliedcarefully,theycanbeusedtocharacterizenetworksuptoandbeyond5GHz.Thisnotegivesageneraloverviewoftheirversatilityandpresentstechniquesforproperapplication.……
  • 所需E币: 5
    时间: 2019-12-28 23:49
    大小: 140KB
    上传者: 2iot
    Microcoaxial"pigtails"areaninvaluabletoolforanyonetryingtodiagnoseorrepairRFsignalpathissues.Ifappliedcarefully,theycanbeusedtocharacterizenetworksuptoandbeyond5GHz.Thisnotegivesageneraloverviewoftheirversatilityandpresentstechniquesforproperapplication.……
  • 所需E币: 5
    时间: 2019-12-24 19:26
    大小: 180.6KB
    上传者: wsu_w_hotmail.com
    摘要:本应用笔记介绍了如何使用内置的实用工具光盘的MAXQ7665微控制器(μC)的程序和数据闪存擦除/写。此信息适用于那些(MAXQ7665)基于闪存的页擦除(PE)闪存μCs。Maxim>AppNotes>AUTOMOTIVEBASESTATIONS/WIRELESSINFRASTRUCTUREKeywords:Pa,MAXQ76XXgeErasableProgramNov27,2006APPLICATIONNOTE3576In-ApplicationProgramming(IAP)oftheMAXQ7665Page-Erasable(PE)ProgramandDataFlashAbstract:Thisapplicationnotedescribeshowtoerase/writetheprogramanddataflashintheMAXQ7665microcontrollers(C)usingthebuilt-inutilityROM.ThisinformationappliestothoseMAXQ7665flash-basedCswithpage-erasable(PE)flash.IntroductionThisapplicationnotedescribeshowtomanagetheinternaldataandprogramflashintheMAXQ7665flash-basedmicrocontrollers(C)withpage-erasable(PE)flashmemory.Thisdiscussionincludesgeneralinformationforperformingin-applic……
  • 所需E币: 4
    时间: 2019-12-24 19:17
    大小: 83.77KB
    上传者: givh79_163.com
    摘要:本应用笔记介绍的MAX2265功率放大器(PA)测量的性能数据时使用EDGE8PSK调制。+18.5dBm的功率是在925MHz至960MHz的频段。与5V电源,340毫安被用来提供的EVM优于1%。Maxim>AppNotes>BASESTATIONS/WIRELESSINFRASTRUCTUREWIRELESS,RF,ANDCABLEKeywords:rf,rfic,pa,poweramplifiers,wirelessics,gsm,edge,rfcircuit,rfics,PAs,rfics,poweramplifierJan09,2003APPLICATIONNOTE1829TheMAX2265IsIdealforEDGEBase-StationPre-DriverApplicationsAbstract:ThisapplicationnotepresentsmeasuredperformancedatafortheMAX2265poweramplifier(PA)whenusedforEDGE8PSKmodulation.+18.5dBmpowerwasobtainedinthe925MHzto960MHzband.Witha5Vpowersupply,340mAwereusedtoprovideEVMbetterthan1%.AdditionalInformation:qWirelessProductLinePageqQuickViewDataSheetfortheMAX2265qApplicationsTechnicalSupportIntroductionManyGSMoperatorsarebeginningto……