|  | 【电路板】AVR编程器的制作 | 
                
          |   一派掌門 二十級 | 
              器材共5样: 空白电路板,40P紧缩座,10PXX座(我不知道名字,看图);ATMega16集成块,ISP下载器 
 | 
                
          |   一派掌門 二十級 | 
              电路图: 
 | 
|
        
                
          |   一派掌門 二十級 | 
              ISP座的缺口图中已经标出。先把ISP座的1、5、7、9、2、8分别接上40P紧缩座的6、9、8、7、10、11接口上 【不需要把2接电源正、8接电源负!!!!!!】   然后再把单片机的11与31口连接起来就OK了。 | 
|
        
                
          |   一派掌門 二十級 | 
              焊接完毕后,用万用表检测单片机的10、11口是否接通,如果接通则说明有短路。 确认没有短路后,再把下载器插在电脑上和电路板上,打开AVR_frighter软件,写入  E4  D9  FF熔丝位(以便于使用内部晶振)。   然后就可以烧写hex文件了。   烧写成功!!! | 
|
        
                
          |   一派掌門 二十級 | 
              接下来测试一下这个编程器工作是否正常。 焊接一个200Ω电阻和一个发光二级管 
 左边接单片机31口,右边接1口 然后用万用表检验10、11之间是否短路。确认没有短路后插在电脑上。 | 
|
        
                
          |   一派掌門 二十級 | 
              编写一个程序并编译成hex文件: #include <iom16v.h>void delay_ms(unsigned int k)
 {
 unsigned int i,j;
 for (i=0;i<k;i++)
 for (j=0;j<1140;j++);
 }
 void main()
 {
 DDRB=0xff; //PB口全部设置为输出
 while (1)
 {
 PORTB=0xff; //点亮二极管
 delay_ms(500); //延迟500毫秒
 PORTB=0x00; //熄灭二极管
 delay_ms(500);
 }
 }
 
 | 
|
        
                
          |   一派掌門 二十級 | 
              烧写这个程序后如果发光二级管闪烁,证明编程器工作正常。 本编程器没有加复位电路,如果要加的看电路图: | 
|
        
                
          |   一派掌門 二十級 |  | 
|
        
                
          |   一派掌門 二十級 | 
              #include <iom16v.h>#include <macros.h>
 void delay_ms(unsigned int k)
 {
 unsigned int i,j;
 for (i=0;i<k;i++)
 for (j=0;j<1140;j++);
 }
 void main()
 {
 unsigned int i;
 DDRB=0xff; //PB口全部设置为输出
 while (1)
 {
 if (i<10)
 {
 PORTB|=BIT(0); //点亮二极管
 delay_ms(250); //延迟500毫秒
 PORTB&=~BIT(0); //熄灭二极管
 delay_ms(250);
 }
 else if (i<12)
 {
 PORTB|=BIT(0); //点亮二极管
 delay_ms(5000); //延迟5秒
 PORTB&=~BIT(0); //熄灭二极管
 delay_ms(5000);
 }
 else
 {
 i=0;
 continue;
 }
 i++;
 }
 }
 
 这个更复杂一些
 
 | 
|