17 AVR中的定时器喂狗的作用

在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成程序的跑飞,而陷入死循环,程序的正常运行被打断,由单片机控制的系统无法继续工作,会造成整个系统的陷入停滞状态,发生不可预料的后果,所以出于对单片机运行状态进行实时监测的考虑,便产生了一种专门用于监测单片机程序运行...

2017-09-05 15:51:47

阅读数:422

评论数:0

16 常用芯片使用

ADM3485的使用手册 RS 485接口芯片采用的是ADM3485。ADM3485采用单一电源+3.3 V工作,半双工通信方式,可完成将TTL电平转换为 RS 485电平的功能。 ADM34185芯片的结构和引脚都非常简单,内部含有一个驱动器和一个接收器,RO和DI端分别为接收器的输出端和驱...

2017-06-20 07:50:01

阅读数:223

评论数:0

15 中断延时

在epz项目中出现了一个BUG,客户反映当EPZ设备(485通信)单机测试的时候测试帧正常,但是当总线上串有其他的设备时,例如串上一台S型计数器时,则会发生通讯异常,具体测试例子如下,如果一个数据帧为 11 22 33 44 55 66 77 88 ,完整发送后应该接收epz从机发送的返回帧 11...

2017-06-20 07:47:12

阅读数:88

评论数:0

14 关于单片机死机的一些问题

博主在最近的一个项目中测试系统的高低温实验,结果意外的发现经过高低温实验后(80℃到-20摄氏度)单片机有些已经死机了,所以不得不着手研究一下这个问题,在网上查阅资料后,基本上可以归结于以下几个问题: 1. 意外中断。是否打开了某个中断,但是没有响应和清除中端标志,导致程序一直进入中断,造成死机...

2017-04-22 09:51:00

阅读数:1115

评论数:0

13 算法/分析方法的优化以及总结

对以前的问题的总结

2017-04-12 18:44:36

阅读数:189

评论数:0

12 学习阶段总结

目前的项目主要是新版的主动上传程序,功能主要是有:主动上传+温度测试+二次寿命判断等等。现在楼主主要分享一下在项目进行过程中的一些经验总结: (1)随机函数的使用 这个主要注意的点还是一开始的随机种子以及真假随机数的辨别等,但是在一个没有time.h的工程中,如果使用像博主一样的ADC小数点采...

2017-04-10 19:38:10

阅读数:124

评论数:0

10 迪文屏初探-说明书阅读笔记(一)

触控空间文件 13.BIN 显示控件文件 14.BIN 用户软件需要定时(或者参数改变时的串口中断触发)来读取录入变量值 DGUS屏幕使用数据分为 整数,无符号整数,长整数,超长整数 整数:-32768-32768 0x7fff 无符号整数:0-65535 0xffff 长整数:-0x800...

2017-03-29 15:02:00

阅读数:3586

评论数:0

08 在ATmega8中真实可用的ADC转换器写法

有些时候我们喜欢用ATmega8中的代码生成编辑器去编辑一个完成的软件架构,但是博主在进行ADC代码测试编写的时候发现,ADC的编辑器是比较坑的,在ATmega8单片机的手册中我们可以发现有左对齐和右对齐的数据读取方法,但是在宏定义的说明上,生成编辑器却仅仅说明宏定义只是一个时钟源的不同的解析,包...

2017-03-27 13:22:25

阅读数:1268

评论数:0

07 AVR单片机ATmega8工业总线项目的通信处理以及实现

这两天带博主的工程师给了一个小任务给我,使用7个小器件进行半双工的工业485总线通信,使用公司内部标准帧格式,采用主动上传方式每隔一定的定量时间进行数据上传。当然,实现一个器件的数据上传是十分简单的,但是使用大于两个器件进行485工业数据传输的时候就必须要考虑数据碰撞的问题了。

2017-03-23 15:27:46

阅读数:163

评论数:0

06 格式帧的传输初探以及校验方法初探

