步骤1:电路板
两个电路板上都有电路,并且pdf文件包含这些电路板上的打印文件。您可以从这些图片中蚀刻板。压缩文件包含这些板上所有的Eagle文件。随意修改这些内容。
步骤2:蚀刻或铣削
有两种方法制作这些板,蚀刻或铣削。我不是化学家,所以我使用了最后一个选项。我是从这些出色的指令中学而来的,所以如果有人也有nc-mill并且想用它来制造这些电路板,请告诉我,我将发送G代码。
《物体高度= “ 344” width =“ 425”》
《嵌入高度=“ 344” src =“//www.youtube.com/v/47LjZ4XLYWA” type =“ application/x-shockwave-flash” width = “ 425” wmode =“ transparent”》
步骤3:焊接
下面的图片将显示组件的名称及其在板上的位置。
第4步:测试
在测试我们的开发板之前,我们将需要AVR编程器电缆。这是有关编程电缆的很好的指导。我们只需要6根电线。 SCK,MISO,MOSI,RST,接地和+ 5V,这就是为什么我的连接器只有6个引脚的原因。重要! SCK,MISO,MOSI和RST信号需要390 Ohm电阻器,这些电阻器通常焊接在板上,但是我想节省板上的空间,这就是电阻器位于电缆内的原因。没有这些电阻,将无法进行编程。
我们还必须在rs232模块和主板之间做一条电缆。
图片中还有几条“测试线”,当我们准备使用时,这些线真的很有用
步骤5:编程和简单测试程序
下一步,我们将需要一些用于测试董事会的“测试”程序。结果重要!我们必须从PORTC禁用JTAG,否则我们将无法使用LCD模块,因此这是必要的。
在Linux操作中,可以使用avrdude命令执行该操作:
avrdude -p m16 -c stk200 -U lfuse:w:0xe4:m -U hfuse:w:0xd9:m
此命令禁用JTAG并设置和使用8Mhz内部振荡器。我们的板上有外部晶体,但是人们使用不同大小的晶体,因此此命令对所有人都安全。如果您想使用外部晶体,这里是计算正确保险丝的站点。
重要!进行熔丝编程时要小心。如果您设置了错误的保险丝值,则处理器将无法工作。有一种方法可以通过外部脉冲恢复它,但是希望您不必这样做=)
简单的测试程序:
#include(avr/io.h)
int main(void )
{
DDRB = 0xff;
DDRC = 0xff;
DDRD = 0xff;
PORTA = 0x00;//禁用所有上拉电阻
PORTB = 0x00;
PORTC = 0x00;
PORTD = 0x00;
}
现在是时候给电路板加电并将这个小的测试程序发送到Winavr或您想使用的产品。
现在,我们可以测试我们的端口是否正常工作。将一端从电线连接到一个led针头,然后逐步触摸每个端口的另一端。 led应该每次发光。如果不发光,则说明焊接有问题。记住还要测试每个led都可以工作。
步骤6:测试串行端口
如果一切正常,则该测试rs232模块了。有一个小程序可以测试我们的TX和RX是否工作。
在Linux中的用法:
创建名为Makefile的文件,并在文件中的文本下方复制。
Makefile代码假定您正在使用Atmega16并且您的编程电缆为stk200
请记住,请为您的串行端口/dev/ttyS0
CC =/usr/bin/avr-gcc
CFLAGS = -g -Os -Wall设置正确的权限-mcall-prologues -mmcu = atmega16 -std = gnu99
OBJ2HEX =/usr/bin/avr-objcopy
AVRDUDE =/usr/bin/avrdude
TARGET = test
程序:$(TARGET ).hex
$(AVRDUDE)-p m16 -P/dev/parport0 -c stk200 -u -U flash:w:test.hex
%.obj:%.o
$(CC) $(CFLAGS)$ 《-o $ @
%。hex:%.obj
$(OBJ2HEX)-R .eeprom -O ihex $ 《$ @
clean:
rm -f * .hex * .obj * .o
下载atteched文件serial.c,并将其放在Makefile所在的文件夹中。
给开发板加电,并在rs232模块和主板之间插入电缆。模块上的LED现在应该点亮。将测试线放在PA0引脚和某些LED引脚之间。
使用您的终端,并转到test.c和Makefile所在的文件夹。将ISP编程器连接到板上。现在是时候在处理器中发送代码了,它是通过终端命令执行的:制作
下载名为GTKterm(Serial Port Terminal)的软件。Fedora:yum install gtkterm
Ubuntu:sudo apt-get install gtkterm
启动GTKterm并将其格式化为使用9600Kbs的速度,8个数据位,1个停止位,无奇偶校验,无溢出。
如果一切正常,则应写“ works!”。在GTKterm屏幕上,当您按下“ z”按钮时,当您按下“ x”按钮时,板上的LED应该打开,当您按下“ c”时,其LED应该关闭。
步骤7:LCD模块测试
现在是时候测试我们的LCD模块了。我附上了用于控制LCD屏幕的出色软件。我从Scienceprog.com下载了代码,并对其进行了少许修改。使用此代码对处理器进行编程,然后将LCD模块插入板上。
LCD模块引脚连接:
1 = VSS(接地)
2 = VDD(5V)
3 = VO(接地)
4 = RS
5 = R/W
6 = E
11 = PC4
12 = PC5
13 = PC6
14 = PC7
我的LCD -module包含2个连接器(请参见图片),因为如果按原样放置模块,文本将上下颠倒。我将新的连接器镜像并粘贴到另一侧。现在,它可以双向使用。
-
ATmega16
+关注
关注
5文章
154浏览量
45748 -
开发板
+关注
关注
25文章
4881浏览量
97001 -
ATmega32
+关注
关注
2文章
33浏览量
21040
发布评论请先 登录
相关推荐
评论