博客

单片机C语言几种内存泄露总结

关键词:
日常项目中碰到的内存泄露无非有以下几种: (1) 堆内存泄漏(Heap leak)。堆内存指的是程序运行中根据需要分配通过malloc,realloc new等从堆中分配的一块内存,再是完成后必须通过调用对应的 free或者delete 删掉。如果程序的设计的错误导致这部分内存没有被释放,那么此后这块内存将不会被使用,就会产生Heap Leak. 这是最常见的内存泄露。 (2)系统资源泄露(... 阅读详情

STM8S单片机入门2(关机模式开关机按钮)

关键词:
开关机功能是使用电池供电系统的最基本功能。如果使用机械式开关(2段拨动开关,自锁开关等)等直接接通和切断电源,不说机械部件的可靠性,至少自动关机(一般在长时间不操作、电池电量低时需要自动关机)功能就比较难实现。所以电池供电系统一般采用按钮开关,用一个按钮配合软件实现按一次开机、再按一次关机的功能及自动关机的功能。 这部分内容就讲述如何在上实现一键式的开关机功能。开关机功能要使用单片机的一个引脚(... 阅读详情

对STM32系统时钟和分频的一点理解

关键词:
系统时钟和分频 首先来手册里的一段话。 三种不同的时钟源可被用来驱动系统时钟 (SYSCLK) HSI振荡器时钟 HSE振荡器时钟 PLL时钟 一般用的是PLL时钟,后面有证据。 我们可以通过库函数获取各时钟值 void RCC_GetClocksFreq(RCC_ClocksTypeDef* RCC_Clocks) 在我的系统里,把时钟值打印信息如下: SYSCLK:0x44aa200... 阅读详情

STM8S单片机入门1(开发环境搭建)

关键词:
STM8S单片机开发环境由三大部分组成,包括PC机上的开发软件(集成开发软件、驱动程序等)、调试&编程器ST-LINK、目标单片机电路板。如下图所示: 1、PC机上开发软件 PC机上的软件包括:ST-LINK驱动程序、IAR集成开发环境、STM8S标准函数库、STVP烧录工具。 ST-LINK调试&编程器需要驱动程序 这个驱动程序不需要单独安装,安装STVP时会一起安装。... 阅读详情

STM8S单片机入门(前言)

关键词:
STM8S单片机是一款广泛使用的8位低功耗单片机,具备系统成本低、功能强大等特点。功能强大也带来了学习入门相对较难的问题。本入门教程面向无任何单片机基础的人,从开发环境的搭建开始,通过详细讲解一个典型单片机应用系统最基本设计和实现过程,帮助大家快速入门。 单片机应用系统的形态很多,但基本模式类似。以智能硬件的应用为例,各种智能硬件区别大多是输入电路(各种传感器及外部信号输入)和输出电路(... 阅读详情

stm32内存管理总结

关键词:
一、内存管理简介 内存管理,是指软件运行时对计算机内存资源的分配和使用的技术。其最主要的目的是如何高效,快速的分配,并且在适当的时候释放和回收内存资源。内存管理的实现方法有很多种,他们其实最终都是要实现 2 个函数:malloc 和 free;malloc 函数用于内存申请,free 函数用于内存释放。本章,我们介绍一种比较简单的办法来实现:分块式内存管下面我们介绍一下该方法的实现原理,如图... 阅读详情

msp430 学习经验总结6个方面

关键词:
1.MSP430开发环境建立 1.安装IAR dor msp430 软件,软件带USB仿真器的驱动。 2.插入USB仿真器,驱动选择安装目录的/drivers/TIUSBFET 3.建立一个工程,选择"option"选项,设置 a、选择器件,在"General"项的"Target"标签选择目标器件 b、选择输出仿真,在"Linker"项里的"Output"标签,选择输出"Debug... 阅读详情

PLC与这7种设备的连接方式

关键词:
导语:PLC常见的输入设备有按钮、行程开关、接近开关、转换开关、拨码器、各种传感器等,输出设备有继电器、接触器、电磁阀等。正确地连接输入和输出电路,是保证PLC安全可靠工作的前提。 1、PLC与主令电器类设备的连接 图1是与按钮、行程开关、转换开关等主令电器类输入设备的接线示意图。图中的PLC为直流汇点式输入,即所有输入点共用一个公共端COM,同时COM端内带有DC24V电源。若是分组式输入,... 阅读详情

stm32独立看门狗和窗口看门狗的区别

关键词:
1)独立看门狗没有中断,窗口看门狗有中断 2)独立看门狗有硬件软件之分,窗口看门狗只能软件控制 3)独立看门狗只有下限,窗口看门狗又下限和上限 4)独立看门狗是12位递减的。窗口看门狗是7位递减的 5)独立看门狗是用的内部的大约40KHZ RC振荡器,窗口看门狗是用的系统时钟APB1ENR 以上是我总结的 接下来我们介绍一下独立看门狗和窗口看门狗,这里我们就不讲解程序了,很简单的,... 阅读详情

