搜索
bottom↓
回复: 16

求救!cvavr写的18b20程序

[复制链接]

出0入0汤圆

发表于 2013-3-30 11:44:17 | 显示全部楼层 |阅读模式
本帖最后由 devinzhangs 于 2013-3-30 12:55 编辑

cvavr写的18b20程序,识别不出来18b20,1602在PORTC口,18b20在PORTA4口。用了仿真也是认不出来。怎么办?大侠请指教!谢谢!!
#include <mega16.h>
#include <stdio.h>

// 1 Wire Bus functions
#asm
   .equ __w1_port=0x1B ;PORTA
   .equ __w1_bit=4
#endasm
#include <1wire.h>

// DS1820 Temperature Sensor functions
#include <ds18b20.h>

// Alphanumeric LCD Module functions
#asm
   .equ __lcd_port=0x15 ;PORTC
#endasm
#include <lcd.h>
#include <delay.h>

flash char str1[]="1602 for 18b20";
flash char str2[]="testing...";
char lcd_buffer[33];
unsigned char devices;
unsigned char rom_code[4][9];

void main(void)
{

TCCR0=0x01;
TCNT0=0x00;
OCR0=0x00;

GICR|=0x40;
MCUCR=0x03;
MCUCSR=0x00;
GIFR=0x40;
TIMSK=0x00;
ACSR=0x80;
SFIOR=0x00;

w1_init();
lcd_init(16);

#asm("sei")

while (1)
      {
        lcd_init(16);
            lcd_putsf(str1);
            delay_ms(300);
        lcd_gotoxy(0,1);
        lcd_putsf(str2);
        delay_ms(300);

        lcd_clear();
        lcd_gotoxy(0,0);
        devices=w1_search(0xf0,rom_code);
        PORTA|=(1<<2);
        sprintf(lcd_buffer,"%u DS18B20\nDevice detected",devices);
        lcd_puts(lcd_buffer);
        while(1);
      };
}

阿莫论坛20周年了!感谢大家的支持与爱护!!

曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……

出0入0汤圆

发表于 2013-3-30 14:02:34 | 显示全部楼层
要看你w1_...那些代码才可以啊,识别ds1820,就是是0xf0,search rom命令,注意是ow总线时序,及二叉树算法有没有问题

出0入0汤圆

 楼主| 发表于 2013-3-30 14:21:27 | 显示全部楼层
richyhuang 发表于 2013-3-30 14:02
要看你w1_...那些代码才可以啊,识别ds1820,就是是0xf0,search rom命令,注意是ow总线时序,及二叉树算法有没 ...

大大,我虽然学过c语言编程,但是二叉树算法不明白,avr也是最近才开始玩的,以前只用过51。
w1...是一个头文件,可以修改吗?
ow总线时序是什么东西?

出0入0汤圆

发表于 2013-3-30 14:24:33 | 显示全部楼层
w1_...是指的你的w1_init,w1_search函数
ow是one wire的缩写(单总线的意思)

出0入0汤圆

 楼主| 发表于 2013-3-30 14:46:09 | 显示全部楼层
richyhuang 发表于 2013-3-30 14:24
w1_...是指的你的w1_init,w1_search函数
ow是one wire的缩写(单总线的意思)

unsigned char w1_init(void);
unsigned char w1_read(void);
unsigned char w1_write(unsigned char data);
unsigned char w1_search(unsigned char cmd,void *p);
unsigned char w1_dow_crc8(void *p,unsigned char n);
是这些吗?

出0入0汤圆

 楼主| 发表于 2013-3-30 14:52:15 | 显示全部楼层
richyhuang 发表于 2013-3-30 14:24
w1_...是指的你的w1_init,w1_search函数
ow是one wire的缩写(单总线的意思)


这是仿真结果,我的电路板也是这样做的,这个东西弄了我两天了还没弄好。求指教!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2013-3-30 15:02:42 | 显示全部楼层
哎  人品问题 没办法

出0入0汤圆

发表于 2013-3-30 16:10:52 | 显示全部楼层
devinzhangs 发表于 2013-3-30 14:46
unsigned char w1_init(void);
unsigned char w1_read(void);
unsigned char w1_write(unsigned char dat ...

对啊,就是这些函数,如果你觉的search rom有问题,可以先用skip rom,然后在读一下看看,这样比较简单

出0入0汤圆

 楼主| 发表于 2013-3-30 18:24:44 | 显示全部楼层
richyhuang 发表于 2013-3-30 16:10
对啊,就是这些函数,如果你觉的search rom有问题,可以先用skip rom,然后在读一下看看,这样比较简单 ...

skip rom是什么来的??cvavr有debug功能吗??我只用过keil自带的。debug用什么软件比较好?

出0入0汤圆

发表于 2013-3-30 18:38:51 | 显示全部楼层
说过了  是可以的
cvavr2.6版本下没问题

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

 楼主| 发表于 2013-3-30 18:42:01 | 显示全部楼层
yklstudent 发表于 2013-3-30 18:38
说过了  是可以的
cvavr2.6版本下没问题

在2.03就不行??我的程序哪里出问题了?求指教!

出0入0汤圆

发表于 2013-3-30 18:45:40 | 显示全部楼层
devinzhangs 发表于 2013-3-30 18:42
在2.03就不行??我的程序哪里出问题了?求指教!

程序没人有心情回去看
但可以提醒你一点
DQ需要上拉电阻

出0入0汤圆

 楼主| 发表于 2013-3-30 18:52:59 | 显示全部楼层
yklstudent 发表于 2013-3-30 18:45
程序没人有心情回去看
但可以提醒你一点
DQ需要上拉电阻

谢谢你!解决了!就是上拉电阻!谢谢!十分感谢!

出0入0汤圆

发表于 2013-3-30 19:45:55 | 显示全部楼层
devinzhangs 发表于 2013-3-30 18:52
谢谢你!解决了!就是上拉电阻!谢谢!十分感谢!

解决了就好。。。。

出0入0汤圆

 楼主| 发表于 2013-3-31 00:33:51 | 显示全部楼层
yklstudent 发表于 2013-3-30 19:45
解决了就好。。。。

现在仿真好了,实际电路还是不行,估计是晶振的问题。如何修改晶振值呢?

出0入0汤圆

发表于 2013-3-31 07:39:23 | 显示全部楼层
看手册  熔丝位配置。。。。。

出0入0汤圆

 楼主| 发表于 2013-3-31 10:23:19 | 显示全部楼层
yklstudent 发表于 2013-3-31 07:39
看手册  熔丝位配置。。。。。

谢谢,解决了!还是上网问问人来得比较快捷,印象深刻!
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-8-27 01:24

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表