打印

问题求助 9楼 11楼 14楼 谢谢

[复制链接]
2092|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
华仔2007|  楼主 | 2010-5-2 16:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 华仔2007 于 2010-6-1 14:56 编辑

2010-5-2:

待测电机:同第二个项目
完成功能:检测三相HALL输出信号的峰峰值
单片机:ATMEGA128L
显示模块:点阵型12864LCD

51断断续续学了1年多了,有头有尾的项目就搞了两个,感觉越学吧该学的东西就越多,真想回到大学把高数 电路 模电,好好重学一遍,如果给我这机会,我绝对不会停留在应付考试不挂科那种程度
我搞的项目不多,以我现在对单片机的理解程度,最最最最重要的是系统的稳定性,不管是硬件电路设计还是程序编写,稳定性简直太重要了,再花哨的电路,再复杂的程序,如果缺少稳定性,就跟垃圾一样一样的,不多说了,我还没有资格在这废话
AVR没学过,想通过这个项目了解一下,希望大家多多支持

相关帖子

沙发
华仔2007|  楼主 | 2010-5-8 13:59 | 只看该作者
2010-5-8
学习了一下mega128l的io口,编写了第一个avr程序,mega128+点阵型12864lcd
觉得比较痛苦的是编写了一个6x8 ascii码字库,共享一下
/*ASCII码6x8点阵字库*/
const unsigned char FONT [] =
{ 0x00,0x00,0x00,0x00,0x00,0x00,   /* */
  0x00,0x00,0x00,0x4f,0x00,0x00,   /*!*/
  0x00,0x00,0x07,0x00,0x07,0x00,   /*"*/
  0x00,0x14,0x7f,0x14,0x7f,0x14,   /*#*/
  0x00,0x24,0x2a,0x7f,0x2a,0x12,   /*$*/
  0x00,0x23,0x13,0x08,0x64,0x62,   /*%*/
  0x00,0x36,0x49,0x55,0x22,0x50,   /*&*/
  0x00,0x00,0x05,0x03,0x00,0x00,   /*'*/
  0x00,0x00,0x1c,0x22,0x41,0x00,   /*(*/
  0x00,0x00,0x41,0x22,0x1c,0x00,   /*)*/
  0x00,0x14,0x08,0x3e,0x08,0x14,   /***/
  0x00,0x08,0x08,0x3e,0x08,0x08,   /*+*/
  0x00,0x00,0x50,0x30,0x00,0x00,   /*,*/
  0x00,0x08,0x08,0x08,0x08,0x08,   /*-*/
  0x00,0x00,0x60,0x60,0x00,0x00,   /*.*/
  0x00,0x20,0x10,0x08,0x04,0x02,   /*/*/
  0x00,0x3e,0x51,0x49,0x45,0x3e,   /*0*/
  0x00,0x00,0x42,0x7f,0x40,0x00,   /*1*/
  0x00,0x42,0x61,0x51,0x49,0x46,   /*2*/
  0x00,0x21,0x41,0x45,0x4b,0x31,   /*3*/
  0x00,0x18,0x14,0x12,0x7f,0x10,   /*4*/
  0x00,0x27,0x45,0x45,0x45,0x39,   /*5*/
  0x00,0x3c,0x4a,0x49,0x49,0x30,   /*6*/
  0x00,0x01,0x71,0x09,0x05,0x03,   /*7*/
  0x00,0x36,0x49,0x49,0x49,0x36,   /*8*/
  0x00,0x06,0x49,0x49,0x29,0x1e,   /*9*/
  0x00,0x00,0x36,0x36,0x00,0x00,   /*:*/
  0x00,0x00,0x56,0x36,0x00,0x00,   /*;*/
  0x00,0x08,0x14,0x22,0x41,0x00,   /*<*/
  0x00,0x14,0x14,0x14,0x14,0x14,   /*=*/
  0x00,0x00,0x41,0x22,0x14,0x08,   /*>*/
  0x00,0x02,0x01,0x51,0x09,0x06,   /*?*/
  0x00,0x32,0x49,0x79,0x41,0x3e,   /*@*/
  0x00,0x7e,0x11,0x11,0x11,0x7e,   /*A*/
  0x00,0x7f,0x49,0x49,0x49,0x36,   /*B*/
  0x00,0x3e,0x41,0x41,0x41,0x22,   /*C*/
  0x00,0x7f,0x41,0x41,0x22,0x1c,   /*D*/
  0x00,0x7f,0x49,0x49,0x49,0x41,   /*E*/
  0x00,0x7f,0x09,0x09,0x09,0x01,   /*F*/
  0x00,0x3e,0x41,0x49,0x49,0x7a,   /*G*/
  0x00,0x7f,0x08,0x08,0x08,0x7f,   /*H*/
  0x00,0x00,0x41,0x7f,0x41,0x00,   /*I*/
  0x00,0x20,0x40,0x41,0x3f,0x01,   /*J*/
  0x00,0x7f,0x08,0x14,0x22,0x41,   /*K*/
  0x00,0x7f,0x40,0x40,0x40,0x40,   /*L*/
  0x00,0x7f,0x02,0x0c,0x02,0x7f,   /*M*/
  0x00,0x7f,0x04,0x08,0x10,0x7f,   /*N*/
  0x00,0x3e,0x41,0x41,0x41,0x3e,   /*O*/
  0x00,0x7f,0x09,0x09,0x09,0x06,   /*P*/
  0x00,0x3e,0x41,0x51,0x21,0x5e,   /*Q*/
  0x00,0x7f,0x09,0x19,0x29,0x46,   /*R*/
  0x00,0x46,0x49,0x49,0x49,0x31,   /*S*/
  0x00,0x01,0x01,0x7f,0x01,0x01,   /*T*/
  0x00,0x3f,0x40,0x40,0x40,0x3f,   /*U*/
  0x00,0x1f,0x20,0x40,0x20,0x1f,   /*V*/
  0x00,0x3f,0x40,0x38,0x40,0x3f,   /*W*/
  0x00,0x63,0x14,0x08,0x14,0x63,   /*X*/
  0x00,0x07,0x08,0x70,0x08,0x07,   /*Y*/
  0x00,0x61,0x51,0x49,0x45,0x43,   /*Z*/
  0x00,0x00,0x7f,0x41,0x41,0x00,   /*[*/
  0x00,0x02,0x04,0x08,0x10,0x02,   /*\*/
  0x00,0x00,0x41,0x41,0x7f,0x00,   /*]*/
  0x00,0x04,0x02,0x01,0x02,0x04,   /*^*/
  0x00,0x40,0x40,0x40,0x40,0x40,   /*_*/
  0x00,0x00,0x01,0x02,0x04,0x00,   /*`*/
  0x00,0x20,0x54,0x54,0x54,0x78,   /*a*/
  0x00,0x7f,0x48,0x44,0x44,0x38,   /*b*/
  0x00,0x38,0x44,0x44,0x44,0x20,   /*c*/
  0x00,0x38,0x44,0x44,0x48,0x7f,   /*d*/
  0x00,0x38,0x54,0x54,0x54,0x18,   /*e*/
  0x00,0x08,0x7e,0x09,0x01,0x02,   /*f*/
  0x00,0x0c,0x52,0x52,0x52,0x3e,   /*g*/
  0x00,0x7f,0x08,0x04,0x04,0x78,   /*h*/
  0x00,0x00,0x44,0x7d,0x40,0x00,   /*i*/
  0x00,0x20,0x40,0x44,0x3d,0x00,   /*j*/
  0x00,0x7f,0x10,0x28,0x44,0x00,   /*k*/
  0x00,0x00,0x41,0x7f,0x40,0x00,   /*l*/
  0x00,0x7c,0x04,0x18,0x04,0x78,   /*m*/
  0x00,0x7c,0x08,0x04,0x04,0x78,   /*n*/
  0x00,0x38,0x44,0x44,0x44,0x38,   /*o*/
  0x00,0x7c,0x14,0x14,0x14,0x08,   /*p*/
  0x00,0x08,0x14,0x14,0x18,0x7c,   /*q*/
  0x00,0x7c,0x08,0x04,0x04,0x08,   /*r*/
  0x00,0x48,0x54,0x54,0x54,0x20,   /*s*/
  0x00,0x04,0x3f,0x44,0x40,0x20,   /*t*/
  0x00,0x3c,0x40,0x40,0x20,0x7c,   /*u*/
  0x00,0x1c,0x20,0x40,0x20,0x1c,   /*v*/
  0x00,0x3c,0x40,0x30,0x40,0x3c,   /*w*/
  0x00,0x44,0x28,0x10,0x28,0x44,   /*x*/
  0x00,0x0c,0x50,0x50,0x50,0x3c,   /*y*/
  0x00,0x44,0x64,0x54,0x4c,0x44,   /*z*/
  0x00,0x00,0x08,0x36,0x41,0x00,   /*{*/
  0x00,0x00,0x00,0x7f,0x00,0x00,   /*|*/
  0x00,0x00,0x41,0x36,0x08,0x00,   /*}*/
};

