如何提高单片机抗干扰让你少走弯路搞过产品的朋友都有体会,一个设计看似简单,硬件设计和代码编写很快就搞定,但在调试过程中却或多或少的意外,这些都是抗干扰能力不够的体现。 下面讨论一下如何让你的设计避免走弯
本程序适用于Intel的51系统单片机例 将(R2R3)和(R6R7)两个双字节无符号数相乘,结果送R4R5R6R7。用移位和迭加的方式,步骤如下:1)清部分积(高16位)R4R5=0。循环数16。2)把R4R5R6R7右移一位,从最低位开始检
主机:UBUNTU10.04LTS,交叉工具链为:arm-linux-gcc 2.95,安装目录:/usr/local/arm/2.95.3/bin目标板:Edukit-III,S3c2410子板问题描述:由于英蓓特公司的Edukit-III实验箱自带的LINUX为2.4版本,鉴于现在LINUX2.6
对一个初学单片机的人来说,学习的方法和途径非常重要。如果按教科书式的学法,上来就是一大堆指令、名词,学了半天还搞不清这些指令起什么作用,能够产生什么实际效果,那么也许用不了几天就会觉得枯燥无味而半途而
前段时间 STM32 的I2C应用搞的一塌糊涂,自我感觉十分不爽。又找出了一片 德州仪器 的12位 I2C 接口的温度传感器 TMP101来 练练手。先在SMT32接线时连电源都接错了,上拉也没接。算了先在51 上跑跑,不久一定要在STM
有时候,我们所写代码的具体实现方法不想让其他人知道。这时,可以用Keil对代码进行封库。注意:在封库之前,必须确保整个工程代码能够编译通过。下面举例说明操作步骤:想要把工程中“firmware.c”文件封装成库文件
一。开发环境和固定库版本二。准备工作三。建立工程模板1. 建立一个Template的文件夹2.在Template文件夹下建立下面3个文件夹CORE 用来存放核心文件和启动文件, OBJ 是用来存放编译过程文件以及 hex 文件, STM32F10
本文纯属原创,为arm子程序模块,包含了汇编和C语言两种写法,后续将陆续完善。ON1、关闭WATCHDOG,否则CPU会不断重启:汇编:disable_watch_dog:@往WATCHDOG寄存器写0mov r1,#0x53000000mov r2,#0x0str r2,[r1]mov p
简介不同的开发板的原理图结构也不尽相同,笔者在这里使用野火的MINI-V3(F103VET6)简易开发板对GPIO口的设置做一个简单的介绍,并实现按键控制LED灯的亮灭。方便读者可以快速熟悉并灵活应用。原理图分析首先我们来
首先来看图 3-1,这是上节课已经见过的 USB 接口和供电电路。图 3-1 USB 接口和供电电路左边这张图,过了保险丝以后,接了一个 470uF 的电容 C16,右边这张图,经过开关后,接了一个 100uF 的电容 C19,并且并联了一
配置完时钟,如何验证时钟的配置准确性呢?LPC1114带有CLKOUT引脚,此引脚专门用来输出时钟,用示波器观察此引脚,即可看到时钟的频率。1.硬件配置CLKOUT引脚位于LPC111X和LPC11CXX单片机的P0.1脚,如下图所示:2.软
0 引言计算机外部设备(如打印机、扫描仪、音响等)的待机能耗不但增加了消费者的日常电费开支,也使电力资源浪费极大。该设计的计算机智能节能插座利用主机的开机和关机来带动其他设备的开或关,使其接口设备待机能耗
#include#define uchar unsigned char#define uint unsigned int#include"DS1302.h"#include"DS18B20.h"#define sec 0x80#define min 0x82#define hou 0x84#define read 0x01unsigned char hour,minute,second,id=0,
ifdef条件编译单片机程序开发过程中,经常会遇到一种情况,当满足某条件时对一组语句进行编译,而当条件不满足时则编译另一组语句。条件编译命令最常见的形式为:#ifdef 标识符程序段1#else程序段2#endifextern变量申
1、创建的cJSON对象root,没有cJSON_Delete(root);执行一次就死机了2、cJSON解析的root得到的字符串char *str,free(str),执行n次后就返回信息错误了。改成myfree(str)后运行正常了。