当前位置: 首页 > 产品中心 > lcd显示屏-总成

基于STM32+Jlink的边界扫描实际应用

发表时间: 2024-04-07 作者: lcd显示屏-总成
产品详情

  前面几篇文章,介绍了关于JTAG边界扫描的一些基础知识和常用的调试软件。

  今天我们来演示基于STM32+Jlink的边界扫描实际应用。试想这样一个场景,我们新设计了一款集成了很多芯片的板卡,包括BGA封装的微控制器,如FPGA/MCU,还有LED、按键、串口、传感器、ADC等基本外设。

  我们需要测试一下硬件电路工作是不是正常、焊接是否良好,通常我们会写个测试代码,比如控制LED闪烁,读取按键的输入,串口收发一些数据,然后把程序烧录进去,看看现象是否和我们设计的一致。当现象和设计不一致时,是代码设计的问题、还是硬件原理的问题、又或者是焊接的问题呢?该怎么样一一排除呢?这里就能够正常的使用JTAG边界扫描的测试方法,来验证到底是哪里出的问题,因为JTAG边界扫描不需要写任何代码,只需要一个BSDL文件,就能控制和读取芯片的任意管脚。

  下面我们以意法半导体MCUSTM32F103为例,配合JLink,演示JTAG边界扫描的应用。

  获取意法半导体MCU的BSDL文件,可以到官方网站搜索BSDL,就会弹出对应系列的BSDL文件包。

  下载到本地之后解压,能够正常的看到很多BSDL文件,我们开发板上的芯片型号是STM32F103ZET6-LQFP144,属于大容量芯片,所以BSDL文件对应的是:

  关于TopJTAG边界扫描测试软件的介绍和基本使用,可以借鉴之前的文章:强大的JTAG边界扫描(3):常用边界扫描测试软件 打开TopJTAG Probe软件之后,先创建一个工程,并选择JTAG设备类型,这里个人会使用的是JLink。

  指定芯片所对应的BSDL文件,这里我们最终选择上一步下载的STM32F1_High_density_LQFP144.bsd文件,并进行IDCODE校验。

  如果IDCODE不匹配,说明选择的BSDL文件错误,之后就进入到边界扫描测试界面了。

  SAMPLE:采样模式,可以对所有管脚的状态进行读取,可以统计电平翻转的次数,或者以波形方式显示实时状态

  EXTEST:可以任意的控制所有外部管脚的状态,可手动指定为高低电平,高阻态。

  这里我们最终选择SAMPLE模式,点击RUN按钮,能够正常的看到芯片所有的管脚实时状态,

  在Pins窗口,能够正常的看到所有管脚的实时状态,选中一个管脚,可以把它添加到Watch窗口,或者Waveform窗口。 切换到EXTEST模式,可以手动设置管脚的高低电平或高阻状态。

  Watch窗口信号的还原能力,完全取决于JTAG_TCK的频率,即管脚信号的采样时钟。

  通过边界扫描可以快速的判断文章开头提到的几个问题,若使用边界扫描的方式,发现读取和控制管脚的状态不对,那就能判定是焊接的问题,通过编程,还可以按照一定的时序来控制管脚的状态,进而达到控制外部器件的目的。总之,边界扫描是一种很实用的测试方法,在电路板生产制造、芯片设计、芯片封测等方面都有很广泛的应用。

  环境: 主机:WINXP 开发环境:MDK4.23 MCU:STM32F103CBT6 说明: 串口可以配置成用DMA的方式接收数据,不过DMA需要定长才能产生接收中断,如何接收可变长度的数据呢? 方法有以下3种: 1.将RX脚与一路时钟外部引脚相连,当串口一帧发完,即可利用此定时器产生超时中断.这个实时性较高,能做到1个字节实时监测. 2.不改变硬件,开启一个定时器监控DMA接收,如果超时则产生中断.这个实时性不高,因为超时时间必须要大于需要接收帧的时间,精度不好控制. 3.STM32单片机有的串口可以监测总线是否处于空闲,如果空闲则产生中断.可以用它来监测DMA接收是否完毕.这种方式

  的串口采用DMA方式接收数据测试 /

  一、ADC简介: STM32有1~3个ADC,我使用的STM32F103ZET6有3个ADC,是12位逼近的数字模拟转换器,它有18个通道,包括16个外部通道和2个内部信号源。每个ADC有4种模式:单次、连续、扫描、间断。存储方式分为左对齐或右对齐,一般选择右对齐。ADC将转换分为两个通道组:规则通道与注入通道,规则通道相当于正常执行的程序,注入通道相当于中断。规则通道最多包含16个,注入通道最多位4个。 本次介绍仅介绍规则通道的单次转换, 二、软件配置: 1)开启PA口的时钟和ADC1的时钟,设置PA1为模拟输入; 2)复位ADC1,同时设置分频因子;要保证ADC的时钟不超过14MHZ,否则可能不准,而APB2的时钟为7

  学习日志——ADC实验 /

  一个完整的工程结构 这是一个完整的工程目录,当然必须要格外注意的几点 1.头文件找不到:解决办法-------------在编译设置------c/c++----includepath里面加入你的头文件的路径 2.c文件加进来之后没有h文件-----------------解决办法:将新的文件编译 3.上面的都做完了,找不到库函数-----------------解决办法:在fwlib加入对应的外设的c文件

  入门笔记(一)工程的建立和使用 /

  采用stm32f103rc的 STM32 最小系统详细解析图,如下: 一、 STM32 主电路 二、USB转串口下载电路 注:此图中二极管D1不用接! 三、SWD模式调试仿真电路 四、指示电路 五、整体电路 注:此图中二极管D1不用接!

  最小系统完整版 /

  硬件平台:STM32F103ZET6; 开发环境:KEIL 4; 先说说应用通讯模式,串口终端的工作方式和迪文屏差不多,终端被动接受MCU发的指令,终端会偶尔主动发送一些数据给MCU(像迪文屏的触摸信息上传)。 串口DMA发送: 发送数据的流程: 前台程序中有数据要发送,则需要做如下几件事 1.在数据发送缓冲区内放好要发送的数据,说明:此数据缓冲区的首地址必须要在DMA初始化的时候写入到DMA配置中去。 2.将数据缓冲区内要发送的数据字节数赋值给发送DMA通道,(串口发送DMA和串口接收DAM不是同一个DMA通道) 3.开启DMA,一旦开启,则DMA开始发送数据,说明一下:在KEIL调试好的时候,D

  本篇介绍STM32如何外接温湿度传感器实现当前环境温湿度的读取,并显示到OLED屏幕上。 1 DTH11温湿度传感器 DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器,包括一个电阻式感湿元件和一个NTC测温元件。 1.1 数据读取协议 微控制器MCU与 DHT11之间的通讯和同步,采用单总线数据格式,一次通讯时间4ms左右。 用户MCU发送一次开始信号后,DHT11从低功耗模式转换到高速模式,等待主机开始信号结束后,DHT11发送响应信号,送出40bit的数据,并触发一次信号采集,用户可选择读取部分数据。 从模式下,DHT11接收到开始信号触发一次温湿度采集,如果没有接收到主机发送开始信号,DHT1

  外接DHT11温湿度传感器并通过OLED进行多个方面数据显示的设计电路与程序 /

  一、概念理解 PWM输入捕获模式是输入捕获模式的特例,自己理解如下 1. 每个定时器有四个输入捕获通道IC1、IC2、IC3、IC4。且IC1 IC2一组,IC3 IC4一组。并且可是设置管脚和寄存器的对应关系。 2. 同一个TIx输入映射了两个ICx信号。 3. 这两个ICx信号分别在相反的极性边沿有效。 4. 两个边沿信号中的一个被选为触发信号,并且从模式控制器被设置成复位模式。 5. 当触发信号来临时,被设置成触发输入信号的捕获寄存器,捕获“一个PWM周期(即连续的两个上升沿或下降沿)”,它等于包含TIM 时钟周期的个数(即捕获寄存器中捕获的为TIM的计数个数n)。 6. 同样另一个捕获通道捕获触发信号和下一个相反极性的边

  简要说明 1概述 嘀嗒时钟(SysTick)是一个简单的系统时钟节拍计数器,它属于Cortex-M4内核嵌套向量中断控制器(NVIC)里的一个功能单元。他是一个24位的倒计时定时器(在NVIC中),当systick计数值到0的时候,SysTick重装载寄存器就会自动重新装载初值。只要SysTick控制和状态寄存器(CTRL)中的使能位没有ENABLE清除掉,那么就会永远的执行下去。 SysTick定时器被捆绑在NVIC中,可产生SysTick异常(异常号:15),属于Cortex-M4内核里的一个功能单元。 SysTick常作为系统节拍定时器用于操作系统(如mCOS-Ⅱ、FreeRTOS等)的系统节拍定时,从而推动任务和时间的

  的嘀嗒时钟(SysTick) /

  F411的无刷直流电机FOC控制管理系统设计

  的集成化复合式无人机飞控系统设计

  微控制器的空间矢量脉宽调制

  使用STM32 Nucleo撬开针对物联网的ARM mbed IDE之门

  STM32CubeMX and STM32Cube HAL basics

  【下载】LAT1396 STM32CubeIDE实用技巧之STM32H7双核调试的配置

  【下载】LAT1343 STM32H5 USBD Classic驱动 CDC移植

  【下载】LAT1392 LTDC RGB接口 LCD的TouchGFX工程的移植步骤

  【直播】4月11日,STM32Trust如何帮助新产品设计提升信息安全保护能力

  【线日,基于Buildroot制作STM32MP13启动镜像-深圳/厦门/西安/郑州/苏州

  【新品】STM32U0新一代超低功耗入门级MCU,助力终端产品省电,安全,BOM成本低

  【新品】 STM32H7R/S基于Cortex-M7,运行频率高达600 MHz,板载闪存型MCU 拥有高速的外部存储

  【新品】STM32WBA54/55 支持BLE5.4、IEEE 802.15.4通信协议、Zigbee®、Thread和Matter协议

  【新品】STM32MP2 最高配备双核Arm® Cortex®-A35和Cortex®-M33的STM32MP2系列微处理器

  【新品】STM32H5-Arm® Cortex®-M33 内核,主频高达250MHz,提升性能与信息安全性

  12 1 概述实时时钟RealTimeClock(简称RTC),实时时钟芯片是日常生活中应用最为广泛的消费类电子科技类产品之一。它为人们提供精确的实时时间, ...

  16 3 5 自身地址寄存器1:I2Cx_OAR76543210ADDMODE-ADD[9:8]ADD[7:1]ADD0Bit 15:寻址模式(从模式)0:7位从地址(不响 ...

  一、前言在早期的MCU中是没有看门狗这种东西的,所以产品就很容易出现死机,跑飞的情况。为了尽最大可能避免这种情况的出现,后期的MCU都集成了看门狗 ...

  01前言在学习51单片机的时候,经常会使用keil+protues的方式来做一些实验,这样的模拟仿真为我们节省了很多硬件和时间成本,可以更直观的看 ...

  第一步:具体配置如下图:第二步:能够准确的通过自身需要在NVIC 中断控制器中配置中断响应优先级。这里的配置办法能够参考前面几章!第三步:代 ...

  有奖直播:英飞凌工业半导体在电机驱动行业中的应用 2020年4月21日 上午10:00-11:30 准时开启!

  Microchip直播:单片机编程不再难, 利用MPLAB代码配置器(MCC)实现快速开发

  有奖问答 Azure Sphere物联网解决方案 问答排位赛,你能霸屏多久?

  站点相关:综合资讯51单片机PIC单片机AVR单片机ARM单片机嵌入式系统汽车电子消费电子数据处理视频教程电子百科其他技术STM32MSP430单片机资源下载单片机习题与教程