感悟网 导航

stc89c516在keil中选什么机型啊 stc89c516在keilc51上没有这个型号,可以用别的...

作者&投稿:其管 (若有异议请与网页底部的电邮联系)
stc89c516在keil中选什么机型啊~

REG52.h就可以了,自己再增加几个寄存器的定义就可以了,其实就是扩展RAM和看门狗。我一直是这么用516的,我的REG52.H:
/*

*-----------------------------------------------------------------------------

*
Copyright
(c)
KEIL
ELEKTRONIK
GmbH
and
Franklin
Software,
Inc.,
1987-1992

*-----------------------------------------------------------------------------

*/
/*
8052
Processor
Declarations
*/
/*
BYTE
Registers
*/
sfr
P0
=
0x80;
sfr
P1
=
0x90;
sfr
P2
=
0xA0;
sfr
P3
=
0xB0;
sfr
P4
=
0xE8;
/*W78E516*/
sfr
CHPENR
=
0xf6;
sfr
SFRAH
=
0xc5;
sfr
SFRAL
=
0xc4;
sfr
SFRFD
=
0xc6;
sfr
SFRCN
=
0xc7;
sfr
CHPCON
=
0xbf;
sbit
P40
=
0xd8;
sbit
P41
=
0xd9;
sbit
P42
=
0xda;
sbit
P43
=
0xdb;
sfr
PSW
=
0xD0;
sfr
ACC
=
0xE0;
sfr
B
=
0xF0;
sfr
SP
=
0x81;
sfr
DPL
=
0x82;
sfr
DPH
=
0x83;
sfr
PCON
=
0x87;
sfr
TCON
=
0x88;
sfr
TMOD
=
0x89;
sfr
TL0
=
0x8A;
sfr
TL1
=
0x8B;
sfr
TH0
=
0x8C;
sfr
TH1
=
0x8D;
sfr
IE
=
0xA8;
sfr
IP
=
0xB8;
sfr
SCON
=
0x98;
sfr
SBUF
=
0x99;
/*
8052
Extensions
*/
sfr
T2CON
=
0xC8;
sfr
RCAP2L
=
0xCA;
sfr
RCAP2H
=
0xCB;
sfr
TL2
=
0xCC;
sfr
TH2
=
0xCD;
/*
BIT
Registers
*/
/*
PSW
*/
sbit
CY
=
0xD7;
sbit
AC
=
0xD6;
sbit
F0
=
0xD5;
sbit
RS1
=
0xD4;
sbit
RS0
=
0xD3;
sbit
OV
=
0xD2;
sbit
P
=
0xD0;
/*
TCON
*/
sbit
TF1
=
0x8F;
sbit
TR1
=
0x8E;
sbit
TF0
=
0x8D;
sbit
TR0
=
0x8C;
sbit
IE1
=
0x8B;
sbit
IT1
=
0x8A;
sbit
IE0
=
0x89;
sbit
IT0
=
0x88;
/*
IE
*/
sbit
EA
=
0xAF;
sbit
ES
=
0xAC;
sbit
ET1
=
0xAB;
sbit
EX1
=
0xAA;
sbit
ET0
=
0xA9;
sbit
EX0
=
0xA8;
/*
IP
*/
sbit
PS
=
0xBC;
sbit
PT1
=
0xBB;
sbit
PX1
=
0xBA;
sbit
PT0
=
0xB9;
sbit
PX0
=
0xB8;
/*
P3
*/
sbit
RD
=
0xB7;
sbit
WR
=
0xB6;
sbit
T1
=
0xB5;
sbit
T0
=
0xB4;
sbit
INT1
=
0xB3;
sbit
INT0
=
0xB2;
sbit
TXD
=
0xB1;
sbit
RXD
=
0xB0;
/*
SCON
*/
sbit
SM0
=
0x9F;
sbit
SM1
=
0x9E;
sbit
SM2
=
0x9D;
sbit
REN
=
0x9C;
sbit
TB8
=
0x9B;
sbit
RB8
=
0x9A;
sbit
TI
=
0x99;
sbit
RI
=
0x98;
/*
8052
Extensions
*/
/*
IE
*/
sbit
ET2
=
0xAD;
/*
IP
*/
sbit
PT2
=
0xBD;
/*
P1
*/
sbit
T2EX
=
0x91;
sbit
T2
=
0x90;
/*
T2CON
*/
sbit
TF2
=
0xCF;
sbit
T2IP
=
0xCE;
sbit
RCLK
=
0xCD;
sbit
T2IE
=
0xCD;
sbit
TCLK
=
0xCC;
sbit
T2RSE
=
0xCC;
sbit
BGEN
=
0xCB;
sbit
TR2
=
0xCA;
sbit
C_T2
=
0xC9;
sbit
CP_RL2=
0xC8;
sfr
AUXR
=
0x8E;
sfr
WDT_CONTR
=
0xe1;