博主在最近的一次项目中需要使用格式帧的传输以及累加校验的方式,在以前大多数的情况下我们都是一位开始位一位结束位8位数据位而且无校验,在现在的项目实现主动上传的目的帧格式,主动上传的间隔为用户自己设定,需要如下编写: 输出数据: 帧头 序列号 A类型 ...

2017-03-21 08:55:38

阅读数:190

评论数:0

AVR单片机中ATmega8的AD转换探究

AD采集最好要满足的条件:采样频率不小于被采集信号最高频率的两倍,则采样输出信号就可以无失真的重新啊还原输入信号,通常的实际应用中,采样频率为采集最高频率的5-10倍。 AD芯片的数据输出方式有串行和并行两种方式,对于AVR单片机来说A/D芯片和AVR单片机接口是需要考虑的一些问题: (1)模...

2017-03-17 14:41:52

阅读数:1835

评论数:0

关于AVR单片机熔丝位的设置和拯救方法大全 AVR单片机熔丝位的设置和详细的拯救方法

http://blog.csdn.net/tyshtang/article/details/46137849   熔丝位是ATMEL公司AVR单片机比较独到的特征。在每一种型号的AVR单片机内部都有一些特定含义的熔丝位,其特性表现为多次擦写的E²PROM。用户通过配置(编程)这些熔丝位,可以固定...

2017-03-16 20:03:01

阅读数:327

评论数:0

05 关于AVR ATmega8 串口数据协议传输的奇偶校验码的一点想法

在我们本科甚至在刚刚参加工作的时候(例如博主),写串口通信基本都是一位开始一位结束八位数据位没有奇偶校验位,那么这样的好处是方便,的确很方便,但是对于数据传输的隐蔽性和封装的保护就没有那么好的效果了。今天博主初步的探究下在程序中加入奇偶校验位的使用和通信方式。 对于一帧数据的传输,如果以我博客第...

2017-03-16 19:53:06

阅读数:450

评论数:0

04 AVR单片机ATMEGA8 USART的使用

博主在最近的项目里遇到了需要使用USART串口来通信的功能,首先USART和UART有一点很不一样的地方就是: UART:universal asynchronous receiver and transmitter通用异步收发器            [Bus Signal]  TX ,...

2017-03-16 19:10:38

阅读数:340

评论数:0

03 AVR单片机中断的学习探究(外部中断与内部中断)

最开始的一点,所有中断的配置都必须要打开全局中断控制#asm(“sei”) //打开SREG的全局使能I置位 首先博主先探究了一下AVR单片机的外部中断。 外部中断需要用的必须先看原理图的INT0 INT1的引脚。因为外部中断是通过这两个引脚来触发,只要使能引脚,而且配置引脚为输出方式,电...

2017-03-15 11:20:59

阅读数:1164

评论数:0

02 AVR定时器的探索

首先先说一下AVR8位的通用定时器寄存器T/C0: 有一句不太理解的话:所有中断都可以通过 (定时器中断屏蔽寄存器)TIMSK单独进行屏蔽。 解释:TIMSK寄存器是一个定时器/计数器中断屏蔽寄存器,就是说TIMSK可以去单独屏蔽一些中断。 适用于内部的定义: BOTTOM 计数器达到0x00时...

2017-03-15 09:03:12

阅读数:152

评论数:0

01 CVAVR的编程分类 IO的寄存器配置

对于CVAVR的使用,多c文件是编辑一个单片机项目不可缺少的过程,但是在多个C文件之中,具体的分类是怎样的? 博主在询问了工程师之后知道了一些分类原则 多C文件主要分为  main.c    function.c    interrupt.c  init.c  等等,再加上一些独立使用模块的C...

2017-03-14 19:24:28

阅读数:194

评论数:0

AVR ATMEGA8的初次使用

博主进入南京的一家公司,公司的工程师开发都是用AVR单片机来进行工业的控制和操作,开发软件主要是CVAVR,由于博主本来是使用51的keil以及M3内核的K60比较多一点,所以对于新的开发平台并不是特别陌生,在简单的熟悉了下该软件后,发现它的集成性特别好,在创建工程的时候可以很快速的建立一些通用代...

2017-03-14 19:19:15

阅读数:420

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