跳转到主要内容

单片机

单片机利用中断复位的两种方式

cathy /

如果想要实现利用中断复位,我所知道的有两种方式:看门狗中断和无中断服务程序的中断。

<center><img src="http://mouser.eetrend.com/files/2018-10/wen_zhang_/100015274-51347-y1.j…; alt=“” width="600"></center>

<strong>一、利用看门狗中断实现复位</strong>

单片机中看门狗的作用在这里就不详细说了,看门狗中断的功能之一是,防止单片机程序陷入预料之外的死循环或者单片机程序跑飞。

<strong>如何实现看门狗中断复位呢?</strong>

掌握了技巧,你还敢说学习单片机很难吗?

cathy /

在单片机应用开发中,代码的使用效率问题、单片机抗干扰性和可靠性等问题仍困扰着工程师。为帮助工程师解决单片机设计上的难题,纳出单片机开发中应掌握的几个基本技巧。

<center><img src="http://mouser.eetrend.com/files/2018-10/wen_zhang_/100015232-51227-1.jp…; alt=“” width="600"></center>

<strong>一、 如何提高C语言编程代码的效率</strong>

用C语言进行单片机程序设计是单片机开发与应用的必然趋势。如果使用C编程时,要达到最高的效率,最好熟悉所使用的C编译器。 先试验一下每条C语言编译以后对应的汇编语言的语句行数,这样就可以很明确的知道效率。在今后编程的时候,使用编译效率最高的语句。

单片机常见的6种报警方式

cathy /

<strong>常见的报警方式有6种</strong>

(1)指示灯或数码管显示出数据,以提醒操作人员注意。

(2)采用声、光及语音进行报警。其中,光效果通常取自发光二极管LED或其他光源器件;声效果可取自电铃、电笛、蜂鸣器、或音乐(语音)芯片等。

(3)合成语音报警。采用这种方式进行报警时,单片机应用系统将对语音信号进行采集、处理、合成和识别,使报警系统的功能更加完善,报警信息更加具体、生动、准确,直至给出报警对象的具体信息。

(4)图形、图像报警。这种系统设微型机控制的打印机或CRT显示器,使警卫人员在接受其他报警信号的同时,还能看到报警显示的画面或数据、文字,不但能将报警资料打印成文,而且可方便存档。

(5)具有控制功能的报警。这种报警系统具有控制功能,如:适时将自动操作切换到人工操作,防止事故发生;达到报警限时,执行机构动作;自动拨出电话号码,将警报情况报告给有关人员。

(6)具有信号远传功能的报警。能将报警信号远传至信号可以达到的远距离处,以供监视、控制用。常用的信号远传方法有:红外线、激光、微波、超声波、有线载波、无线电传输等。

<strong>利用单片机应用系统进行报警的常用方法是什么?</strong>

一文看懂单片机排阻的作用

cathy /

<strong>排阻的阻值读取</strong>

在三位数字中,从左至右的第一、第二位为有效数字,第三位表示前两位数字乘10的N次方(单位为Ω)。如果阻值中有小数点,则用“R”表示,并占一位有效数字。例如:标示为“103”的阻值为10&TImes;10=10kΩ;标示为“222”的阻值为2200Ω即2.2kΩ;标示为“105”的阻值为1MΩ。

需要注意的是,要将这种标示法与一般的数字表示方法区别开来,如标示为220的电阻器阻值为22Ω,只有标志为221的电阻器阻值才为220Ω。

标示为“0”或…000”的排阻阻值为OΩ,这种排阻实际上是跳线(短路线)。

<center><img src="http://mouser.eetrend.com/files/2018-10/wen_zhang_/100014786-50031-z1.j…; alt=“” width="600"></center>

为什么单片机中既有Flash又有EEPROM?

cathy /

单片机运行时的数据都存在于RAM(随机存储器)中,在掉电后RAM 中的数据是无法保留的,那么怎样使数据在掉电后不丢失呢?这就需要使用EEPROM 或FLASHROM 等存储器来实现。

插播一段:ROM最初不能编程,出厂什么内容就永远什么内容,不灵活。后来出现了PROM,可以自己写入一次,要是写错了,只能换一片。随着不断改进,终于出现了可多次擦除写入的EPROM,每次擦除要把芯片拿到紫外线上照一下,想一下你往单片机上下了一个程序之后发现有个地方需要加一句话,为此你要把单片机放紫外灯下照半小时,然后才能再下一次,这么折腾一天也改不了几次。历史的车轮不断前进,伟大的EEPROM出现了,拯救了一大批程序员,终于可以随意的修改ROM中的内容了。

EEPROM的全称是“电可擦除可编程只读存储器”,即Electrically Erasable Programmable Read-Only Memory。是相对于紫外擦除的rom来讲的。但是今天已经存在多种EEPROM的变种,变成了一类存储器的统称。