使用特权

评论回复
板凳
华仔2007|  楼主 | 2010-5-8 14:03 | 只看该作者
用什么方法测定正弦波的峰峰值呢?
我现在的思路是在一个周期内连续的ad转换,然后用最大值减去最小值
大家都有什么好的办法

使用特权

评论回复
地板
华仔2007|  楼主 | 2010-5-9 08:33 | 只看该作者
有什么好的办法检测正弦波的峰峰值呢,如果用我上面说的那种方法,一个周期内需要多少次AD转换呢

使用特权

评论回复
5
华仔2007|  楼主 | 2010-5-17 19:35 | 只看该作者
谁能帮帮忙啊,我实在想不出什么好办法来了

使用特权

评论回复
6
原野之狼| | 2010-5-17 21:41 | 只看该作者
方法一:峰值电路
方法二:软件采一串数据 找出最大的即可

使用特权

评论回复
7
highgear| | 2010-5-17 21:49 | 只看该作者
1) 确定滤过波,没有毛刺等干扰
2) AD数字信号变换,例如: signal = (AD - offset) * scale
3) 软件确定信号过0,一个周波的开始
4) 判断周波的峰谷. 

使用特权

评论回复
8
zhangjiwei2007| | 2010-5-23 21:09 | 只看该作者

使用特权

