跳转到主要内容

技术

解读STM32单片机:代码实现PCROP清除

前言

STM32 PCROP专有代码读出保护,将某个区域设置为仅允许执行,可防止代码被非法读出与修改。ST网站提供了免费的PCROP参考代码,但是例程中仅仅提供了用代码设置PCROP。为方便利用PCROP进行知识产权保护的开发和部署,这篇文章提供了方法,可在RDP级别设置为1或者0时,使用代码清除PCROP。

ST网站上的PCROP参考代码

学习使用PCROP,可从ST网站下载文档以及参考代码。文档里有一步一步的详细说明。参考代码则实现了,如何设置编译开发环境去掉文字库(Literal pool),以避免受保护区域需要被读访问;参考代码也实现了如何利用代码使能PCROP保护以及如何导出接口符号供二次开发使用。

一种实用的单片机矩阵键盘设计

矩阵键盘是单片机是外部设备中所使用的排布类似于矩阵的键盘组。矩阵式结构的键盘显然比直接法要复杂一些,识别也要复杂一些,列线通过电阻接正电源,并将行线所接的单片机的I/O口作为输出端,而列线所接的I/O口则作为输入。矩阵键盘的优点是节约单片机IO口,例如普通键盘8个IO口只能用作8个按键,而矩阵键盘能作16个按键。

本文以51单片机为载体介绍一种4*4矩阵键盘实现16个按键操作的原理、电路和软件设计要点。

基于FPGA的数字分频器设计

作者:赵厉,张志国,唐芳福

<strong>1. 概述</strong>

随着集成电路技术的快速发展,半导体存储、微处理器等相关技术的发展得到了飞速发展。FPGA以其可靠性强、运行快、并行性等特点在电子设计中具有广泛的意义。作为一种可编程逻辑器件,FPGA在短短二十年中从电子设计的外围器件逐渐演变为数字系统的核心。伴随着半导体工艺技术的进步,FPGA器件的设计技术取得了飞跃发展及突破。

分频器通常用来对某个给定的时钟频率进行分频,以得到所需的时钟频率。在设计数字电路中会经常用到多种不同频率的时钟脉冲,一般采用由一个固定的晶振时钟频率来产生所需要的不同频率的时钟脉冲的方法进行时钟分频。

如何在IAR中配置CRC参数

前言

STM32全系列产品都具有CRC外设,对CRC的计算提供硬件支持,为应用程序节省了代码空间。CRC校验值可以用于数据传输中的数据正确性的验证,也可用于数据存储时的完整性检查。在IEC60335中,也接受通过CRC校验对FLASH的完整性进行检查。在对FLASH完整性检查的应用中,需要事先计算出整个FLASH的CRC校验值(不包括最后保存CRC值的字节),放在FLASH的末尾。在程序启动或者运行的过程中重新用同样的方法计算整个FLASH的CRC校验值,然后与保存在FLASH末尾的CRC值进行比较。

基于DDS技术和单片机设计的射频信号干扰器

文中介绍的干扰器能够产生3种干扰信号:随机干扰、点频干扰和扫频干扰,其中点频干扰和扫频干扰是基于单片机对DDS芯片AD9852的控制产生,整个系统的控制灵活、高效。测试结果表明,系统能够准确产生所需要的干扰信号,满足抗干扰性能测试的需要。虽然本设计产生的干扰信号位于406 MHz频段,但这样的电路结构也可用于其它频段(需修改VCO、PLL等电路),例如手机通信频段,因此本电路结构对其它频段的应用同样具有借鉴意义。

随着电子设备的使用越来越普遍,电子设备之间的干扰问题也越来越突出,特别是通信设备的干扰问题,这使得电路工程师在电子产品的设计过程中不得不考虑设备的抗干扰问题,并且有必要对通信设备的抗干扰能力进行测试。文中介绍的射频信号干扰器可用于测试通信设备的抗干扰能力,能够产生如下3种干扰:

基于MP430控制的正弦波信号源的设计与制作

本系统以MSP430为控制核心设计并制作一个正弦波和脉冲波信号源。本 实验分为四大模块,分别是键盘扫描模块,正弦波产生模块,脉冲波产生模块和液晶显示模块。正弦产生部分采用DDS芯片AD9851产生频率可控的正弦波,在实践测试中得之从AD9851输出的正弦波幅值会随频率变化,最后通过软件编程明显减少了幅值误差。脉冲产生部分采用Verilog编程在FPGA内部产生占空比可调的脉冲波,解决了由将正弦波变成方波再送FPGA产生脉冲波的不稳定性。本系统工作可靠稳定,较好地完成了基本部分和发挥部分的要求。

<font size="3"><strong>一. 总体方案</strong></font>

CAN总线中特殊波特率如何计算?

CAN总线采用的是异步串行通信,也就是没有单独的时钟线来保证各个收发器之间时钟的一致,每个收发器是按事先设置的波特率来对总线上的电平进行分位。因此波特率设置准确对CAN总线的稳定通信来说非常重要。

