文章分类 -  STM32/GD32

摘要:在使用0.96寸的OLED时,发现之前的代码不能正常通过单片机的IIC使用DMA进行刷新,刷新时总是错一位,后来查阅资料发现是现在的OLED使用了SSD1315替换了SSD1306控制芯片,贴一下各个初始化过程,方便记录: SSD1306初始化: 1 /** 2 * @brief OLED初始化 3 阅读全文
posted @ 2021-11-11 15:19 求隐 阅读(10073) 评论(0) 推荐(1) 编辑
摘要:最近想利用单片机的IO口模拟UART,要求可以实现高波特率发送,查阅了ST的官网,发现了编号为 AN4457 Application note 的文档有介绍:Implementing an emulated UART on STM32F4 microcontrollers 顿时发现了一扇新大门啊。另 阅读全文
posted @ 2020-09-19 14:17 求隐 阅读(937) 评论(0) 推荐(0) 编辑
摘要:为了减少“读-改-写” 操作的次数, Cortex™-M3处理器提供了一个可以执行单原子比特操作的位带功能。存储器映射包含了两个支持位带操作的区域,分别位于SRAM和外设中。位带区域将存储器别名区的每个字映射到存储器位带区的某个位上。下面的映射公式表明了别名区中的每个字如何对应位带区的相应比特或目标 阅读全文
posted @ 2020-09-09 14:43 求隐 阅读(1058) 评论(0) 推荐(0) 编辑
摘要:在设计SPI主机和从机的逻辑互联时,会习惯性地仿照UART上的TXD和RXD交叉连接,而将SPI主机的MISO和从机的MOSI进行逻辑连接,SPI主机的MOSI和从机的MISO进行逻辑连接,结果导致设计错误。这里给大家提供一个不再出错而记忆简单的方法 理解MISO和MISO缩写的具体含义。 MISO 阅读全文
posted @ 2020-07-13 09:12 求隐 阅读(3275) 评论(0) 推荐(0) 编辑
摘要:发现之前设计上的一个漏洞,把lwip 的MAC地址前3位设置成了,3.1.0 ,在实际使用中总是连结不上千兆路由器, 查找各方面的原因,最后才发现是MAC地址的问题 将MAC地址前3位改为 完美解决 阅读全文
posted @ 2020-07-02 11:41 求隐 阅读(1237) 评论(0) 推荐(0) 编辑
摘要:接口信号描述 : 控制时序: 时序模型: 异步访问时序 : 阅读全文
posted @ 2020-06-19 11:29 求隐 阅读(313) 评论(0) 推荐(0) 编辑
摘要:理想通过GD/STM32的FSMC接口外接FPGA,和FPGA进行数据传输,发现最大只能支持到64M,具体原因是单片机将256M的内存访问区域划分成了4个部分, 阅读全文
posted @ 2020-05-28 10:33 求隐 阅读(1511) 评论(0) 推荐(0) 编辑
摘要:在使用GD32/STM32做一次串口接收发送的DMX信号的系统时,发现一个有意思的现象: 问题现象: 1. 当发送端的的波特率设置为250kbps时,经过隔离发送电路或者信号线传输后,串口起始位第一个低电平理论山应该时4us,经过信号切换延与线路上的阻容电路衰减后,势必造成起始位的时间不是严格的4u 阅读全文
posted @ 2020-05-05 13:15 求隐 阅读(3016) 评论(0) 推荐(0) 编辑
摘要:stm32的RAM在汇编起始文件里开辟 两块空间是堆Heap和栈Stack, 其中堆从下往上用,栈从上往下用 阅读全文
posted @ 2020-04-29 11:28 求隐 阅读(338) 评论(0) 推荐(0) 编辑
摘要:STM32/GD32是可以支持同时几路输出RGB的数据,解决总计包含如下几种思路: 1.单纯的GPIO操作,时序完全以软件延时设计 优点:设计简单,思路清晰 缺点:耗费系统时间,容易被中断打断,时序易错乱 2.结合DMA->SPI方式,使用DMA直接驱动SPI总线端的发送数据端 优点:巧用SPI传输 阅读全文
posted @ 2019-08-21 15:33 求隐 阅读(2988) 评论(0) 推荐(0) 编辑
摘要:最近在使用GD32F407片子做快速读取的一个项目,借用了正点原子的内存管理方法,使用中发现了几个问题: 问题1.SDIO模式下,调试发现总是进入while(((DMA2->LISR&(1<<27))==RESET)&&timeout)timeout--;//等待传输完成 解决办法:单步跟踪调试,发 阅读全文
posted @ 2019-08-13 17:08 求隐 阅读(2295) 评论(0) 推荐(0) 编辑
摘要:1,普通用的STM32更新IAP程序,碰到进入APP程序时,进入HardFault_Handler 错误 2,解决办法: 在进入前关中断,重置PSP与MSP __set_PRIMASK(1); // 关中断 __set_BASEPRI(0); __set_FAULTMASK(0); __set_PS 阅读全文
posted @ 2018-07-24 21:27 求隐 阅读(1403) 评论(0) 推荐(0) 编辑
摘要:好久没用STM32L,调试时进入0x08000774 BEAB BKPT 0xAB 是循环,单步下去可跳过但是直接运行,无法运行,和以前的工程对比,发现是少加了微库,在Target 中勾上MicroLIB完美解决问题。 阅读全文
posted @ 2016-01-03 22:12 求隐 阅读(2619) 评论(0) 推荐(0) 编辑
摘要:今天不小心掉用了#define GPIO_Remap_SWJ_Disable ((uint32_t)0x00300400) /*!< Full SWJ Disabled (JTAG-DP + SW-DP) */这个函数导致无法用Jlink下载程序解决办法:将stm32的REST脚一直接地,即复位... 阅读全文
posted @ 2015-05-27 14:59 求隐 阅读(1949) 评论(0) 推荐(0) 编辑
摘要:最近在研究STM32中断的嵌套的问题,终于找到一个好理解的方法,也许是我太笨,记录下来!STM32有43个channel的settable的中断源;AIRC(Application Interrupt and Reset Register)寄存器中有用于指定优先级的4 bits。这4个bits用于分... 阅读全文
posted @ 2015-05-11 16:26 求隐 阅读(281) 评论(0) 推荐(0) 编辑
摘要:在串口1发送中,第一个字总是发不出来,单步调试发送正常,硬件上电复位发送不正常,发现是STM32上电复位后需要先读取USART_SR,然后写 USART_DR,解决办法在串口初始化加入USART_GetFlagStatus(USART2, USART_FLAG_TC);void USART1_Ini... 阅读全文
posted @ 2015-05-07 15:26 求隐 阅读(425) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示