AVR单片机
昵称90天可改
这个作者很懒,什么都没留下…
展开
-
Proteus:logic contentions detected on net B15
仿真时,proteus出来个感叹号,查看提示logic contentions detected on net B15。DDRC=0xff; PORTC=0xff;将以上第二条语句修改为PORTC=0x00。结果同样警告一下来7条。PC口8个引脚都出警告。解决办法:在设置DDRC为输出方向后,不初始化POROTC,则该条警告不再出现。DDRC=0xff;//PORTC=原创 2012-06-07 02:38:57 · 5412 阅读 · 0 评论 -
AVR单片机(ATmega16L)DS18B20温度传感器驱动程序
自学真难,随便碰到个问题,都要百度半天、一天、两天and so on...... 从开始写DS18B20的程序到现在已经四天了,还没有全部成功。以前写程序,参考的芯片资料都是中文的,感觉英语的看着头大,也看不懂,所以就没想着要去参考参考原厂的datasheet,看了两天的中文资料,这个看了写的程序不正确,马上再下一个,结果桌面上下的DS18B20的资料放了一大片,程序还是不正确。 自感原创 2012-05-01 01:57:09 · 8141 阅读 · 6 评论 -
AVR单片机(ATMEGA16)矩阵键盘扫描程序
程序思路与缺陷参考:51单片机(AT89C52)矩阵键盘检测程序#includetypedef unsigned char uchar;typedef unsigned int uint;#define dula_h PORTD|=0x01#define dula_l PORTD&=0xfe#define wela_h PORTD|=0x02#define wela_l原创 2012-07-22 12:45:20 · 5142 阅读 · 0 评论 -
综合实例:AVR单片机(ATMEGA16)万年历(温度闹钟年月日时分秒星期)
功能说明:LCD1602液晶显示年、月、日、时、分、秒、星期、温度,三个按键控制时间日期调整以及闹钟设定。 三个按键:1、“校时”键,每次按下分别对应调整秒、调整分钟、调整小时、调整星期、调整日、调整月份、调整年份、调整闹钟分钟、调整闹钟小时、退出校时模式;2、“增加/开闹钟功能”键,校时模式下按下此键则数值加一,非校时模式下按下此键则显示出闹钟时间并打开闹钟功能(屏幕显示字母原创 2012-07-18 18:34:36 · 5529 阅读 · 4 评论 -
AVR单片机(ATMEGA16)DS1302时钟芯片程序
原创 2012-06-29 11:21:55 · 4078 阅读 · 1 评论 -
AVR单片机(ATMEGA16)串行收发程序
#include #include #define uchar unsigned char#pragma interrupt_handler SerialService:12uchar rtemp,sflag;void SerialInit(void){ UCSRB=(1<<RXCIE)|(1<<RXEN)|(1<<TXEN); //置一接收结束中断使能、接收使能、发原创 2012-07-05 17:42:22 · 3395 阅读 · 1 评论 -
AVR单片机(ATMEGA16)定时器程序
#include#include#define uchar unsigned char#define uint unsigned int#pragma interrupt_handler timer1:9uchar i,temp;void delay(uint x){ uint y,z; for(y=x;y>0;y--) for(z=1111;z>原创 2012-07-05 17:46:54 · 6098 阅读 · 3 评论 -
AVR单片机(ATMEGA16)外部中断程序
#include#include#define uchar unsigned char#define uint unsigned int#pragma interrupt_handler exter1:3void delay(uint x){ uint y,z; for(y=x;y>0;y--) for(z=1111;z>0;z--);}v原创 2012-07-05 17:37:03 · 4606 阅读 · 0 评论 -
AVR单片机(ATMEGA16)DA0832芯片D/A转换
#include#define uchar unsigned char#define uint unsigned int#define cs_l PORTD&=0xfe//输出低电平#define wr_l PORTD&=0xfd//输出低电平void delayms(uint x)//8M晶振下延时1ms{ uint y,z; for(y=x;y>0;y--)原创 2012-07-05 17:31:56 · 3125 阅读 · 1 评论 -
AVR单片机(ATMEGA16)控制蜂鸣器
#include#include#define uchar unsigned char#define uint unsigned int#define DELAY 500void delay(uint z) //1ms{ uint x,y; for(x=z;x>0;x--) for(y=157;y>0;y--);}void main(void)原创 2012-07-05 17:26:16 · 4980 阅读 · 3 评论 -
ICCAVR:lvalue required
if(PD7){PD7=0;}else{PD7=1;}编译出现错误:lvalue required修改为:if(PD7){PORTD&=0x7f;}else{PORTD|=0x80;}再次编译通过。位赋值,改为逻辑运算总线式赋值。原创 2012-06-08 01:53:40 · 1683 阅读 · 0 评论 -
progisp下载错误-error:could not find USBASP device
XP系统装完ASP驱动,设备管理器上能查看到USBASP设备。但在使用progisp下载时仍然提示错误,找不到USBASP设备。解决方法:1、安装完驱动,重启电脑;2、重新安装驱动;3、上述方法不行的话,换用更高版本的progisp,比如换用支持WIN7 32位的progisp;原创 2012-09-05 20:43:48 · 5706 阅读 · 1 评论