当然可以,可以找一个功能和绝大多数芯片引脚布局很相近的单片机型号替代。
这样引脚布局相同的部分,编程代码一般都是相同的。

REG52.h就可以了,自己再增加几个寄存器的定义就可以了,其实就是扩展RAM和看门狗。我一直是这么用516的,我的REG52.H:
/*
*-----------------------------------------------------------------------------
* Copyright (c) KEIL ELEKTRONIK GmbH and Franklin Software, Inc., 1987-1992
*-----------------------------------------------------------------------------
*/
/* 8052 Processor Declarations */

/* BYTE Registers */

sfr P0 = 0x80;
sfr P1 = 0x90;
sfr P2 = 0xA0;
sfr P3 = 0xB0;
sfr P4 = 0xE8;

/*W78E516*/
sfr CHPENR = 0xf6;
sfr SFRAH = 0xc5;
sfr SFRAL = 0xc4;
sfr SFRFD = 0xc6;
sfr SFRCN = 0xc7;
sfr CHPCON = 0xbf;
sbit P40 = 0xd8;
sbit P41 = 0xd9;
sbit P42 = 0xda;
sbit P43 = 0xdb;

sfr PSW = 0xD0;
sfr ACC = 0xE0;
sfr B = 0xF0;
sfr SP = 0x81;
sfr DPL = 0x82;
sfr DPH = 0x83;
sfr PCON = 0x87;
sfr TCON = 0x88;
sfr TMOD = 0x89;
sfr TL0 = 0x8A;
sfr TL1 = 0x8B;
sfr TH0 = 0x8C;
sfr TH1 = 0x8D;
sfr IE = 0xA8;
sfr IP = 0xB8;
sfr SCON = 0x98;
sfr SBUF = 0x99;

/* 8052 Extensions */
sfr T2CON = 0xC8;
sfr RCAP2L = 0xCA;
sfr RCAP2H = 0xCB;
sfr TL2 = 0xCC;
sfr TH2 = 0xCD;

/* BIT Registers */
/* PSW */
sbit CY = 0xD7;
sbit AC = 0xD6;
sbit F0 = 0xD5;
sbit RS1 = 0xD4;
sbit RS0 = 0xD3;
sbit OV = 0xD2;
sbit P = 0xD0;

/* TCON */
sbit TF1 = 0x8F;
sbit TR1 = 0x8E;
sbit TF0 = 0x8D;
sbit TR0 = 0x8C;
sbit IE1 = 0x8B;
sbit IT1 = 0x8A;
sbit IE0 = 0x89;
sbit IT0 = 0x88;

/* IE */
sbit EA = 0xAF;
sbit ES = 0xAC;
sbit ET1 = 0xAB;
sbit EX1 = 0xAA;
sbit ET0 = 0xA9;
sbit EX0 = 0xA8;

/* IP */
sbit PS = 0xBC;
sbit PT1 = 0xBB;
sbit PX1 = 0xBA;
sbit PT0 = 0xB9;
sbit PX0 = 0xB8;

/* P3 */
sbit RD = 0xB7;
sbit WR = 0xB6;
sbit T1 = 0xB5;
sbit T0 = 0xB4;
sbit INT1 = 0xB3;
sbit INT0 = 0xB2;
sbit TXD = 0xB1;
sbit RXD = 0xB0;

