Skip navigation.

火与冰--alva's blog

胸有激雷,面如平湖

Posts tagged with "electronics"

Debugger,Debugger,and debugering---结果:不可忽略的高频干扰

AVR的线路板花了一天时间焊好了,后来接着做ISP编程器,总用别人的下载器也不好,并且我的程序会需要经常的调试,我没有JTAG调试器,所以只有靠写入芯片然后靠故意加上的一排LED来调试,下载器会总是跟着我的电脑,为此,我的AVR实验板都是用电脑的USB口供电,连稳压电源也省了,照着ouravr网站上提供的电路图,检查了N遍电路,结果下载器还是提示说找不到设备(错误号-24)。后来搜索AVRfreak的论坛,从ponyprog的官网上找到了stk200的改善接线图,主要改进是在SCK线上加0.1us的RC低通滤波(1k电阻与100pF电容组成的RC回路)。改成这个电路之后,在我的机器上还是不能正常工作。几乎绝望,但是找不到什么原因。现在唯一的可能原因就是屏蔽电缆了,我没有屏蔽电缆,于是用5类线代替了。拿到老师那边去,居然在老师那边能正常工作!?拿回宿舍,在宿舍一个哥们的电脑上也能正常工作。吃过饭之后,回到实验室又不行了。通过加上几个低通滤波器之后能够工作的经验,怀疑是实验室的电磁干扰问题。看样子得去电子市场买一根打印机用得屏蔽电缆了。上个星期在芯慧定的ATmega16的芯片还没有到货,mega16L的倒是已经到了,听说Mega16的片子比较不好买。现在用着别人的一块mega16L的片子,说是5V电压,可以正常工作到16M频率下,但是毕竟不是官方上说的,不敢用,所以还是正式的系统中还是等mega16的芯片吧。不过,芯慧的服务态度真是让人满意,今天打电话过去问的时候,接电话的MM很热心,还说帮我去找屏蔽电缆呢(从我们学校去电子市场有一个多小时的车程,并且线路都很挤,难受,我上次去买电子元件时都站了一个下午的公交车,累就一个字)。希望过两天,他们来学校找我们老师的时候,帮我把芯片带过来。先在这边先赞天津“芯慧科技”一句吧~

今天去买了一堆元件回来

电阻,电容,晶振,LED,开关,排线,插针,几种规格的接头等等,总共买了60块钱;不过主要的器件Atmega16没有买到,天津现在缺货。好像全国都缺货似的,从网上看到ouravr.com也说这个缺货。不过,芯慧科技的老板过几天到我们学校来,可以给我带芯片过来,哈哈,就省得我跑了,这两天把板子给弄好。还要做一个ISP的编程线。我用的开发环境(全是免费软件):
Scilab
Eagle
avr-gcc
avr-bintuils
avr-glibc
uisp
vi
现在从网上能查到的linux下的开发环境比较老,不合适新版本的开发工具的安装和配置,不过对于熟悉linux的人也非常容易安装和配置。有空(我把板子做完)就把过程写出来,并且把电路原理图都发布出来。可能最近都没有时间去想自由软件的事情了。

毕业设计项目的进展

阅读了大量的资料还有datasheet,现在有点进展,方案都想好了,这周末去准备元件,没有还得去电子市场买。如果要与PAN101进行有效的通信,利用它的两路正交量输出是很不错的的选择,它是一个四态的状态机模型,如果用上升沿和下降沿来产生中断进行数据的传输的话,单片机是不能提供这么多的中断输入的。现在是想采用查询的方式,并且查询程序的运行时间需要把握好,Pan101是3000frame/s的速度传输时间,每一frame有四个状态,那么每个态保留的时间大概为80us,如果要查询到状态的变换,那么查询周期要在40us之内完成,这个普通的51单片机是达不到此要求的。12M的晶振也只能是1us的指令周期。所以要有我不怎么熟悉的AVR芯片,并且为了查询计算,LED显示,指令更多,所以选择时钟频率比较高的AVR芯片来做。AVR是率先实现了一个时钟周期一个机器周期的单片机,它在8位单片机领域内无疑是王者。只要有12M的时钟脉冲就够了,只要程序的汇编指令在400条之内就可以达到要求,初步统计是够的。另外芯片的价格也不贵,我想选择频率更高的芯片,留些裕度。并且让我感到很惊奇的是,它的开发基本可以在linux下完成,有gcc,avr-binutils,avr-glibc,并且可以通过并口对它进行编程,用免费软件ponyprog,它的内部存储器是Flash的,可以几千次的修改擦写。这些特性都和复合我的要求。我想虽然我是自动化专业,但是大学四年我对硬件方面的自主学习不多,这也就是我为什么毕业设计不选择比较适合我专长的软件而是不是我专长的硬件方面,让我自己通过这个项目使自己对单片机的开发更加深入的理解。以前纸上谈兵的时候多。
我的学位论文
December 2009
S M T W T F S
November 2009January 2010
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31