解析灵动微MCU MM32SPIN0230的USART实现SPI读写Flash存储器方法
本文中MindMotion将为大家介绍MCU MM32SPIN0230的USART实现SPI读写Flash存储器的方法。
MM32SPIN0230的USART简介
MM32SPIN0230通用同步/异步收发器(USART)可以灵活地与外部设备进行全双工数据交换。通过内置波特率(包含整数及小数设定)发生器, USART 可以支持宽范围的波特率。
USART 支持异步模式(UART)、同步模式。其中 UART 支持单线半双工通信, UART 和同步模式支持调制解调器(CTS/RTS)操作。
MM32SPIN0230的USART功能框图
USART 的功能框图如下图1所示,由寄存器相关的控制单元、收发数据控制器、时钟控制器、硬件流控制单元以及引脚控制逻辑单元组成。
图1 MM32SPIN0230 USART功能框图
USART的同步模式
通过配置,USART_CR1.SAS 位为‘1’来使能同步模式(时钟引脚功能将同时有效)。
在同步模式下, USART_CR3.HDSEL 位应配置为‘0’。
同步模式支持主模式和从模式:主模式时使用内部波特率生成器生成的时钟,同时输出时钟;从模式时由 SCLK 引脚输入时钟。USART 在同步模式下,能与 SPI 实现数据通信(此时,用户应配置 SPI 与USART 的时钟极性、时钟相位为一致)。
USART的时钟
USART的时钟挂载在APB1总线上,由APB1总线提供工作时钟,以配置USART_CR2.CLKEN位为‘1’来使能时钟引脚功能, 同时根据USART_CR3.CKINE位配置来选择使用内部波特率时钟或从SCLK引脚输入时钟,以进行数据通信。
当选择内部波特率时钟时,可通过SCLK引脚输出同步时钟。
1帧数据的收发包含8个时钟脉冲。
当RE和TE都为‘0’, 时钟输出会停止, 并固定在USART_CR2.CPOL配置的电平。
通过配置USART_CR2.CPOL位选择时钟极性。
通过配置USART_CR2.CPHA位选择外部时钟相位。
USART时钟同步功能
SCLK 引脚作为发送器的时钟输出时,仅在数据段输出时钟,一帧数据输出 8 个时钟脉冲,最后一位发送完后,通信线保持最后一位的值,时钟输出固定在高电平或低电平(由 CPOL 位决定)。
USART 接收器在同步模式下的工作方式与异步模式下不同。如果RE=1,则数据在SCLK变化边沿上采样(上升或下降沿,取决于CPOL和CPHA位配置情况),而不会进行任何过采样。此时必须确保足够的建立时间和保持时间,以符合时序要求(类同于SPI协议)。
内部时钟源时,内部波特率生成器生成的波特率计算公式为:
其中通信波特率的单为MBps;PCLK 为内部时钟源的频率;MFD为波特率寄存器USART_BRR中整数分频(注意,在同步模式下应配置MFD≥2, 且小数分频FFD无效, 用户应配置FFD[3:0] 位为4’h0)。
使用内部时钟源且MFD=2时,同步模式的最高波特率为PCLK/8(MBps)。
外部时钟源时,要求外部输入时钟的最大频率为PCLK/8( MHz),此时最高波特率也为PCLK/8(MBps)。
USART的特性描述
如下图2所示为USART的数据帧类型示意图,当USART用作同步通信时,可通过配置同步时钟引脚即USART_SCK引脚的时钟极性和时钟相位实现SPI功能的通信。此时没有起始位,校验位以及停止位功能,仅支持8位。通过配置时钟极性CPOL和时钟相位CPHA可以实现基于USART的SPI通信的工作模式0-3。
图2 MM32SPIN0230 USART数据帧类型示意图
USART同步模式实现SPI通信的配置步骤
MM32SPIN0230有一路USART1,USART1同步模式实现SPI通信的配置步骤如下所示。
使能USART1的时钟和用作USART1的GPIO时钟
●配置GPIO复用为USART1功能
●配置一路普通GPIO为推挽输出模式用于USART同步通信的CS引脚
●配置 USART1_CR1.SAS 位为‘1’来使能同步模式(时钟引脚功能将同时有效)
●配置 USART1_CR1.MLS 位为‘0’或 为‘1’来选择数据格式为LSB或MSB
●配置 USART1_CR3.HDSEL位为‘0’来选择数据通信为全双工模式
●配置 USART1_CR2.CPOL位为‘0’ 或 为‘1’设置时钟空闲时为低电平或高电平
●配置 USART1_CR2.CPHA位为‘0’ 或 为‘1’设置在时钟第一个变化沿捕获数据或在时钟第二个变化沿捕获数据
●配置USART1_BRR波特率寄存器小数分频FFD[3:0]为0(USART同步模式,波特率小数分频无效)
●配置USART1同步模式波特率,USART1_BRR波特率寄存器整数分频MFD[15:0],需配置MFD>=2
●使能USART1接收和发送中断以及NVIC中断优先级(如有使用到USART接收和发送中断功能)
●使能USART1功能
●编写应用层USART1同步通信模式下数据接收、数据发送函数以及中断处理接收和中断发送函数。(如使能了接收和发送中断功能)
USART同步模式实现SPI通信 读写W25Q32存储器
根据以上配置步骤USART1同步模式实现SPI通信的配置步骤,使用MM32SPIN0230的库函数配置USART1为同步模式主机功能实现SPI通信读写W25Q32 Flash存储器,分别配置GPIO PA11复用为USART1_TX功能,PA12复用为USART1_RX功能,PB2复用为USART1_SCLK功能(注:USART1用作同步模式主机功能PA11 USART1_TX当做SPI_MOSI引脚使用,PA12 USART1_RX当做SPI_MISO引脚使用,PB2 USART1_SCLK当做SPI_SCL使用)并配置GPIO PB4为推挽输出模式当做SPI_CSS引脚使用。
USART1同步通信模式实现SPI通信的初始化代码如下所示:
#define SPI_FLASH_CS_H() GPIO_WriteBit(GPIOB, GPIO_Pin_4, Bit_SET)
#define SPI_FLASH_CS_L() GPIO_WriteBit(GPIOB, GPIO_Pin_4, Bit_RESET)
uint16_t DeviceID = 0; /* W25Q32 Device ID */
uint32_t JEDEC_ID = 0; /* W25Q32 JEDEC ID */
void USART_Configure(uint32_t Baudrate)
{
GPIO_InitTypeDef GPIO_InitStruct;
NVIC_InitTypeDef NVIC_InitStruct;
RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART1, ENABLE);
USART_SyncMasterConfig(USART1, USART_Clock_Idle_Low, USART_Clock_Phase_1Edge, Baudrate); /* USART Init configure SPI Mode0 */
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA, ENABLE);
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOB, ENABLE);
GPIO_PinAFConfig(GPIOA, GPIO_PinSource11, GPIO_AF_5); /* PA11 AF USART_TX for SPI_MOSI function */
GPIO_PinAFConfig(GPIOA, GPIO_PinSource12, GPIO_AF_5); /* PA12 AF USART_RX for SPI_MISO function */
GPIO_PinAFConfig(GPIOB, GPIO_PinSource2, GPIO_AF_6); /* PB2 AF USART_SCLK for SPI_SCLK function */
GPIO_StructInit(&GPIO_InitStruct);
GPIO_InitStruct.GPIO_Pin = GPIO_Pin_4;
GPIO_InitStruct.GPIO_Speed = GPIO_Speed_High;
GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP; /* PB4 for SPI_CSS function */
GPIO_Init(GPIOB, &GPIO_InitStruct);
SPI_FLASH_CS_H(); /* Set PB4 for SPI_CSS High leve */
GPIO_StructInit(&GPIO_InitStruct);
GPIO_InitStruct.GPIO_Pin = GPIO_Pin_11;
GPIO_InitStruct.GPIO_Speed = GPIO_Speed_High;
GPIO_InitStruct.GPIO_Mode = GPIO_Mode_AF_PP;
GPIO_Init(GPIOA, &GPIO_InitStruct);
GPIO_StructInit(&GPIO_InitStruct);
GPIO_InitStruct.GPIO_Pin = GPIO_Pin_12;
GPIO_InitStruct.GPIO_Speed = GPIO_Speed_High;
GPIO_InitStruct.GPIO_Mode = GPIO_Mode_FLOATING;
GPIO_Init(GPIOA, &GPIO_InitStruct);
GPIO_StructInit(&GPIO_InitStruct);
GPIO_InitStruct.GPIO_Pin = GPIO_Pin_2;
GPIO_InitStruct.GPIO_Speed = GPIO_Speed_High;
GPIO_InitStruct.GPIO_Mode = GPIO_Mode_AF_PP;
GPIO_Init(GPIOB, &GPIO_InitStruct);
NVIC_InitStruct.NVIC_IRQChannel = USART1_IRQn;
NVIC_InitStruct.NVIC_IRQChannelPriority = 0x01;
NVIC_InitStruct.NVIC_IRQChannelCmd = ENABLE;
NVIC_Init(&NVIC_InitStruct);
USART_Cmd(USART1, ENABLE);
}
USART1同步通信模式中断接收数据,代码如下所示:
void USART_Synchronous_RxData_Interrupt(uint8_t *Buffer, uint8_t Length)
{
uint8_t i = 0;
for (i = 0; i < Length; i++)
{
USART_RxStruct.Buffer[i] = 0;
USART_TxStruct.Buffer[i] = 0;
}
USART_RxStruct.Length = Length;
USART_RxStruct.CurrentCount = 0;
USART_RxStruct.CompleteFlag = 0;
USART_TxStruct.Length = Length;
USART_TxStruct.CurrentCount = 0;
USART_TxStruct.CompleteFlag = 0;
USART_ITConfig(USART1, USART_IT_RXNE, ENABLE);
USART_ITConfig(USART1, USART_IT_TXE, ENABLE);
while (0 == USART_TxStruct.CompleteFlag)
{
}
while (0 == USART_RxStruct.CompleteFlag)
{
}
for (i = 0; i < Length; i++)
{
Buffer[i] = USART_RxStruct.Buffer[i];
}
}
USART1同步通信模式中断发送数据,代码如下所示:
void USART_Synchronous_TxData_Interrupt(uint8_t *Buffer, uint8_t Length)
{
uint8_t i = 0;
for (i = 0; i < Length; i++)
{
USART_RxStruct.Buffer[i] = 0;
USART_TxStruct.Buffer[i] = Buffer[i];
}
USART_RxStruct.Length = Length;
USART_RxStruct.CurrentCount = 0;
USART_RxStruct.CompleteFlag = 0;
USART_TxStruct.Length = Length;
USART_TxStruct.CurrentCount = 0;
USART_TxStruct.CompleteFlag = 0;
USART_ITConfig(USART1, USART_IT_RXNE, ENABLE);
USART_ITConfig(USART1, USART_IT_TXE, ENABLE);
while (0 == USART_TxStruct.CompleteFlag)
{
}
while (0 == USART_RxStruct.CompleteFlag)
{
}
}
USART1同步通信模式读SPI Flash,代码如下所示:
void SPI_FLASH_RxBuffer(uint8_t *Buffer, uint8_t Length)
{
if (Length)
{
USART_Synchronous_RxData_Interrupt(Buffer, Length);
}
}
USART1同步通信模式写SPI Flash,代码如下所示:
void SPI_FLASH_TxBuffer(uint8_t *Buffer, uint8_t Length)
{
if (Length)
{
USART_Synchronous_TxData_Interrupt(Buffer, Length);
}
}
USART1同步通信模式处理中断接收和发送命令和读写数据,即读写SPI Flash,代码如下所示:
void USART1_IRQHandler(void)
{
uint8_t RxData = 0;
if (RESET != USART_GetITStatus(USART1, USART_IT_RXNE))
{
RxData = USART_ReceiveData(USART1);
if (0 == USART_RxStruct.CompleteFlag)
{
USART_RxStruct.Buffer[USART_RxStruct.CurrentCount++] = RxData;
if (USART_RxStruct.CurrentCount == USART_RxStruct.Length)
{
USART_RxStruct.CompleteFlag = 1;
USART_ITConfig(USART1, USART_IT_RXNE, DISABLE);
USART_ITConfig(USART1, USART_IT_TXE, DISABLE);
}
}
}
if (RESET != USART_GetITStatus(USART1, USART_IT_TXE))
{
if (0 == USART_TxStruct.CompleteFlag)
{
USART_SendData(USART1, USART_TxStruct.Buffer[USART_TxStruct.CurrentCount++]);
if (USART_TxStruct.CurrentCount == USART_TxStruct.Length)
{
USART_TxStruct.CompleteFlag = 1;
}
}
}
}
USART1同步通信模式SPI Flash写使能,代码如下所示:
void SPI_FLASH_WriteEnable(void)
{
uint8_t Command = 0x06;
SPI_FLASH_CS_L();
SPI_FLASH_TxBuffer(&Command, 0x01);
SPI_FLASH_CS_H();
}
USART1同步通信模式判断SPI Flash是否处于总线忙转态,代码如下所示:
void SPI_FLASH_WaitBusy(void)
{
uint8_t Status = 0;
uint8_t Command[2] =
{
0x05, 0xFF
};
uint32_t Timeout = 0;
do
{
SPI_FLASH_CS_L();
SPI_FLASH_TxBuffer(Command, 0x02);
SPI_FLASH_RxBuffer(&Status, 0x01);
SPI_FLASH_CS_H();
if (Timeout++ > 0xFFFF)
{
break;
}
}
while (Status & 0x01);
}
USART1同步通信模式读SPI Flash DeviceID,代码如下所示:
void SPI_FLASH_ReadDeviceID(void)
{
uint8_t Command[4] =
{
0x90, 0xFF, 0xFF, 0x00
};
uint8_t Buffer[2];
SPI_FLASH_CS_L();
SPI_FLASH_TxBuffer(Command, 0x04);
SPI_FLASH_RxBuffer(Buffer, 0x02);
SPI_FLASH_CS_H();
DeviceID = Buffer[0];
DeviceID <<= 8;
DeviceID |= Buffer[1];
}
USART1同步通信模式读SPI Flash JEDEC ID,代码如下所示:
void SPI_FLASH_ReadJEDEC_ID(void)
{
uint8_t Command = 0x9F;
uint8_t Buffer[3];
SPI_FLASH_CS_L();
SPI_FLASH_TxBuffer(&Command, 0x01);
SPI_FLASH_RxBuffer(Buffer, 0x03);
SPI_FLASH_CS_H();
JEDEC_ID = Buffer[0];
JEDEC_ID <<= 8;
JEDEC_ID |= Buffer[1];
JEDEC_ID <<= 8;
JEDEC_ID |= Buffer[2];
}
USART1同步通信模式SPI Flash 扇区擦除,代码如下所示:
void SPI_FLASH_SectorErase(uint16_t Index)
{
uint8_t Command[4] =
{
0x20, 0x00, 0x00, 0x00
};
uint32_t Address = Index * 4 * 1024;
Command[1] = (uint8_t)((Address >> 16) & 0x000000FF);
Command[2] = (uint8_t)((Address >> 8) & 0x000000FF);
Command[3] = (uint8_t)((Address >> 0) & 0x000000FF);
SPI_FLASH_WriteEnable();
SPI_FLASH_CS_L();
SPI_FLASH_TxBuffer(Command, 4);
SPI_FLASH_CS_H();
SPI_FLASH_WaitBusy();
}
USART1同步通信模式快速读SPI Flash,代码如下所示:
void SPI_FLASH_FastRead(uint32_t Address, uint8_t *Buffer, uint32_t Length)
{
uint8_t Command[5] =
{
0x0B, 0x00, 0x00, 0x00, 0xFF
};
Command[1] = (uint8_t)((Address >> 16) & 0x000000FF);
Command[2] = (uint8_t)((Address >> 8) & 0x000000FF);
Command[3] = (uint8_t)((Address >> 0) & 0x000000FF);
SPI_FLASH_CS_L();
SPI_FLASH_TxBuffer(Command, 0x05);
SPI_FLASH_RxBuffer(Buffer, Length);
SPI_FLASH_CS_H();
}
USART1同步通信模式页编程SPI Flash,代码如下所示:
void SPI_FLASH_PageProgram(uint32_t Address, uint8_t *Buffer, uint32_t Length)
{
uint8_t Command[4] =
{
0x02, 0x00, 0x00, 0x00
};
Command[1] = (uint8_t)((Address >> 16) & 0x000000FF);
Command[2] = (uint8_t)((Address >> 8) & 0x000000FF);
Command[3] = (uint8_t)((Address >> 0) & 0x000000FF);
SPI_FLASH_WriteEnable();
SPI_FLASH_CS_L();
SPI_FLASH_TxBuffer(Command, 0x04);
SPI_FLASH_TxBuffer(Buffer, Length);
SPI_FLASH_CS_H();
SPI_FLASH_WaitBusy();
}
验证USART1同步通信模式读写W25Q32 SPI Flash,本实例在MDK Keil环境下编译验演示,在main函数中调用读写W25Q32 SPI Flash的函数,代码如下所示:
int main(void)
{
uint8_t i = 0;
uint8_t EraseBuffer[100], WriteBuffer[100], ReadBuffer[100];
USART_RxStruct.CompleteFlag = 0;
USART_TxStruct.CompleteFlag = 1;
USART_Configure(8000000); /* Configure USART Read/write SPI Flash baud rate 8M */
SPI_FLASH_ReadDeviceID();
SPI_FLASH_ReadJEDEC_ID();
SPI_FLASH_SectorErase(0); /* USART erases the SPI Flash sector */
SPI_FLASH_FastRead(0, EraseBuffer, 100);
for (i = 0; i < 100; i++)
{
WriteBuffer[i] = i;
}
SPI_FLASH_PageProgram(0, WriteBuffer, 100); /* USART page programming SPI Flash writes 100 bytes of data */
SPI_FLASH_FastRead(0, ReadBuffer, 100); /* The USART reads 100 bytes of data written to the SPI Flash */
PLATFORM_DeInitUSART1();
PLATFORM_InitConsole(115200);
printf("\r\n\r\n");
printf("\r\nSPI Flash DeviceID : 0x%04x", DeviceID);
printf("\r\nSPI Flash JEDEC ID : 0x%06x", JEDEC_ID);
printf("\r\nSPI FLASH Sector Erase...");
printf("\r\nSPI FLASH Read...");
for (i = 0; i < 100; i++)
{
if (0 == (i % 10))
{
printf("\r\n");
}
printf("0x%02x ", EraseBuffer[i]);
}
printf("\r\nSPI FLASH Page Program...");
printf("\r\nSPI FLASH Read...");
for (i = 0; i < 100; i++)
{
if (0 == (i % 10))
{
printf("\r\n");
}
printf("0x%02x ", ReadBuffer[i]);
}
while (1)
{
}
}
使用MM32-LINK Mini调试下载工具连接MM32SPIN0230 MiniBoard,板子USB口连接USB串口工具连接到电脑端,打开串口调试助手,并配置串口波特率为115200,按快捷键F7编译工程,编译成功后按快捷键F8下载程序到MM32SPIN0230 MiniBoard,如下图3所示,串口调试助手分别打印输出了W25Q32 SPI Flash的DeviceID和JEDEC ID,USART1同步通信模式扇区擦除W25Q32 SPI Flash数据后读出的100字节0xFF数据(说明擦除成功),以及USART1同步通信模式写入到W25Q32 SPI Flash中的0-99共100字节数据(每行10字节,共10行),读出了写入的0-99共100字节数据,写入和读出的数据一致即0-99对应十六进制为0x00-0x63。
图3 测试结果
- |
- +1 赞 0
- 收藏
- 评论 0
本文由出山转载自MindMotion(灵动MM32MCU公众号),原文标题为:灵动微课堂 (第276讲)|MM32SPIN0230的USART实现SPI读写Flash存储器,本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。
相关推荐
Keil分散加载文件浅析
分散加载文件(scatter file)是一个文本文件,用于描述 ARM 链接器生成映像文件所需要的信息,在一些应用场景中嵌入式系统可能会使用分散加载。本章节简要介绍了分散加载文件的基本概念和语法,旨在对分散加载文件有初步认识。
灵动微电子MM32F0160系列MCU FlexCAN-FD通信应用指南
MM32F0160系列MCU具有一个 FlexCAN 模块,该模块遵循 ISO 11898-1 标准、 CAN FD 和 CAN 2.0B 协议规范,不仅兼容传统CAN,还支持CAN FD模式。本章节初步学习使用MM32F0160 FlexCAN-FD接口实现CAN FD通信,相关例程参考灵动官网的LibSamples或在此基础上修改。
使用灵动MM32F5270 MCU UART配置实现LIN通信
本文主要简述MM32F5270 UART是如何实现LIN通信的。从LIN驱动程序、 主机程序、从机程序和验证等方面来讲代码实现。
灵动凭借MM32SPIN0230/080G/060G电机控制MCU获“最佳电机控制器解决方案供应商”荣誉
2024年11月21日,在2024电机控制先进技术研讨会(秋季),“2024第五届电机控制技术市场表现奖”年度评选活动上,MindMotion灵动凭借多年在电机控制领域的优秀表现,荣获“最佳电机控制器解决方案供应商”奖,该奖项旨在通过业界共同推荐、评选出电机控制行业内市场表现优秀,具有技术和创新能力的企业。
HVAC FLAP以MM32SPIN023C为主控设计提供All in one方案
暖通空调 (HVAC) 系统旨在调节、加热、冷却、通风、清洁或除湿车厢内的空气质量 (IAQ)。暖通空调系统由前端的传感器和机械/电子开关、鼓风机电机、执行器(用于新鲜空气循环控制、气流控制和温度控制)以及制冷装置组成,这些装置将空气输送到后端的座舱,以确保驾驶员和乘客的热舒适性。HVAC FLAP以 MM32SPIN023C 为主控。
MindMotion MM32H5480 Triumphs with “2024 Hardcore MCU Chip Award“
MindMotion Microelectronics, as a frontrunner in the domestic market for general-purpose 32-bit MCU products and solutions, proudly secured the “2024 Hardcore MCU Chip Award“ for its high-performance product, the MM32H5480.
MindMotion(灵动微) MCU选型表
32位高性能,高性价比MCU,Core核心有M0、M0+、2XM0、M3、STAR-MC1,Flash存储容量范围 16KB~2048KB,RAM存储容量范围 2KB~128KB,工作电压:1.8~48V,CPU频率(MHz):48~180MHz,GPIO 端口数(个):6~86,LQFP/TSSOP/QFN等多种封装形式。
产品型号
|
品类
|
内核
|
管脚数(个)
|
工作温度(℃)
|
CPU频率(MHz)
|
工作电压(V)
|
GPIO 端口数(个)
|
Flash(KB)
|
SRAM (KB)
|
封装/外壳/尺寸
|
MM32F0163D7PV
|
32位MCU
|
M0
|
64
|
-40℃~105℃
|
96MHz
|
2.0~5.5V
|
57
|
128KB
|
16KB
|
LQFP64
|
选型表 - MindMotion 立即选型
【IC】“灵动·星”系列MM32高性能MCU产品搭载Star-MC1提供强劲内核动力,性能提升20%
“灵动·星”系列 MM32 高性能 MCU 产品,搭载安谋科技(Arm China)Star-MC1 内核性能,其1.5 DMIPS / MHz,提升 20% ,4.02 CoreMark / MHz,提升20% 。目前包含 4 个子系列: MM32F3,灵动·天枢 MM32F5,灵动·玉衡 MM32G5,灵动·天玑 MM32H5,为用户提供灵活、丰富的选择。
【IC】灵动发布全新入门级32位MCU MM32G0001系列,内置时钟全温度范围内偏差不超过±2%
灵动股份推出全新超值型MM32G0001系列MCU。2023年初,灵动首次发布了其主打高性价比的MM32G系列,目前已陆续推出了G0140,G0160和G5330系列产品。为进一步丰富MM32G系列产品组合,灵动和上下游合作伙伴通力合作,打造出全新入门级超值型MM32G0001系列MCU。
【经验】基于MM32F0163D7P的USB Audio Class(UAC)音频设备移植教程
在上一节我们在MM32F0163D7P 平台上成功的移植了TinyUSB,基于这个平台,今天我们来实现一个 uac2_headset 音频设备,这个设备支持基础的录音和放音功能,如果要支持音量调节/静音功能,还需要再添加一个 HID 变成复合设备。
【IC】灵动微电子高性能通用32位MCU产品MM32H5480荣获“2024年度硬核MCU芯片奖”
近日,第六届硬核芯生态大会在深圳举办,同期2024年度硬核中国芯获奖榜单正式发布。作为国内领先的本土通用32位MCU产品及解决方案供应商,MindMotion灵动微电子凭借高性能产品MM32H5480斩获“2024年度硬核MCU芯片奖”。
【IC】灵动新推出32位MCU MM32F0120,主频高达72MHz,提供64KB Flash和8KB RAM
灵动微电子发布的MM32F0120,搭载Cortex M0内核,主频高达72MHz,提供64KB Flash和8KB RAM,最高支持48pin封装。适用于屏显控制、电动玩具、电源管理、马达控制、无线快充等多种应用场合。
The High-performance MCU MM32F52 Series featuring the Arm China “STAR-MC1” Processor Is Available for Order
The MM32F52 series is MindMotion announced the first family of high-performance MCUs featuring the Arm China “STAR-MC1” processor, which is based on the Arm-v8 architecture and offers approximately 20% higher performance per unit compared to Cortex-M3 and Cortex-M4.
灵动微电子扎根张江造“芯”,打造本土32位MCU知名品牌
灵动微电子成立于2011年,2016年进军MCU市场,2019年积极向工业、大家电、汽车等领域发力,目前已涵盖消费电子、电机与电源、家电、汽车、计算机与通信、工业控制等应用领域,客户群体包括飞利浦、小米、汇川、海尔、海信、美的等,是中国本土领先的通用32位MCU 产品及解决方案供应商。
电子商城
现货市场
服务
可定制显示屏的尺寸0.96”~15.6”,分辨率80*160~3840*2160,TN/IPS视角,支持RGB、MCU、SPI、MIPI、LVDS、HDMI接口,配套定制玻璃、背光、FPCA/PCBA。
最小起订量: 1000 提交需求>
可烧录IC封装SOP/MSOP/SSOP/TSOP/TSSOP/PLCC/QFP/QFN/MLP/MLF/BGA/CSP/SOT/DFN;IC包装Tray/Tube/Tape;IC厂商不限,交期1-3天。支持IC测试(FT/SLT),管装、托盘装、卷带装包装转换,IC打印标记加工。
最小起订量: 1pcs 提交需求>
登录 | 立即注册
提交评论