非常详细的单片机引脚介绍

关键词:
T89C2051是精简版的51单片机,精简掉了P0口和P2口,只有20引脚,但其内部集成了一个很实用的模拟比较器,特别适合开发精简的51应用系统,毕竟很多时候我们开发简单的产品时用不了全部32个I/O口,用AT89C2051更合适,芯片体积更小,而且AT89C2051的工作电压最低为2.7V,因此可以用来开发两节5号电池供电的便携式产品。... 阅读详情

GD32F130FXP6学习笔记二:CMSIS初识

关键词:
CMSIS 到底是什么? 先来看看ARM公司对CMSIS的定义: ARM® Cortex™ 微控制器软件接口标准 (CMSIS) 是 Cortex-M 处理器系列的与供应商无关的硬件抽象层。CMSIS 可实现与处理器和外设之间的一致且简单的软件接口,从而简化软件的重用,缩短微控制器开发人员新手的学习过程,并缩短新设备的上市时间。 软件的创建是嵌入式产品行业的一个主要成本因素。通过跨所有... 阅读详情

GD32F130FXP6学习笔记一:硬件和软件初学

关键词:
第一次用RAM-M3的芯片,做一个学习笔记吧,希望能够帮助后来人。 软件平台: keil v4.72 MCU: GD32F130F8P6 一、SWD下载口 GD32F130F8P6支持SWD模式 VDD J-LINK V8 PIN1(V8需要连接) SWDAT J-LINK V8 PIN7(建议上拉) SWCLK J-LINK V8 PIN9(建议下拉) RST J-LINK... 阅读详情

穿戴式医疗设备MCU选型对比分析

关键词:
摘要:根据穿戴式医疗设备低成本、高性能、高集成度和续航时间长的特点,对比了当前主流的低功耗微控制器(MCU)系列,分析得出ARM Cortex M0+内核的MCU系列适合该领域的产品开发。在功耗水平、运算性能、外设集成和产品成本等方面,进一步将各大半导体公司基于Cortex M0+内核的MCU系列展开参数对比,为穿戴式医疗设备的MCU选型提供指南。 0 引言... 阅读详情

扒一扒ARM Cortex-M各版本的第一款MCU

关键词:
ARM公司自2004年推出ARMv7内核架构时,摒弃了以往”ARM+数字”这种处理器命名方法(ARM11之前的处理器统称经典处理器系列),重新启用Cortex来命名,并将Cortex系列细分为三大类:

对ARM紧致内存TCM的理解

关键词:
ARM的ram包括静态ram,动态ram, TCM---紧耦合内存(TCM: Tightly Coup ledMemories)。 TCM是一个固定大小的RAM,紧密地耦合至处理器内核,提供与cache相当的性能,相比于cache的优点是,程序代码可以精确地控制什么函数或代码放在哪儿(RAM里)。当然TCM永远不会被踢出主存储器,因此,他会有一个被用户预设的性能,... 阅读详情

页面