哈士奇上蔚
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
GD32移植CoreMark实现性能测评
本文将演示CoreMark移植到GD32/STM32上进行性能测评。文章末尾给出了GD32F130C8T6,GD32F303CCT6和STM32F103ZET6三款单片机的测试对比结果。访问CoreMark的Github主页,下载如下图所示的源文件。在工程中新建一个子目录CoreMark,并放入其中。在Keil开发环境中,需要对CoreMark源文件(.c)加入到分组中,并指定CoreMark的头文件的包含路径,这些步骤不再赘述。 main函数CoreMark代码框架定义了main函数,因此我们要屏蔽掉自己原创 2022-07-05 22:18:40 · 3954 阅读 · 0 评论 -
GD32F130之FMC用户非易失存储器
广义上的EEPROM的分类PROM:即Programmable ROM的缩写,也就是可编程ROM。可编程的意思通俗说就是可以写入自定义的数据。PROM出厂后,用户可以进行“一次”数据改写操作,之后就无法继续改写了。 EPROM:可擦除(erase)、可编程ROM。也就是说用户除了可以进行编程外,还可以将前一次编程的数据抹去,这样就可以继续进行编程了。所以用户可以进行多次“擦除-编程-当做ROM使用”操作。这种芯片大多使用紫外线进行擦除,芯片封装上开了一个小窗口,放在紫外线下一段时间就可以将数据擦除,擦原创 2022-05-03 20:14:07 · 3302 阅读 · 1 评论 -
GD32F130之LVD低压检测
阿萨德sad手大sadsadsad阿萨德撒阿萨德阿萨德的原创 2022-05-05 16:34:08 · 8869 阅读 · 5 评论 -
STM32单片机不同boot模式的本质
简介如下图所示,是CM3内核规定的4GB地址空间的划分情况。于是各个芯片设计厂商(如ST,NXP等)在设计CM3内核单片机时,就会遵守这个规定。下图是STM32F103系列的存储器映射方案图。可以发现,⑤处SRAM映射的地址确实是从0x20000000开始,结束地址取决于单片机SRAM的实际大小。在①处的Code空间,ST将【④System memory】、【③Main Flash memory】和【②Aliasd memory】映射在此。其中【System memory】就是存储单原创 2022-04-25 13:28:32 · 2839 阅读 · 2 评论 -
GD32F130之USART多机通信
简介在多机通信中,一个从机应该只接收它需要接收的数据,且只应该在它需要接收数据时才检测串口。而始终接收RX线上的数据对从机来说是一种负担。多机通信硬件设计远距离方案:RS485板级方案:静默模式静默模式有什么作用?答:如果 USART 处于静默模式,所有的接收状态标志位将不会被置位。如何进入静默模式?答:软件可以通过将 USART_CMD 寄存器中MMCMD 位置 1 使 USART 进入静默模式。如何从静默模式中唤醒?答:有两种方式可选,①检测到总线原创 2022-06-07 16:14:06 · 281 阅读 · 0 评论 -
记群内因串口DMA发送而引发的讨论
起初我的发送代码写的是下面这种实现:void USART0_printf(const char*format , ...){ int tx_len; va_list args; //将要发送的数据写入到DMA发送缓冲区USART0_tx_dma_buf va_start(args,format); tx_len = vsnprintf((char*)USART0_tx_dma_buf,USART0_TX_DMA_BUF_SIZE,format,args); va_end(arg原创 2022-04-12 18:41:34 · 1543 阅读 · 1 评论 -
USART+DMA+循环队列接收不定长数据
GD32F130之FreeRTOS环境下USART+DMA接收不定长数据原创 2022-04-11 21:53:52 · 7850 阅读 · 2 评论 -
GD32F130之USART自带的RS485方向切换功能
关于RS485收发器的基本使用在使用单片机实现串口RS485通信时,需要外接一个TTL转RS485的收发器芯片,例如SP3485和MAX3485。由于RS485使用的是单数据通道,差分信号传输方式,所以是半双工通信,即收发不能同时进行。 那么就需要用一个信号控制RS485的收发器芯片的数据传输方向。拿SP3485举例:此芯片内部由接收器(receiver)和发送器(或者叫驱动器,driver)组成。如下图所示。RE引脚控制接收器的使能,低电平时使能接收器;DE引脚控制发送器的使能,高电平时使能发送器原创 2022-04-09 21:51:17 · 9084 阅读 · 2 评论 -
GD32软件IIC实现
简介代码原创 2022-04-06 19:01:15 · 1293 阅读 · 0 评论 -
GD32F130之DMA
什么是DMADMA,即Direct Memory Access,是一种在无需CPU参与的情况下,将数据块在内存(SRAM)和外设(一般是I/O设备)之间高效传输的硬件机制。实现这种功能的集成电路单元叫做DMA Controller,即DMA 控制器。使用DMA的好处一般情况下,为了实现内存(SRAM)和外设(一般是I/O设备)之间的数据传输,有三种常用的方法:轮循法(polling),中断法(interrupt)以及本文要介绍的DMA方法。轮循法(polling):在主循环中,CPU不断检查原创 2022-04-11 19:49:12 · 5884 阅读 · 0 评论 -
GD32F130之Timer13定时器
简介Timer13是一个L2级别定时器,它的功能最为简单。其特性如下:通道数:1计数方向:向上计数计数器宽度:16位时钟源:只有一个来自RCU模块的内部时钟时基单元定时器时钟Timer13的时钟源只能是来自RCU模块的内部时钟。结合下图GD32F130的时钟树和GD32F130的固件库时钟设置所知,CK_AHB为48MHz,且APB1预分频器系数为1,则Timer13的外设时钟为48MHz。//文件:system_gd32f1x0.c//固件版本V3.3.3st原创 2022-04-02 13:50:32 · 5913 阅读 · 0 评论 -
GD32F130之EXTI中断和事件控制器
简介EXTI,即extended interrupts and events controller,扩展的中断和事件控制器。之所以说是扩展的,是为了区分于内核自带的NVIC。NVIC由ARM Cortex-M3内核设计,而EXTI则由芯片厂商设计。EXTI 的中断功能依赖NVIC。GD32F130的EXTI包含27条独立且结构相同的通道,称之为EXTI Line x(x=0~27),但是有些通道功能未开放,实际能使用的只有24条。具体参考应用手册:《表 5-4. GD32F130xx 和 和 GD3原创 2022-03-03 14:17:30 · 2659 阅读 · 0 评论 -
GD32F130之USART串口通信
简介GD32F130系列最多支持2个串口:USART0和USART1,其中USART0功能比USART1丰富。过采样机制采样定理告诉我们,当采样频率大于信号频率的2倍时,就可以真实还原线路上的信号。而实际应用中,采样频率一般都远大于信号频率的2倍。GD32F130的USART的接收电路,就可以选择以16倍频率或者8倍频率采样Rx引脚上的信号。当选择16倍频率过采样方式时,USART接收器在接收一个位的时候,会在一个比特率位的时间内对Rx采样16次,并选择中间3个采样点(第7、8、9个)进原创 2022-02-28 20:44:21 · 12540 阅读 · 4 评论 -
GD32F130之GPIO
简介电气特性电流驱动能力:25mA max内部拉电阻阻值:30~50KΩ配置流程通用数字输出模式当CTL[1:0]=10时,配置GPIO为通用数字输出模式,此模式下,GPIO引脚可以输出高低电平信号来驱动外部电路。在通用数字输出模式下,通过OMODE寄存器配置为推挽输出或者开漏输出两种不同的输出模式。OMODE=0为推挽输出;OMODE=1为开漏输出。在通用数字输出模式下,通过OSPD寄存器来配置输出信号的速度。这个..原创 2022-02-21 11:23:36 · 15083 阅读 · 2 评论
分享