judy的博客

avr单片机和stm32区别,avr单片机选型技巧

judy的头像

单片机的发展相当的迅速,现在各个厂商们也在速度、内存、功能上此起彼伏,竞争激烈,同时涌现出一大批拥有代表性单片机的厂商:Atmel、TI、ST、MicroChip、ARM…国内的宏晶STC单片机也是可圈可点。最为初学者首先要搞清楚他们之间的区别,掌握avr单片机选型技巧,才能够更好的设计产品。

一:avr单片机和STM32区别-STM32单片机介绍

由ST厂商推出的STM32系列单片机,行业的朋友都知道,这是一款性价比超高的系列单片机,应该没有之一,功能及其强大。其基于专为要求高性能、低成 本、低功耗的嵌入式应用专门设计的ARM Cortex-M内核,同时具有一流的外设:1μs的双12位ADC,4兆位/秒的UART,18兆位/秒的SPI等等,在功耗和集成度方面也有不俗的表 现,当然和MSP430的功耗比起来是稍微逊色的一些,但这并不影响工程师们对它的热捧程度,由于其简单的结构和易用的工具再配合其强大的功能在行业中赫 赫有名…其强大的功能主要表现在:

特性:

1.内核:ARM32位Cortex-M3CPU,最高工作频率72MHz,1.25DMIPS/MHz,单周期乘法和硬件除法

2.存储器:片上集成32-512KB的Flash存储器。6-64KB的SRAM存储器

嵌入式开发32位MCU加速取代8位MCU应用

judy的头像

目前在嵌入式MCU开发领域,8位MCU仍占据1/3以上份额,在工业控制、安防、物联网、消费类电子等诸多领域,8位MCU的身影依然处处可见,根据IHS的预测,2018年8位MCU的市场规模将增长到78亿美元,市场份额继续超过MCU市场营收的三分之一以上,因为很多人认为8位MCU未来将继续维持增长。

STM32中AHB总线、APB2总线、APB1总线这些是什么?

judy的头像

一直不明白有STM32中AHB总线、APB2总线、APB1总线这些是是什么??

所谓地址映射,就是将芯片上的存储器 甚至I/O等资源与地址建立一一对应的关系。如果某地址对应着某寄存器,我们就可以运用C语言的指针来寻址并修改这个地址上的内容,从而实现修改该寄存器的内容。

正是因为头文件中有了对于各种寄存器和I/O端口的地址映射,我们才可以在51单片机程序中方便地使用P2^0 =0xFF; TMOD =0xFF等赋值句子对寄存器进行配置,从而控制单片机。

其实地址总线就是就是用来存放地址的,Cortex-M3的地址映射也是类似的,Cortex-M3有32根地址,所以它的寻址空间大小为2^32bit=4GB。(这里什么32跟地址线不需要去纠结了,只要知道配置成了4G的地址就行)然后APB2总线就是指特定的一段地址,如:0x4001 0000—XXXX
具体的解释见\STM32 神舟\神舟III号\第5集 流水灯实验 \LED流水灯实验.pdf上的详解

拓展:

计算机硬件设备有传输数据和地址的线路,有的计算机数据线和地址线是公用的,就要采用分时处理的方式,有的计算机实际地址线路数少于集成电路的地址线路数,就要采用分段寻址的方式。

【解密】MCU是如何被破解的

judy的头像

这篇文章是俄国人Sergei P.Skorobogatov就读英吉利剑桥大学之博士论文,讲解了各种MCU的攻防技术,堪称一部小百科全书。对于志在研究MCU防护的筒子,能给你很多参考思路:但对于想当黑客的人,我们对后果概不负责。

非侵入式攻击不需要对元器件进行初始化。攻击时可以把元器件放在测试电路中分析,也可单独连接元器件。一旦成功,这种攻击很容易普及,并且重新进行攻击不 需要很大的开销。另外,使用这种攻击不会留下痕迹。因此,这被认为是对任意元器件的硬件安全最大的威胁。同时,通常需要很多时间和精力来寻找对特定元器件的非侵入式攻击方法。这通常对元器件进行反向工程,包括反汇编软件和理解硬件版图。

非侵入式攻击可以是被动的或主动的。被动攻击,也叫侧面攻击,不会对被攻击元器件发生作用,但通常是观察它的信号和电磁辐射。如功耗分析和时钟攻击。主动攻击,如穷举攻击和噪声攻击,特点是将信号加到元器件上,包括电源线。

一个简单的非侵入式攻击可以是复制一个上电配置的基于SRAM的FPGA。接上配置芯片用的JATG接口,用示波器或逻辑分析仪,捕捉所有信号。然后可以通过分析波形并回复独有的命令。

64位和32位芯片有什么区别?

judy的头像

