标题:
单片机reg52.h可以直接改为reg51.h吗?
[打印本页]
作者:
巧颜,
时间:
2021-12-7 22:48
标题:
单片机reg52.h可以直接改为reg51.h吗?
#include <reg52.h> // 定义头文件
#define SEG7 P0 // 定义7段数码管接至P0
char code TAB[10]={ 0xc0, 0xf9, 0xa4, 0xb0, 0x99, // 数字0-4
0x92, 0x83, 0xf8, 0x80, 0x98}; // 数字5-9
void delay1ms(int); // 声明延迟函数
main() // 主程序开始
{
P2=0xf7; // P2.3为0,让最右边数码管显示
IE=0x85; // 打开外部中断INT0和INT1
IP=0x04; // 设置INT1优先级高于INT0
SEG7=0xbf; // 数码管初始时显示“-
while(1); // 无穷等待,主程序无任何动作
} // 主程序结束
// INT 0的中断子程序 - 数码管从0加到9
void add_int0(void) interrupt 0//INT0中断子程序开始
{ char i;
unsigned saveSEG7=SEG7; // 储存中断前数码管状态
for(i=0;i<10;i++) // 显示0-9,共10次循环
{
SEG7=TAB[i]; // 显示数字,使用实验板需改为"SEG7=~TAB[i];"
delay1ms(500); // 延迟500ms
} // for循环结束;
SEG7=saveSEG7; // 写回中断前数码管状态
} // 结束INT0 中断子程序
// INT 1的中断子程序 - 数码管从9减到0
void subb_int1(void) interrupt 2//INT0中断子程序开始
{ char i;
unsigned saveSEG7=SEG7; // 储存中断前数码管状态
for(i=9;i>=0;i--) // 显示0-9,共10次循环
{
SEG7=TAB[i]; // 显示数字,使用实验板需改为"SEG7=~TAB[i];"
delay1ms(500); // 延迟500ms
} // for循环结束;
SEG7=saveSEG7; // 写回中断前数码管状态
} // 结束INT0 中断子程序
// 延迟函数,延迟约x ms
void delay1ms(int x) // 延迟函数开始
{ int i,j; // 声明整数变数i,j
for (i=0;i<x;i++) // 计数x次,延迟x ms
for (j=0;j<120;j++);// 计数120次,延迟1ms
} // 延迟函数结束
复制代码
作者:
Hephaestus
时间:
2021-12-7 23:01
你可以踹(try)一踹,看看有什么后果。
作者:
188610329
时间:
2021-12-8 00:02
理论上,别说改REG51.H 就算改成别奇奇怪怪的,甚至就算删掉也没有什么不可以。
关键是,你改的目的是什么? 你想达到的效果是什么?
然后,改一个数字,点一下编译, 最多最多最多,就是再下载一下看看实际效果的事情,值得写那么多字来问么?
作者:
908260591
时间:
2021-12-8 08:08
二楼说的有道理!你的目的是什么???
作者:
908260591
时间:
2021-12-8 08:09
楼上说的有道理!楼主你的目的是什么??
作者:
munuc_w
时间:
2021-12-8 08:23
不用改,直接用就可以了。REG52.H包括了改REG51.H的全部。
作者:
sxy4609
时间:
2021-12-8 08:45
reg52.h可以直接替换,不用改
作者:
郑汉松
时间:
2021-12-8 09:02
程序如果有用到定时器2就不可以改,否则就行
作者:
wspytu
时间:
2021-12-8 09:05
可以改,只是reg52中有部分特殊寄存器在reg51.h中没有定义
作者:
devcang
时间:
2021-12-8 09:09
不要任何头文件都可以,自己写各寄存器就好了
作者:
DrreamLovely
时间:
2021-12-8 11:28
没啥用 因为52是51的升级版本
作者:
13205495918
时间:
2021-12-8 16:40
看你用啥了,你要是用的东西只有reg52.h里面有,那就不能换。
作者:
18520649817
时间:
2021-12-11 21:03
188610329 发表于 2021-12-8 00:02
理论上,别说改REG51.H 就算改成别奇奇怪怪的,甚至就算删掉也没有什么不可以。
关键是,你改的目的是 ...
不可以删掉吧,这是头文件来的。
作者:
十三境阿良
时间:
2021-12-11 21:06
可以改的吧,你想干嘛呢
作者:
13205495918
时间:
2021-12-12 08:59
这俩头文件里面的东西是被包含的52包含51。
作者:
uestchina
时间:
2021-12-12 09:31
如果是个小系统,不用Time2等一些89C52的资源,是可以改成REG51.H的
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1