随笔分类 -  如何使用STM32 ,STM8快速入门

告诉你如何快速的从51转stm32 、stm8开发,前提是你应经了解清楚 51的基本结构,并有较好的c语言基础
摘要:dap 可以发现设备,stlink jlink 均无法发现设备,但是都不能下载。connot enter debug mode ,发现是vdda 未连接 阅读全文
posted @ 2020-07-08 13:13 避暑山庄 阅读(537) 评论(0) 推荐(0)
摘要:经检测为串口接受后进入别的程序,开辟了2048的临时数组,因为堆栈溢出。stm32总共堆栈为 阅读全文
posted @ 2020-02-11 14:22 避暑山庄 阅读(1843) 评论(0) 推荐(0)
摘要:zonggo//IO方向设置 CRL为0-7 CRH为 8-15 总共四个寄存器位置有效#define DS18B20_IO_IN() {GPIOB->CRH&=0X0FFFFFFF;GPIOB->CRH|=8<<7;}#define DS18B20_IO_OUT() {GPIOB->CRH&=0X 阅读全文
posted @ 2018-12-27 18:13 避暑山庄 阅读(1557) 评论(0) 推荐(0)
摘要:这种现象在早期的 使用stm8l151的dac 和adc相互干扰很厉害。后来通过读手册发现 相邻三个引脚一般不建议同时使用dac和adc。也就是这两种功能,引脚分配至少隔离三个引脚。内部为了节省成本,共用了很多模拟通道。一般来说相邻三个引脚只有一条模拟通道,所以有可能用不了。 阅读全文
posted @ 2018-10-29 21:42 避暑山庄 阅读(759) 评论(0) 推荐(0)
摘要:特别注意: 1.有iic 的引脚为了兼容电平,一般来说都是可忍受电平,同时该引脚也将被去除推挽输出和强输出能力,甚至是上拉,使用时候特别注意,这种引脚在stm8上非常常见 2.stm引脚对电平不匹配非常敏感,如果电平不匹配将导致各种问题,比如强行使用工作在3.3V电压下的stm8与5V器件对接,除了 阅读全文
posted @ 2018-08-19 22:19 避暑山庄 阅读(554) 评论(0) 推荐(0)
摘要:1.一份官方库基本是通用的。 2.尽量依托cubex for stm8 依托理由: 1.不同型号,不同后缀的芯片,将会被配置不同的外设。比如stm8s103k3系列可能有的是串口1,但是stm8s105k4确只有UART2,那么使用的时候就要注意包含的调整库中去掉没有的相关外设库,加上有的外设相关库 阅读全文
posted @ 2018-08-18 19:58 避暑山庄 阅读(412) 评论(0) 推荐(0)
摘要:如果没有出现 上述问题,请检查是否硬件堆栈分配。因为新建立的任务会消耗一部分硬件栈空间 另外开启任务堆栈监测是非常重要的,可以仔细的调整一下,有的任务分配的多,有的任务分配的少 另外 注意观察优先级配置,优先级config.h中的 要和你freertos系统时钟中断优先级对应,不能搞不能低 阅读全文
posted @ 2018-08-11 15:56 避暑山庄 阅读(952) 评论(0) 推荐(0)
摘要:否则将导致不能接受数据 阅读全文
posted @ 2018-07-08 23:47 避暑山庄 阅读(427) 评论(0) 推荐(0)
摘要:故障案例: 定时器定时触发一个定时事件,在这个事件里面,会调用一个串口发送程序,发现串口发送数据不完整。 分析: 1.将发送函数剥离,放到独立的线程工作,运行稳定 2.使用单步调试,在定时中断事件中多次调用发送函数,无效。 3.通过单步调试,确认发送数组不为空,被发送数据正确 4.担心是中断优先级问 阅读全文
posted @ 2018-07-08 22:04 避暑山庄 阅读(214) 评论(0) 推荐(0)
摘要:Error:..\FreeRTOS\portable\RVDS\ARM_CM3\port.c,378Error:..\FreeRTOS\portable\RVDS\ARM_CM3\port.c,378Error:..\FreeRTOS\portable\RVDS\ARM_CM3\port.c,378 阅读全文
posted @ 2018-07-08 18:58 避暑山庄 阅读(4272) 评论(0) 推荐(0)
摘要:进入该模式,程序死机。 一般来说都是内存错误 1. 数组越界,装入数据溢出, 2. 堆和栈设置不当,这里面硬件的堆和栈在汇编文件中,如果有freertos等,重点检查,任务堆栈使用情况,一般任务堆栈溢出的可能性比较大。 重点检查函数,局部变量,减少临时函数,大数组创建,如果有尽量使用静态全局替代。 阅读全文
posted @ 2018-07-01 16:01 避暑山庄 阅读(1033) 评论(0) 推荐(0)
摘要:串口dma数据发送不完整, 1. 通过打印log说明数据合成,送给dma buff都是正常的。 2. 数据通过硬件串口直接配置,是正常的 3. 数据通过单片机dma转发后数据异常,通过检查发现 dma优先级不够高,导致dma数据通道占用的时候数据丢失,更改数据优先级后问题解决。 dma fifo的作 阅读全文
posted @ 2018-06-28 10:38 避暑山庄 阅读(2525) 评论(0) 推荐(0)