据记载,CPU的位是指一次性可处理的数据量是多少,1字节=8位,32位处理器可以一次性处理4个字节的数据量。依次类推,64位处理器可以一次性处理8个字节的数据量,比32位处理器的处理速率加快一倍。

自从苹果在iPhone5s上使用了64位的A7处理器后,手机处理器的位数也就自然而然的成为了人们关注的焦点,那到底64位处理器和32位处理器有什么区别呢?

RS232与RS485在功能上有何区别?

judy的头像

RS232接口是1970年由美国电子工业协会(EIA)联合贝尔系统、调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标准。它的全名是“数据终端设备(DTE)和数据通讯设备(DCE)之间串行二进制数据交换接口技术标准”。

该标准规定采用一个25个脚的DB25连接器,对连接器的每个引脚的信号内容加以规定,还对各种信号的电平加以规定。DB25的串口一般只用到的管脚只有2(RXD)、3(TXD)、7(GND)这三个,随着设备的不断改进,现在DB25针很少看到了,代替他的是DB9的接口,DB9所用到的管脚比DB25有所变化,是2(RXD)、3(TXD)、5(GND)这三个。因此现在都把RS232接口叫做DB9。

市场上把公头的接插件叫做DRXX,母头的叫DBXX,比如我们电脑上的串口,在市场上叫做DR9,不是DB9,很多人都误叫做DB9,实际上的DB9是两个把两个DR9互相连接在一起的接口。 一般在教材或者文章中,大家常常把所有的串口设备接口都统一叫做RS232接口。

由于RS232接口标准出现较早,难免有不足之处,主要有以下四点:

降低噪声与电磁干扰的30条经验

judy的头像

子设备的灵敏度越来越高,这要求设备的抗干扰能力也越来越强,因此PCB设计也变得更加困难,如何提高PCB的抗干扰能力成为众多工程师们关注的重点问题之一。

(1)能用低速芯片就不用高速的,高速芯片用在关键地方。

(2)可用串一个电阻的办法,降低控制电路上下沿跳变速率。

(3)尽量为继电器等提供某种形式的阻尼。

(4)使用满足系统要求的最低频率时钟。

(5)时钟产生器尽量靠近到用该时钟的器件。石英晶体振荡器外壳要接地

(6)用地线将时钟区圈起来,时钟线尽量短。

(7)I/O驱动电路尽量靠近印刷板边,让其尽快离开印刷板。对进入印制板的信号要加滤波,从高噪声区来的信号也要加滤波,同时用串终端电阻的办法,减小信号反射。

(8)MCD无用端要接高,或接地,或定义成输出端,集成电路上该接电源地的端都要接,不要悬空。

(9)闲置不用的门电路输入端不要悬空,闲置不用的运放正输入端接地,负输入端接输出端。

(10)印制板尽量使用45折线而不用90折线布线以减小高频信号对外的发射与耦合。

(11)印制板按频率和电流开关特性分区,噪声元件与非噪声元件要距离再远一些。

枚举在单片机编程的应用

judy的头像

什么时候需要用到enum呢?当变量的数值在几个范围之间,如一个week变量取值只有Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday。这样用enum比较好.当然也可以用define.但是define维护起来比较麻烦, 适合变量的数值范围值较少的时候.

1、用enum关键字说明常量(即说明枚举常量)有以下几点好处:

(1) 使程序更容易维护和直观。例如,下面定义的枚举是描述UART支持的传输bit位数,从枚举类型的定义就可以知道UART模块提供的传输bit的几种模式。

测试PIC单片机如何省电

judy的头像

测试条件:

PIC16F676使用内部4MHzRC振荡,电源电压5V,测试在睡眠下的消耗电流。单片机在外部IO口设置成输入并有固定电平的情况下,程序进入一个NOP指令和跳转指令的死循环后耗电约1.26mA。

1.SLEEP之后:WDT开并256分频,每2.3秒左右唤醒一次,所有IO口为数字输入口,直接接高电平或低电平。5V,0.159mA,主要配置:_INTRC_OSC_NOCLKOUT & _WDT_ON & _PWRTE_ON & _MCLRE_OFF & _BODEN

2.上面的程序没动,只是配置& _BODEN_OFF,电流降为8.5μA,其它配置变化对电流消耗影响不大,WDT开与不开只差0.1μA,可见BROWN OUT DOWN功能是个耗电大户。

3.上面的配置、程序没动,所有IO输入口悬空,结果电流变为0.8-1mA,以上均没开电平变化中断,而且手接近单片机电流变的更大。可见虽然IO口看似没有吸收电流,但干扰电平引起单片机内部比较器频繁翻转的电流可以说很惊人。

4.以上配置,仅将WDT分频比改为1:1,各IO口仍然接固定电平,此时单片机WDT约每1.8mS唤醒一次,电流为8.8μA,可见RC的唤醒很省电。

页面

订阅 RSS - judy的博客