怎么样把C51的程序转到AVR呢?

做一个电子密码锁的设计,用到C51和1602显示。本来做好的但是老师说要改用AVR做。有什么办法可以方便的修改吗?好像修改起来很麻烦。

只有找到c51与avr的区别就可以,主要有:
1.头文件
2.端口设置
3.寄存器
4.延时设置
温馨提示:内容为网友见解,仅供参考
第1个回答  2008-10-08
使用Code Vision AVR C,控制LCD显示的函数是现成的。
第2个回答  2008-10-10
#include <iom16v.h>#include "lcd1602.h"void main(void) { unsigned char i; unsigned char *p; PORTA = 0xFF; /*打开上拉*/ DDRA = 0x00; /*方向输入*/ PORTB = 0xFF; /*电平设置*/ DDRB = 0xFF; /*方向输出*/ PORTC = 0x7F; DDRC = 0x80; PORTD = 0xFF; DDRD = 0x00; delay_ms(100); LCD_init(); while (1) { i = 1; p = "www.avrvi.com"; LCD_clear(); LCD_write_str(5,0,"Welcome"); delay_ms(250); while (*p) { LCD_write_char(i,1,*p); i ++; p ++; delay_ms(250); } delay_ms(250); }}

参考资料:http://www.avrvi.com

怎么样把C51的程序转到AVR呢?
1.头文件 2.端口设置 3.寄存器 4.延时设置

51单片机的程序移植到avr单片机应该怎样移植 注意什么问题 ?
如果是C语言的,有限关键字会有改变,头文件要重新写,函数的一些写法会有所改变,AVR的编译器很多,每种编译器都有自己的独特写法,要先了解编译器后在做移植,成功率会更高。 另外,先要选择好编译器,C编译器如GCC,ICC,CVAVR,IAR等,看自己选哪种编译器,汇编编译器如AVR Studio。头文件不...

51单片机的程序移植到avr单片机应该怎样移植 注意什么问题
1,因为51的io口为准双向io,所以对io口的操作不用设置io的方向,而AVR是双向io,每次对io操作,如输出输入都要对io的方向进行设置。2,关键字不同,code是keil c51的非标准写法,如果AVR要使用常量,可以用const关键字取代。还有data关键字取消,也就是说什么data, idata,xdata,pdata都不可以使用。

C51中的SDA=CY; 在AVR中一般怎么处理?
b <<=1;如果最高位是1,这溢出,CY=1;理解这意思就明白了

avr单片机编程和8051单片机编程有什么区别?会c51可以直接编avr的程序吗...
单片机之间 都差不多,AVR 只是比51系列多出了一些硬件 比如EEPROM 之类的,相应的也就多出了一些控制字 寄存器 和指令 你51要是用C 编的话,哪编写AVR 基本没问题,要是汇编的话,需要 一段时间来适应了

C51单片机和AVR单片机的有什么区别
一、51单片机的I\/O端口大部分是准双向口,在复位期间全部输出高电平,对端口的输入和输出操作也试直接通过I\/O端口的地址进行的。AVR的I\/O端口为标准双向口,在复位期间所有端口处于没有上拉电阻的输入状态(高阻态,管脚电平完全由外部电路决定),这在强调复位状态的场合是很有用的。AVR的每个端口对应...

sbit是C51中的,那么AVR中与sbit有相同功能的指令是什么呢?
AVR这样的高速单片机没有布尔处理器。PORTA是AVR的一个口 相当于51的P0 P1这样的口,他要置一清零的话是这样的 POTRA|=0X01; (PORTA=PORTA|0X01;)第一个脚置一, 两个是相等的, PORTA&=0XFE; 第一个脚清零,

如何将C语言编辑的源程序置入单片机
你如果有编译器的话,例如:keil。把你的C程序有它打开后,编译,编译后会产生hex文件,然后在用下载软件,例如:志峰软件。不过你还得有单片机的下载器,用它连接单片机和电脑。这样就可以把你的C文件你的程序下载到单片机里,让它执行相应的动作啦。

C51与AVR有什么区别?
(就是下载的时候需要配置熔丝位,这对于新手来说比较担心,因为要是熔丝位配置不当将导致avr单片机锁死,导致无法再进行下载程序,需要使用高压编程器才能修改回熔丝位)avr单片机介绍,速度快 、片上资源丰富、驱动能力强 、 功耗低、可选择型号种类多、性价比高、保密性好。atmega16资源介绍,8路10位的...

C51 与AVR 有哪些区别,又有哪些共通性
2、开发环境不一样,AVR不支持KEIL的,有专用的开发软件,现在只记得有一个叫Winavr的了。3、avr有一个叫熔丝的东西,但51是没有的。熔丝主要用来控制单片机最核心的东西,如时钟什么的。用起来一定要小心。4、AVR可以不接晶振,有内部时钟,而51通常是没有的。只能想到这些了,总得来说AVR比51强,...

相似回答
大家正在搜