MM32
文章平均质量分 95
应用国产灵动微控制器应用的一些话题。
suyong_yq
屌丝程序员:喜欢乒乓球,喜欢听歌,喜欢写程序,喜欢吃零食,喜欢睡觉。
展开
-
系统工程 - 记录一次调试USB设备低功耗应用的过程
最近在同客户做机械键盘的产品设计,我们SE系统工程团队为客户设计了一套使用灵动MM32F0160微控制器的机械键盘原型电路板,用于评估原型方案。随着同客户不断沟通,客户进一步细化了需求,这次对低功耗特别提了要求:根据USB规范约定,当电脑处于待机状态时,USB设备从USB线缆上获取的电流不能超过2.5mA,这个2.5mA不仅仅是MCU的工作电流,而是整个USB设备电路板的工作电流!原创 2023-06-19 14:42:53 · 996 阅读 · 0 评论 -
Cache技术在星辰处理器中的应用
本文从修复MicroPython启动程序在MM32F5微控制器上比较慢的问题,体验了星辰处理器中Cache的作用。简单介绍了Cache的工作原理和机制,重点介绍了使用Cache可能存在的风险,并进一步探讨了如何能用到Cache高速存取的同时避免数据不一致的情况。原创 2023-06-15 21:26:52 · 698 阅读 · 0 评论 -
灵动超值系列FTHR-G0140开发板
MM32G0140微控制器是国产灵动微电子发布的一款基于Arm Cortex-M0处理器内核的微控制器,最高主频可达72MHz,片内集成64KB Flash和8KB SRAM,以及一些常规的外设模块,主要面向小型的嵌入式系统应用,例如工业控制、消费电子、智能家居等领域。MM32G0140也是灵动MM32G超值系列的第一款产品,对标国际一线大厂的同类产品。在灵动微电子的官网可以找到MM32G0140微控制器的产品。如图x所示。图x 灵动官网上的MM32G0140微控制器。原创 2023-06-10 00:14:28 · 773 阅读 · 0 评论 -
MicroPython应用基础-准备MicroPython开发板
基于ICAR-F5270开发板,准备硬件、软件,然后编译MicroPython固件下载到MM32F5270微控制器上,最后基于MicroPython在微控制器上开始运行第一句Python脚本。原创 2023-05-26 23:13:05 · 1145 阅读 · 0 评论 -
使用MindSDK的at-server组件开发从机模组
MindSDK中的`at-server`组件,应用逻辑还是相当清晰的,抽象出了绑定硬件的函数对象、命令集等,自定义命令和注册回调函数也非常方便。at-server对于小资源微控制器来说,可是个福音,在基于主从机交互的应用环境中,将微控制器作为一个仅连接电路系统的控制器,解析并执行来自主机的命令,将大算力和大存储需求的算法和应用逻辑转移到主机(PC机)上。如此以来,不通硬件和不愿意看微控制器开发手册的Python算法工程师,也可以试着让自己的程序控制电路啦。原创 2023-05-08 17:24:39 · 915 阅读 · 0 评论 -
小巧“抠门”的FTHR-F0140开发板
介绍使用MM32F0140微控制器的FTHR-F0140开发板原创 2023-04-11 15:13:21 · 730 阅读 · 0 评论 -
CAN总线开发一本全(4) - FlexCAN的驱动程序
MindSDK中设计的FlexCAN驱动程序,对FlexCAN外设进行了建模,创建了一系列数据结构和API,能够为软件开发者提供初始化FlexCAN通信引擎,通过MB的结构类型发送数据帧、远程帧等功能。MindSDK为FlexCAN驱动设计的一些样例工程,演示了在一些典型应用场景中(回环通信、板对板直接通信、板对板请求远程帧通信)使用FlexCAN驱动的方法。原创 2023-02-26 12:50:27 · 1426 阅读 · 0 评论 -
CAN总线开发一本全(3) - 微控制器集成的FlexCAN外设
本文描述了一个典型的CAN总线通信引擎FlexCAN外设模块的工作机制。FlexCAN总线以消息缓冲区MB作为数据缓冲单元,收发通信过程同典型的基本通信类引擎(例如UART)相似,但由于CAN总线以通信帧作为基本通信单元(包含ID和最多8个字节的数据负载),而不是基本通信引擎的单元数据,所以需要一个协议引擎,同步地在总线和MB之间搬运包含数据和状态的帧属性信息。CAN总线是一个多对多的网络,因此也引入了网络型通信引擎的问题,例如接收过程的目标地址(ID)匹配,和发送过程中的仲裁(冲突检测)。原创 2023-02-24 15:18:52 · 2484 阅读 · 0 评论 -
在魔改PLUS-F5280开发板上使用合封qsp iflash
由于目前灵动官网暂未发布正式版的PLUS-F5280开发板,可以使用现有的PLUS-F5270 v1.2开发板(下文简称PLUS-F5270开发版)替换为MM32F5280微控制器芯片,改装为PLUS-F5280开发板。本文记录了使用现有的PLUS-F5270开发板评估MM32F5280微控制器的软硬件调整过程。原创 2023-02-16 15:51:41 · 622 阅读 · 0 评论 -
使用sdk-npi-enablement-tool生成SVD文件和芯片头文件
本文详细说明了如何使用灵动软件与系统工程组自主开发的`sdk-npi-enablement-tool`工具包,完成SVD文件局部更新的操作过程。原创 2023-01-19 01:21:57 · 3460 阅读 · 3 评论 -
使用轻量级图像解码器TJpgDec - 基于MM32F5微控制器和MindSDK
本文简单介绍了TJpgDec组件的情况,以及汇总了关于TJpgDec组件的所有必要的资料,然后对原作者描述的移植接口进行了详细的解释,补充一部分原作者在网页中简要带过的内容,最后在使用国产灵动微电子的MM32F5277E9P(Arm Cortex-MC1处理器)的plus-f5270开发板上进行具体移植,使用静态内存分配的方式换掉动态内存的用法。原创 2022-12-28 14:45:42 · 2474 阅读 · 0 评论 -
在ARM微控制器上部署MATLAB/Simulink仿真模型
本文详细演绎了从Simulink创建模型,仿真验证,之后再生成C源码部署到plus-f5270开发板的全过程。 其中描述的方法和操作步骤,为后续部署更多仿真模型奠定了基础。原创 2022-12-21 12:21:13 · 2619 阅读 · 0 评论 -
在MM32F5微控制器上使用外扩SRAM作为主内存
MM32F5微控制器基于Arm STAR-MC1微控制器,最高主频可达120MHz,集成了FPU单元和DSP扩展指令集,有不错的算力。但片内集成的128KB的RAM和256KB的FLASH,如果想支持代码量比较大的软件框架,就可能会力不从心,例如,TensorFlow Lite或者基于MicroPython的OpenMV这样的应用就需要更多的内存空间做缓存。但MM32F5微控制器带有FSMC接口和QSPI接口并支持基于QSPI的XIP(eXecute In Place,就地执行),可以分别外扩SRAM和FL原创 2022-08-15 16:01:32 · 939 阅读 · 2 评论 -
在MicroPython中启用基于spiflash的LFS挂载文件系统
自顶向下逐步启用mpy-cross编译,将Python程序集成到固件中自底向上逐步添加sfud组件并启用lfs合龙,创建mm32f3.flash模块,封装sfud,并由集成到固件中的Python程序调用mm32f3.flash模块。原创 2022-07-30 22:42:32 · 929 阅读 · 0 评论 -
使用DAP-Link单独下载可执行文件到MM32F5微控制器
单独下载可执行文件到MM32F5微控制器suyong_yq,2022年5月文章目录单独下载可执行文件到MM32F5微控制器引言借用Keil工程使用Ozone引言使用Keil MDK或者IAR等使用图形界面的开发环境,可以在图形界面环境下编译源码工程,并下载编译生成的可执行文件到目标微控制器中。但若使用ARMGCC等命令行工具链,需要额外的下载工具,才能将编译生成的可执行文件下载到目标微控制器中。若使用SEGGER J-Link调试器,可以搭配SEGGER Ozone软件或者J-FLASH、J-FL原创 2022-05-30 10:23:58 · 4975 阅读 · 0 评论 -
配置MM32微控制器引脚复用功能
配置MM32微控制器引脚复用功能文章目录配置MM32微控制器引脚复用功能IntroductionAlgorithmGPIOx_CR寄存器GPIOx_AFR寄存器GPIOx_CR & GPIOx_AFR寄存器TIMUARTSPI_MASTERSPI_SLAVEI2CCANADCFSMCQSPIDACCOMPSDIOUSBPraticeConclusionIntroduction使用过NXP(FSL)微控制器的开发者在配置引脚复用功能时,直接在PORT模块中,对应引脚的的PCR寄存器的MUX字段原创 2022-04-26 22:32:52 · 1949 阅读 · 0 评论