搜索
bottom↓
回复: 25

展示我的入门工具,深入浅出AVR加配套实验板。带电路图及程序。

[复制链接]

出0入42汤圆

发表于 2009-7-1 16:57:27 | 显示全部楼层 |阅读模式
需要学习例子请拍砖,附/写595读取165及一路PWM。点击此处打开 ourdev_457489.JPG(文件大小:1015K,只有400K以内的图片才能直接显示) (原文件名:DSC00057.JPG)
点击此处打开 ourdev_457490.JPG(文件大小:978K,只有400K以内的图片才能直接显示) (原文件名:DSC00149.JPG)
点击此处打开 ourdev_457491.JPG(文件大小:791K,只有400K以内的图片才能直接显示) (原文件名:DSC00154.JPG)
点击此处打开 ourdev_457492.JPG(文件大小:988K,只有400K以内的图片才能直接显示) (原文件名:DSC00147.JPG)

出0入42汤圆

 楼主| 发表于 2009-7-1 16:57:52 | 显示全部楼层
.

出0入42汤圆

 楼主| 发表于 2009-7-1 16:59:28 | 显示全部楼层
实验板原理图

点击此处下载 ourdev_457493.pdf(文件大小:67K) (原文件名:ATm48-88-168-m8实验板原理图.pdf)
点击此处下载 ourdev_457494.pdf(文件大小:39K) (原文件名:串口及PWM,DA部分电路.pdf)
点击此处下载 ourdev_457495.pdf(文件大小:34K) (原文件名:AT48电源部分.pdf)

出0入42汤圆

 楼主| 发表于 2009-7-1 17:08:39 | 显示全部楼层
SPI方式写74HC595读74HC165电压表及165键值数码管显示。
点击此处下载 ourdev_457498.rar(文件大小:35K) (原文件名:595165.rar)

出0入42汤圆

 楼主| 发表于 2009-7-1 17:12:39 | 显示全部楼层
需要学习例子请拍砖。

点击此处下载 ourdev_457501.pdf(文件大小:239K) (原文件名:AT48实验PCB板.pdf)

出0入0汤圆

发表于 2009-7-1 17:39:41 | 显示全部楼层
好样的,书也很不错,我也刚刚买了一本,很适合我们初学者,正准备动手做板子了

出0入0汤圆

发表于 2009-7-15 17:25:46 | 显示全部楼层
好贴,做记号

出0入0汤圆

发表于 2009-7-15 17:57:55 | 显示全部楼层
硬件过于雍肿庞大
输入输出电路在实际应用中少有参考价值

出0入42汤圆

 楼主| 发表于 2009-7-16 08:52:37 | 显示全部楼层
实用程序
编码器控制MAX538—12DA实现无级调压。SPI/74HC595方式显示控制值
在我的实验板测试通过。
//ICC-AVR application builder : 2009-6-20 10:37:26
// Target : M48
// Crystal: 8.0000Mhz

#include <iom48v.h>
#include <macros.h>
#include "delay.h"
#include "port48.h"
#define   PD     PORTD
#define   PB     PORTB
#define   PC     PORTC
#define   ss_0  PB2_0
#define   ss_1  PB2_1
#define   ssa_0 PB1_0
#define   ssa_1 PB1_1  
#define   N     6
const uchar led[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};
const uchar ledrl[]={0xfe,0xfd,0xfb,0xf7,0xef,0xff};
uchar ladc[];
uint value;
uint  key;
uint  vdd;

void port_init(void)
{
PORTB = 0xff;
DDRB  = 0xff;
PORTC = 0xff; //m103 output only
DDRC  = 0xff;
PORTD = 0x07;
DDRD  = 0xff;
// DRB4_0;
}

//SPI initialize
// clock rate: 62500hz
void spi_init(void)
{
SPCR = 0x51; //setup SPI
SPSR = 0x00; //setup SPI
}
//call this routine to initialize all peripherals
void init_devices(void)
{
//stop errant interrupts until set up
CLI(); //disable all interrupts
port_init();
spi_init();
MCUCR = 0x00;
EICRA = 0x02; //extended ext ints
EIMSK = 0x01;
//timer0_init();
SEI();
}
/********电压转换*****************/
/*
uint conv(uint i)
     {
          long x;
          uint y;
          x=(3955*(long)i)/4096;
          y=(uint)x;
          return y;
         }       
*/
uchar SPI_Mt(char t)
{
SPDR = t;
while(!(SPSR &(1 << SPIF)));
return SPDR;
}

//显示运算程序
void operation(uint dis_val)
{uchar i;
ladc[0]= dis_val/10000;
ladc[1]=(dis_val%10000)/1000;
ladc[2]=(dis_val%1000)/100;
ladc[3]=(dis_val%100)/10;
ladc[4]=dis_val%10;

for(i=0;i<6;i++)
{
ss_0;
SPI_Mt(ledrl);
SPI_Mt(led[ladc]);
ss_1;
delay_nus(50);
}
}
void max538(void)
{ssa_0;
SPI_Mt((vdd>>8)&0x0F);
SPI_Mt(vdd);
ssa_1;
}



//***********主程序*******************************
void main(void)
{uint a0=0;
init_devices();
max538();
while(1)
{
  operation(vdd);
  if(key==1) {key=0;max538();}
}
}
#pragma interrupt_handler int0_isr:iv_INT0
void int0_isr(void)
{
//external interupt on INT0
delay_nus(100);
if(PIND_2==0)
{
  if(PIND_0==1){if(vdd<4095)vdd++;}
  else {if(vdd>0)vdd--;}
  key=1;
  }
}

出0入0汤圆

发表于 2009-7-17 18:58:57 | 显示全部楼层
`

出0入0汤圆

发表于 2009-8-28 09:44:15 | 显示全部楼层
MARK

出0入0汤圆

发表于 2009-8-28 14:00:26 | 显示全部楼层

出0入0汤圆

发表于 2010-2-4 16:49:02 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-2-4 17:05:59 | 显示全部楼层
支持前方

出0入0汤圆

发表于 2010-2-10 13:36:27 | 显示全部楼层
好贴,做记号

出0入0汤圆

发表于 2010-3-16 09:32:40 | 显示全部楼层
支持

出0入0汤圆

发表于 2010-5-17 15:13:17 | 显示全部楼层
好 学习了

出0入0汤圆

发表于 2010-5-17 16:50:01 | 显示全部楼层
好东西

出0入0汤圆

发表于 2010-5-22 17:35:16 | 显示全部楼层
Mark

出0入0汤圆

发表于 2010-6-30 14:20:09 | 显示全部楼层
学习一下

出0入0汤圆

发表于 2010-7-12 18:52:36 | 显示全部楼层
借鉴

出0入0汤圆

发表于 2010-7-12 22:29:51 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-10-16 15:29:39 | 显示全部楼层
强人

出0入0汤圆

发表于 2011-12-26 17:02:28 | 显示全部楼层
mark

出0入0汤圆

发表于 2012-1-31 07:40:58 | 显示全部楼层
学习了,谢谢!

出0入0汤圆

发表于 2012-8-5 16:01:50 | 显示全部楼层
支持楼主,敢问楼主:你的实验板在哪买的呀
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-8 08:02

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

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