评论回复
9
华仔2007|  楼主 | 2010-5-25 16:27 | 只看该作者
本帖最后由 华仔2007 于 2010-6-1 14:51 编辑
方法一:峰值电路
方法二:软件采一串数据 找出最大的即可
原野之狼 发表于 2010-5-17 21:41

我现在正在按照第二种方法在进行,被测信号周期最大1.54ms,1次AD转换时间为26us,我现在连续采样60个数据,在其中找出最大值和最小值,再计算峰峰值,这样的方法可行吗?
就先这样吧

使用特权

评论回复
10
华仔2007|  楼主 | 2010-5-25 16:30 | 只看该作者
2010-5-25
学习了ATMEGA128L 片内EEPROM编程方法

使用特权

评论回复
11
华仔2007|  楼主 | 2010-5-25 16:38 | 只看该作者
又遇到点问题,使用ATMEGA128L片内ADC,同样的程序,同样的外围电路,使用PF0-PF3接地,转换结果为0v,使用PF4-PF7接地,转换结果不是0v,比0v大一点,不知道朋友们遇到没遇到过这样的问题

使用特权

评论回复
12
华仔2007|  楼主 | 2010-5-26 14:14 | 只看该作者
顶起

使用特权

评论回复
13
华仔2007|  楼主 | 2010-5-26 20:45 | 只看该作者
大家帮帮忙啊

使用特权

评论回复
14
华仔2007|  楼主 | 2010-6-1 14:55 | 只看该作者
经过反复实验,同样的程序,使用PF0-PF3接地,转换结果为0v,使用PF4-PF5接地,转换结果为73mv,这到底是怎么回事?PF0-PF3与PF4 PF5内部电路不一样?

使用特权

评论回复
15
rogerllg| | 2012-4-27 17:55 | 只看该作者
刚用了楼主的字库,好用,顶起!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

22

主题

83

帖子

0

粉丝