数据加载中....
您的位置:电子电路网 >>电路图 >>基础电路 >>模拟电路
定制自己的 Atmega64/128 arduino 开发环境 评论(0) 收藏(0
所属分类:基础电路 模拟电路
浏览:1339次
顶 [0人]
0%
踩 [0人]
0%
登陆即可参与评分,获得积分奖励! [评分一次获1分,每天最多得5分]
  • 详细说明

arduino 其实是针对不同的单片机,建立了arduino源代码高度兼容可移植的环境,并用C/C++为我们写好了底层驱动,确实方便了我们快速写出所需的代码。

如果我们直接用arduino发行板支持的芯片和板子来写程序,当然几乎不需要我们自己定制开发环境,系统已经帮我们做好了,但如果我们针对的不是系统支持的芯片和板子,则需要自己来写出所有底层驱动程序,好在对于arv系列,移植较为简单,如果芯片相同只是板子不同,则稍加修改就可以满足自己的需要了。

我有好几个Atmega64/128 的最小系统,直接用 arduino zion写程序当然没有问题。

1m64/128 引脚图:

定制自己的 Atmega64/128 arduino  开发环境

2、例如 我们要点亮 PG0 上的led,可以写下这样一条语句:

    digitalWrite(48,0);

    其中 48 即是在arduino zion中对 PG0的编号,并已经印在arduino zion开发板上,在该板上用显然还算方便。

    0  是因为我的led是经限流电阻接电源Vcc,输出低电平,就点亮了该LED,

3、但在我的最小系统上并没有标准板子那样奇怪引脚编号,用起来很不方便,要想通用于其他板子,最方便的方法就是,全部用1 引脚图中的编号对应其GPIO 端口脚号,而且该脚有什么其他功能一目了然,我想大多数坛友都会看着这张图来复用引脚的其他功能的。

4、要达到这个目的,其实很简单,只要我们修改其引脚定义文件:pins_arduino.h就可以了。把我的定义放在附件里

使用这个定义文件,PG0的编号就是芯片脚号33,因此点亮PG0上的LED变成:

    digitalWrite(33,0);

对于非arduino的板子,可读性是不是强多了?

我们都已习惯了在winavr keil中开发,使用这样统一的脚编号规则,我也很快习惯Arduino中开发,我自己为这样的编号规则,给了一个不是很确切的命名:

“自然表示法”

小秘密:得到一个额外的 好处,就是导出的执行文件在proteus中模拟调试运行,引脚编号就是arduino编号,一目了然。


引脚图.jpg [ 130.1 KB ] [ 文章插图 ] [ 下载次数:4 ]
引脚图.jpg [ 130.1 KB ] [ 框图 ] [ 下载次数:2 ]
代码.zip [ 2.7 KB ] [ 软件代码 ] [ 下载次数:6 ]

如无法正常下载,请点击这里报告问题,我们将在下一工作日内为您解决。

  • 发表评论
关闭
请您在通行证中登陆后再下载!
关闭

您当前的用户还没有激活


无法下载相关附件。


请查看您的注册邮箱获取激活信息或


单击此处


重新发送激活信息!


关闭

下载该附件需要积分

您的积分为 ,不足以支付!


您可以通过以下途径获取积分


1.上传文档可得5积分奖励


2.登陆可得2积分奖励,最多可得2分每天


3.评价文档可得1积分奖励,顶、踩,最多可得5分每天


查看更多积分获取的详细规则>>