/* SCON */
sbit SM0 = 0x9F;
sbit SM1 = 0x9E;
sbit SM2 = 0x9D;
sbit REN = 0x9C;
sbit TB8 = 0x9B;
sbit RB8 = 0x9A;
sbit TI = 0x99;
sbit RI = 0x98;

/* 8052 Extensions */
/* IE */
sbit ET2 = 0xAD;

/* IP */
sbit PT2 = 0xBD;

/* P1 */
sbit T2EX = 0x91;
sbit T2 = 0x90;

/* T2CON */
sbit TF2 = 0xCF;
sbit T2IP = 0xCE;

sbit RCLK = 0xCD;
sbit T2IE = 0xCD;

sbit TCLK = 0xCC;
sbit T2RSE = 0xCC;

sbit BGEN = 0xCB;
sbit TR2 = 0xCA;
sbit C_T2 = 0xC9;
sbit CP_RL2= 0xC8;

sfr AUXR = 0x8E;

sfr WDT_CONTR = 0xe1;

《我的单片机是STC89C516的在keil怎么没有啊?然后我想做一个点亮一个二 ...》
答:随便找一个其它公司的51单片机都可以,如Atmel 的89C51 89C52 intel公司的8051等

《...添加型号成功了,但keilc51编译器没有stc89c516rd?》
答:在那一个CTC-ISP烧录软件添加型号成功了。

《STC89C516RD+的C语言》
答:include <reg51.h> void Delay1ms(unsigned int count)//延时 { unsigned int i,j;for(i=0;i<count;i++)for(j=0;j<120;j++);} main(){ unsigned char LEDIndex = 0;bit LEDDirection = 1;while(1){ if(LEDDirection)P1 = ~(0x01<<LEDIndex);else P1 = ~(0x80>>LEDIndex);...

《250分请教一个单片机C语言的问题》
答:这个应该就是你定义的问题,你只要把定义改成unsigned char idata ,就没问题了。

《stc 89c516rd+内有几个定时器》
答:AT89C516RD+为C51单片机,但是一款增强型的51单片机,有三个定时器,总共七个中断口

《STc公司免费送单片机有哪些东西?》
答:STC单片机抗静电(ESD)如何?STC12C1052AD/2052AD/4052AD/5052AD,STC12C5404AD/5406AD/5408AD/5410AD,STC89C51RC,STC89C52RC,STC89C53RC,STC89C54RD+,STC89C58RD+,STC89C516RD+,STC单片机:高抗静电(ESD),6000伏静电测试 直接打在芯片管脚上,安然无恙 问题2: STC单片机抗2000V快速脉冲干扰(...

《89C52单片机的内存8K不够用了怎么办?》
答:答:可以扩展.典型的并行存储芯片一般都可.电路非常经典.程序设计上做配合,参考Keil的Band模式.另外,要不直接扩一个足够大的外部程序芯片算了.3.如果改用大内存的单片机芯片,那程序又不一样了吧?答:只要单片机还是51系列的,程序基本不会大变动,甚至不用变动.价格方面不要贵啊,我只会52的C程序的(...

《stc89c516在keil中选什么机型啊》
答:REG52.h就可以了,自己再增加几个寄存器的定义就可以了,其实就是扩展RAM和看门狗。我一直是这么用516的,我的REG52.H:/ --- Copyright (c) KEIL ELEKTRONIK GmbH and Franklin Software, Inc., 1987-1992 --- / /* 8052 Processor Declarations */ /* BYTE Registers */ sfr ...

《如何用Keil软件建立一个工程》
答:仿真器采用Mon51协议,在使用之前应必须对软件项目进行如下设置:1、单击工程菜单,再在下拉菜单中单击"目标target 1属性" 在下图中,单击"Target"输入仿真器的工作频率(11.0592MHz)。2、在调试菜单中点选"Keil Monitor-51 Driver",即选择了STC89C516RD硬件仿真器。3、单击“R外围设备”选Target ...

   

返回顶部
本页内容来自于网友发表,若有相关事宜请照下面的电邮联系
感悟网