CAN总线里我们可以通过对CAN 节点里的位定时寄存器的控制来实现不同波特率的通信。CAN协议里将一个位时间分为同步段、传播段、相位缓冲段1和相位缓冲段2。每个段的时间长度都可以用一个整数的基本时间单位表示,该基本时间单位由系统的时钟振荡器分频得到。

DDR布线举足轻重,一文看懂背后的大学问

DDR布线在PCB设计中占有举足轻重的地位,设计成功的关键就是要保证系统有充足的时序裕量。要保证系统的时序,线长匹配又是一个重要的环节。我们来回顾一下,DDR布线,线长匹配的基本原则是:地址,控制/命令信号与时钟做等长。数据信号与DQS做等长。为啥要做等长?大家会说是要让同组信号同时到达接收端,好让接收芯片能够同时处理这些信号。那么,时钟信号和地址同时到达接收端,波形的对应关系是什么样的呢?我们通过仿真来看一下具体波形。

【干货】以0 MIPS运行你的嵌入式系统

作者:Øivind Loe,Silicon Labs微控制器产品高级营销经理

即使是在诸如物联网应用的无线连接这种主导功耗的事件中,让尽可能多的进程自主运行,也可大大提高电池寿命。降低功耗一直是微控器(MCU)市场的一个主要关注点。超低功耗MCU现在可以大大降低工作模式和深度睡眠模式下的功耗。这种变化的效果是显而易见的,它大大提高了我们日常嵌入式应用中的电池寿命,并且提供了在未来使用能量收集的可能性。

然而,要基于新型MCU降低功耗,开发人员必须考虑到许多因素,对此Silicon Labs特别撰写一篇技术文章:“以0 MIPS运行你的嵌入式系统”,帮助开发人员了解如何利用新型MCU中外设的自主运行,通过更接近以“0”MIPS运行,来实现数据手册中所承诺的低功耗。

非隔离式开关电源PCB布局优化设计

一个良好的布局设计可优化效率,减缓热应力并尽量小走线与元件之间噪声作用。这切都源于设计人员对电中流传导路径以及信号的理解。

当一块原型电源板首次加时,最好的情况 是它不仅能工作而且还安静、发热低。然这种并不多见。

开关电源的一个常见问题是“不稳定 ”的开关波形。有些时候,抖动处于声段磁性元件会产生出音频噪声。如果问题在印刷电路板的布局上,要找原因可能会很困难此开关电源设计初期的正确PCB布局就非常关键。

电源设计者要很好地理解技术细节,以及最终产品的功能需求。因此从电路板设计项目一开始源设计者应就关键性电布局,与PCB布局设计人员展开密切合作。

为什么摄像头接口对ADAS系统设计至关重要

作者:Jim Harrison

汽车正在快速演化成一台安全联网的自动驾驶机器人,能够感测环境、进行思考并采取自主措施。变化更快的也许是小型自动驾驶公共车辆——出租车、拼车或公交车,能够将我们从公共交通站、市中心或办公区域带到想去的地方(最后一公里)。

其中一个例子是2015年10月推出的NAVYA ARMA自动驾驶电动巴士。这台小型巴士能够安全搭载15名乘客,时速高达28英里,目前正在欧洲和美国的许多社区进行测试或运营,并于CES 2017期间亮相拉斯维加斯街头。

<strong>观察周围环境</strong>

揭秘FPGA电机测速系统经典电路

现场可编程门阵列即FPGA,是从EPLD、PAL、GAL等这些可编程器件的基础上进一步发展起来的。作为专业集成电路领域中的半定制电路而出现的FPGA,不但解决了定制电路的不足,而且克服了原有可编程器件因门电路数有限的而产生的缺点。FPGA 的使用十分的灵活,同一片FPGA 只要使用不同的程序就能够达到不同的电路功能。现在FPGA 在通信、仪器、网络、数据处理、工业控制、军事和航空航天等众多领域有着广泛的应用。随着成本和功耗的进一步降低,将在更多的领域运用FPGA。基于FPGA 的电机测速系统设计,以Quartus II 为设计平台,采用硬件描述语言VHDL和模块化设计的方式,并通过数码管驱动电路动态显示测量的结果。本设计具有外围电路少,集成度高,可靠性强等特点,可以用来测量电机的转速值。

<strong>外围电路设计</strong>

基于stm32的数字示波器设计方案

随着集成电路的发展和数字信号处理技术的采用,数字示波器已成为集显示、测量、运算、分析、记录等各种功能于一体的智能化测量仪器。数字示波器在性能上也逐渐超越模拟示波器,并有取而代之的趋势。与模拟示波器相比,数字示波器不仅具有可存储波形、体积小、功耗低,使用方便等优点,而且还具有强大的信号实时处理分析功能。因此,数字示波器的使用越来越广泛。目前我国国内自主研发的高性能数字示波器还是比较少,广泛使用的仍是国外产品。因此,有必要对高性能数字示波器进行广泛和深入研究。

