89C51单片机语言和ATmega16的不同

[复制链接]
查看11 | 回复5 | 2016-7-16 06:20:39 | 显示全部楼层 |阅读模式
从程序代码上看是对应的寄存器名称不同,可以网上下一个AVR单片机的代码自动生成软件,设置对应的功能就可以了,然后比照51去移植。它们的区别主要应该是架构不同,AVR是哈佛结构,处理速度更快。...
回复

使用道具 举报

千问 | 2016-7-16 06:20:39 | 显示全部楼层
这个还是算了吧,如果要改的话得改很多地方的,你还是别想着改吧,最好去学吧,个人建议去学ARM吧~~~学atmega做跳板~~~atmega是介于ARM和51之间的~~~atmega和51都是可以用C语言或者汇编语言的,主要是一些寄存器之类的东西不一样,其实总体内容都很类似,我觉得最多的是名字不一样~~~...
回复

使用道具 举报

千问 | 2016-7-16 06:20:39 | 显示全部楼层
51你可以用sbit来对某一端口直接进行位操作,它的处理数据速度慢延时函数的取值不同。avr可以进行位操作,不同编译器的书写不一样,这个你要注意。操作寄存器时一般avr的书写与51不同,但你仔细研究其实实质是一样的,有时也可以象51那样书写如XXX=0xXX;...
回复

使用道具 举报

千问 | 2016-7-16 06:20:39 | 显示全部楼层
他们之间结构不同,AVR不能进行位操作,所以以前SBIT的什么的全得改...
回复

使用道具 举报

千问 | 2016-7-16 06:20:39 | 显示全部楼层
avr的单片机需要在之前进行寄存器设置,可以看看天狼星电子的视频中有讲到具体的操作...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行