-
一。printf函数格式 printf函数具有强大的输出功能 %表示格式化字符串输出 目前printf支持以下格式的输出,例如: printf(%c,a);输出单个字符。 printf(%d,a);输出十进制整数。 printf(%f,a);输出十进制浮点数. printf(%o,a);输出八进制数。 printf(%s,a);输出字符串。...[详细]
-
中断作为stm32中必不可少的一个功能,其重要性是不言而喻的因此把中断学习好是根本。 所以今天就来好好啃一下中断配置的知识,俗话说:磨刀不误砍柴工。问题是什么呢?项目中我用到了一个触摸键盘TTP229,结果在测试键盘时,不能够输入密码?最终,调试出bug就是由于中断优先级的影响。 本项目使用到的是STM32F030C8型号的MCU,我们可以从官方下载到的标准库文件中的启动汇编文件中...[详细]
-
stm32作为现在嵌入式物联网单片机行业中经常要用多的技术,相信大家都有所接触,今天这篇就给大家详细的分析下有关于stm32的出口,还不是很清楚的朋友要注意看看了哦,在最后还会为大家分享有些关于stm32的视频资料便于学习参考。 什么是串口 UART:UniversalAsynchronousReceiver/Transmitter通用异步收发器 USART:Uni...[详细]
-
MDK和交叉编译工具编译时都会指定程序的下载的地址(其实就是告诉程序它将在那个地址上开始执行),这有什么意义吗?其实这么设计有原因的,因为这里涉及到全局变量和全局函数指针的地址问题,假如当你在编译时指定编译器这段程序会在0x0c000000地址上运行,按缺省链接方式(即未使用自己的链接脚本或分散加载文件)全局变量和函数的地址分配就会从0x0c000000基地址上开始,此时如果你把这段程序烧...[详细]
-
有时IAR工程因异常关闭,再次打开IAR工程时,会出现Workspace栏不显示工程的现象,如下图所示:原因:demo.eww文件内容丢失,丢失后demo.eww文件内容的内容如下:?xmlversion=1.0encoding=UTF-8?workspacebatchBuild//workspace正常的demo.eww文件内容应该如下,即丢失了下述...[详细]
-
STM32处理json字符串一般不常见,大部分都是不需要处理的数据,但是在一些通信中需要处理上传或者下传的数据,就别比如在物联网中,有一部分数据就是以json格式传输的,那么就需要对数据经行解析。我简单记录一下我自己在STM32F103RC中使用jansson库的一些注意事项和出现的错误今天来了解一下一个和cJSON非常类似的解析库——Jansson的使用,支持解析和构建JSON字符串,不需要...[详细]
-
PB3,PB4,PA13,PA14,PA15是特殊的IO口,用作JTAG/SWD仿真器的调试接口。其中PA13,PA14分别作为SWD调试的SWIO和SWCLK;PB3,PB4,PA13,PA14,PA15共同用于JTAG。对于ST-LINK来说,下载和调试程序需要用到PA13(SWIO)和PA14(SWCLK)引脚。所以PA15、PB4、PB3三个引脚可以当做普通IO来使用,即端口重映射...[详细]
-
最近做的项目,遇到问题以及解决方法1、jlink总是下载失败,PC可以识别,但是keil不识别解决办法:将工程中的和jlink相关的文件删掉,keil魔术棒中set键,弹出框,重新选择芯片型号,还有的时候是没有上电(囧)2、stm32f407改为stm32f401步骤(1)改启动文件,将工程中的启动文件.s文件修改,点击魔术棒--C/C++--Define中对应修改名称(将STM32F4...[详细]
-
1、问题背景近前,使用STM32F4HAL库的SPI读取MPU6500出现异常。现象:读取ID失败,返回0,以为硬件焊接问题,各种排查,最后为了示波器测试方便,把读取ID的函数放到While(1)里,反复的读然后抓波形,奇迹出现了,第一次读取出现错误,后面的都返回了正常的ID号。既然问题已经清楚,能够反复重现,那么排查起来也就容易多了,为了找到这个问题,花费了1天的时间,搞得都毛了...[详细]
-
STM32单片机的每组IO口都有4个32位配置寄存器用于配置GPIOx_MODER,GPIOx_OTYPER,GPIOx_OSPEEDR和GPIOx_PUPDR,2个32位数据寄存器用于配置输入和输出寄存器GPIOx_IDR和GPIOx_ODR,1个32位置位复位寄存器GPIOx_BSRR,1个32位锁定寄存器GPIOx_LCKR和2个32位复用功能选择寄存器GPIOx_AFRH和GPIOx...[详细]
-
刚开始学习单片机的时候一般都会买学习板,但是到后来觉得板子用的不太方便,于是我就想着自己做一个最小系统板。首先我们需要知道单片机最小电路里都有什么,单片机最小电路主要有三块:电源,晶振和复位,当然现在有比较高级的单片机里面集成了这些东西,暂且不谈。需要准备的器材有:电烙铁,焊锡丝,镊子,材料有:洞洞板(5x7或者6x8)一块,单片机底座一个,12M直插式无源晶振,10uf电解电容一个,20pf瓷...[详细]
-
输入捕获是处理器捕获外部输入信号的功能,基于定时器抓取输入信号指定触发方式之间的长度。具体有下面三种触发情况:1、上升沿触发2、下降沿触发3、上下都触发当触发条件发生后,捕获比较寄存器锁定当前的计数值,如果开启了中断或者DMA,就可以通过中断或DMA及时获得数据进行处理。有时可能遇到上一次触发的标志还没清除,下次触发就发生了,此时会将over-capture标志置位,对...[详细]
-
AD4630-24是亚德诺推出的一款24位双通道支持同步采样的ADC,高昂的售价注定了这不会是一款常用芯片,我在做驱动开发期间在中文互联网基本没有找到可以参考的资料或例程。但这次毕竟做的是一款高精度同步电压电流表,这款芯片是领导亲自选的,要求很明确,就是分辨率拉满,咱也只能硬着头皮开干。这次也是分享以下驱动开发的思路和例程,希望能够帮助到相关人士,顺便,这款芯片要求5V和1.8V双电源供电...[详细]
-
一、NVIC概述NVIC(NestedVectorInterruptController),就是嵌套向量中断控制器。然后我们试着把这个名字拆成词语来解释,这样就很明了啦。我们都知道(也许你没有计算机组成原理的学习背景,那这里的“都”字就打点水份儿吧)中断(或异常)是突发的状况(系统错误或外设输入响应等)造成CPU中断当前程序,转而执行一段“中断服务程序,ISR”以解...[详细]
-
USART(同步异步串口通信)在STM32的参考手册中,串口被描述成通用同步异步收发器(USART),它提供了一种灵活的方法与使用工业标准NRZ异步串行数据格式的外部设备之间进行全双工数据交换。USART利用分数波特率发生器提供宽范围的波特率选择。它支持同步单向通信和半双工单线通信,也支持LIN(局部互联网),智能卡协议和IrDA(红外数据组织)SIRENDEC规范,以及调制解调器(CTS/...[详细]