本文通过采用高速高性能器件,设计了一实时采样率为60 msa/s的宽带数字示波器。

<strong>1 数字示波器的性能参数设计</strong>

基于深度学习的无人机识别算法研究

摘 要: 无人机的广泛运用,在给人们带来便利的同时,也引发了不良影响。比如,无人机飞入禁飞区引发安全问题,由于不正当的使用侵犯公民的隐私等,因此需要构建一个无人机警察系统,对无人机实施监控,遏制乱飞现象。采用传统的识别方法,灵活性不足,精度也不够高。为此提出一种基于深度学习的无人机识别算法,通过训练一个基于卷积神经网络(CNNs)的学习网络,得出一个高效的识别模型,实现无人机和非无人机间的分类。模型的测试结果表明,该方法具有较高的识别率。

<strong>引言</strong>

ARM处理器工作模式

<strong>一、存储器格式(字对齐): </strong>
Arm体系结构将存储器看做是从零地址开始的字节的线性组合。从零字节到三字节放置第一个存储的字(32位)数据,从第四个字节到第七个字节放置第二个存储的字数据,一次排列。作为32位的微处理器,arm体系结构所支持的最大寻址空间为4GB。

存储器格式

1、大端格式:高字节在低地址,低字节在高地址;

2、小端格式:高字节在高地址,低字节在低地址;

指令长度:

STM32L4 中 STOP2 模式下的漏电流

<font color="blue"><strong>前言</strong></font>

STM32L4 系列,目前是 STM32 超低功耗产品中最强大的一个系列。它还为我们提供了更多的低功耗模式的选择,包括STOP2 模式,包括低至 30nA 的 Shutdown 模式。对于这些模式,我们需要进行深入地了解,才能把它们用好。

<font color="blue"><strong>问题</strong></font>

LED调光引擎:开关式LED调光驱动器的8位MCU解决方案

开关式可调光LED驱动器具有显著的性能并可以精准控制LED电流,也具有调光功能,这使终端用户在降低功耗的同时制作很好的灯光效果。

8位微控制器可以提供必要的构件用来通信、定制和智能控制,核心独立外设集成比单纯的模拟或ASIC集成电路能提供更大的灵活性,并能改进扩大发光产品的产能并避免同质化。具有预测故障维修、能量监测、颜色和温度维修、远程通信控制的高级特性,这使得智能照明解决方案更具吸引力。

尽管LED驱动器比之前的照明方案提供很多优势,在实际应用中还存在一些小问题,通过本系列的文章我们将了解8位MCU如何消除这些小问题,从而制作出比之前的传统方案产能更大的高性能开关式LED驱动方案。

用MCU打造智能恒温器,功耗/通讯/人机介面逐个击破

在物联网风潮的驱动下,恒温器已朝向联网与智慧化发展。微控制器(MCU)开发商遂推出低功耗,且具备段式LCD显示控制与Wi-Fi/蓝牙/ZigBee无线连结支援能力,以及256位元AES先进加密功能的新方案,助力智慧型恒温器应用发展。

如何使创新的MCU实现高效节能电机控制?

电机对能耗的贡献率在美国接近50%,因此降低电机能耗能有效地提高能源利用率,而采用先进的微控制器(MCU)技术来实现电机控制是一种有效的方法。本文介绍了最新的电机控制MCU技术发展及其应用。

降低能耗的一个主要对象是电机,它消耗了美国总能耗的大约50%。家庭里随便都可以找到超过50个电机,一般会有70到80个,在工业领域,工厂自动控制对电机的利用也很广泛。

今天,MCU技术的最近发展允许电机能在更低的成本下更高效地运行。在某些市场上,这能加快从机电向电子控制的转变,从而能实现变速电机控制以优化电机的工作效率,并在器件的层面上降低所有应用的成本。

<strong>低成本无刷直流电机控制MCU</strong>

如何使微处理器的PWM频率和分辨率翻倍

我们大多数人都知道PWM DAC(数模转换器)。它们很容易实现,也很便宜,非常适合一些低性能的应用。

实现它们的方法是滤除PWM信号中的高频分量,只留下正比于占空比的低频或直流分量。但是低通滤波器并不能完全滤除PWM频率,因此低频/直流信号中通常都会有一定程度的纹波。

减少PWM DAC纹波的方法一般有两种。一种是降低低通滤波器的截止频率,另一种是提高PWM信号的频率。然而不可避免的是,更低的截止频率会延长上升时间;如果是在给定时钟频率点通过减小计数器尺寸实现的,那么更快的PWM频率会降低分辨率。

下面要讨论的设计实例非常有趣,着重介绍了另外一种降低PWM DAC纹波的方法。