<strong>狭义的EEPROM:</strong>

【资料下载】如何在 Cortex®-M0+单片机中自定义 ASFv3 SAM-BA 自举程序?

cathy /

SAM Boot Assistant(SAM-BA™)允许通过 USB 或 UART 主机进行系统内编程(In-SystemProgramming,ISP),无需任何外部编程接口。通常情况下,在基于 ROM 的 SAM MCU 中,内部 ROM都包含 SAM-BA 监视器固件,而所有基于 Cortex®-M0+的 MCU 则没有内部 ROM。可以通过将 SAM-BA 监视器固件加载到闪存中来为基于 Cortex-M0+的器件提供 SAM-BA 支持。此 SAMBA监视器固件将充当自举程序,可接受从 SAM-BA 主机/GUI 发出的命令。SAM-BA GUI 将 SAM-BA 小程序发送到 SAM-BA 监视器,然后 SAM-BA 监视器将小程序固件加载到 SRAM 中。SAM-BA 小程序是在SRAM 中运行的一个固件,用于处理 SAM-BA 监视器接收的 SAM-BA 命令。SAM-BA 自举程序固件在 ASFv3 中作为独立示例提供。

今日小编推荐的文档将重点介绍基于 ASFv3 的 SAM-BA 自举程序。

1、概念

2、解决方案

3、其他相关资源

4、常见问题

Microchip ATmega4809 8位MCU在贸泽开售,为高响应命令与控制应用提供支持

cathy /

<p>专注于引入新品的全球电子元器件授权分销商贸泽电子 (<a href="https://www.mouser.com/">Mouser Electronics</a>) 即日起开始分销<a href="https://www.mouser.com/microchip/">Microchip Technology</a>的<a href="https://www.mouser.com/microchip-atmega4809-microcontroller/">ATmega480…; 8位单片机。ATmega4809单片机是megaAVR®系列单片机的新成员,旨在创建高响应命令和控制应用。

【资料下载】针对 32 位单片机的 EMI、EMC、EFT 和 ESD 电路设计注意事项

cathy /

<strong>简介</strong>

本应用笔记旨在提供有关电路保护器件和印刷电路板(Printed Circuit Board,PCB)布线指南的建议,以提高应用在电噪声环境中的抗扰度,并按照下列国际电工委员会(International Electrotechnical Commission,IEC)标准所述提高应用在发生 EMI、EMC、EFT 和 ESD 事件时的生存能力:IEC61000-4-2、IEC 61000-4-4 和 IEC 61000-4-5。

<strong>本文将从以下几个方面开始介绍:</strong>

大牛讲解单片机程序优化经验-,工程师值得一看!

cathy /

由于单片机的性能同电脑的性能是天渊之别的,无论从空间资源上、内存资源、工作频率,都是无法 与之比较的。PC 机编程基本上不用考虑空间的占用、内存的占用的问题,最终目的就是实现功能就可以了。
对于单片机来说就截然不同了,一般的单片机的Flash 和Ram 的资源是以KB 来衡量的,可想而知,单片 机的资源是少得可怜,为此我们必须想法设法榨尽其所有资源,将它的性能发挥到最佳,程序设计时必须 遵循以下几点进行优化:

<strong>1. 使用尽量小的数据类型 </strong>

能够使用字符型(char)定义的变量,就不要使用整型(int)变量来定义;能够使用整型变量定义的变 量就不要用长整型(long int),能不使用浮点型(float)变量就不要使用浮点型变量。当然,在定义变 量后不要超过变量的作用范围,如果超过变量的范围赋值,C 编译器并不报错,但程序运行结果却错了, 而且这样的错误很难发现。

<strong>2. 使用自加、自减指令 </strong>

【资料下载】如何利用 Cortex®-M0+ 单片机实现更快的数学计算

cathy /

<strong>简介</strong>

工业和家用电器市场中的各种应用要求使用数学运算来实现不同的算法和计算。基于 Cortex®-M0+的单片机包含加法、减法和乘法指令。Cortex-M0+架构没有用于除法运算的汇编指令,除法逻辑可以根据不同的编译器而变化。基于 Arm® Cortex-M0+的单片机(MCU)具有一个可配置选项,可通过该选项使用快速乘法器进行乘法运算。基于该可配置选项,乘法运算可以为单个周期指令到最多 32 个周期指令不等。

SAMC21(一款 Cortex-M0+ MCU)非常适合需要数学计算的应用。SAMC21 MCU 具有可进行乘法运算的快速单周期乘法器选项,还具有一个新的外设,称为除法和平方根加速器(Division and Square RootAccelerator,DIVAS),可用于执行快速除法和平方根运算。