单片机89C52有什么功能
/*
========================================================================
系统环境 xp
开发环境 Keil
语言 C51
时间 二○一○年六月六日十三时四十分
========================================================================
程序已经过测试
========================================================================
*/
#include
sbit KEY1 = P3^3;
sbit KEY2 = P3^4;
sbit LED1 = P1^0;
sbit LED2 = P1^1;
//此处声明LED是灌电流(低电平)点亮
#define DISLED1() LED1=0;LED2=1
#define DISLED2() LED1=1;LED2=0
#define DISBOTH() LED1=0;LED2=0
#define DISOFF() LED1=1;LED2=1
unsigned char Key_Flag;
unsigned int Time_Count;
void Delay10ms( unsigned char T );
void Key_Scan( void );
void LED_Dis( void );
void main( void )
{
while(1)
{
Key_Scan();
LED_Dis();
}
}
/*
**
** 延时10毫秒的程序
**
*/
void Delay10ms( unsigned char T )
{
unsigned char i,j;
for( ;T;T-- )
for( i=0;i<65;i++ )
for( j=0;j<50;j++);
}
/*
**
** 扫描按键子程序,如果按下的是KEY1,则Key_Flag自增
**
*/
void Key_Scan( void )
{
if( KEY1==0 )
{
//延时消抖
Delay10ms(1);
if( KEY1==0 )
{
Key_Flag++;
//等待松键
while( KEY1==0 );
}
}
if( KEY2==0 )
{
Delay10ms(1);
if( KEY2==0 )
{
//置一个标志位,如果Key_Flag的最高位置位,则说明KEY2按下过
Key_Flag|=(1<<7);
//等待松键
while( KEY2==0 );
}
}
}
/*
**
**响应按键程序
**
*/
void LED_Dis( void )
{
//如果KEY2按下过
if( Key_Flag&(1<<7) )
{
switch( Key_Flag )
{
case (1<<7)|2:{DISLED1();Delay10ms(200);DISOFF();break;}
case (1<<7)|5:{DISBOTH();Delay10ms(200);DISOFF();break;}
default :break;
}
//清除所有标志位
Key_Flag = 0;
}
}
//有问题请留言
读出程序就太简单了,可以利用烧写软件给读出来啊,这种软件网上太多了,下一个就可以了.
加密也需要加密软件的,此单片机本身无加密功能,可利用1楼所说的加密法.
玩的愉快!
52比51增加了一倍的RAM和程序空间,还增加了一个定时/计数器和中断
89s51片内有128B RAM,4KB程序存储器,2个定时器
89s52片内有256B RAM,8KB程序存储器,3个定时器
以下摘自KEIL里面的介绍:
AT89S51
8051 based Full Static CMOS controller with Three-Level Program
Memory Lock, 32 I/O lines, 2 Timers/Counters, 6 Interrupts Sources,
Watchdog Timer, 2 DPTRs 4K Flash, 128 Bytes On-chip RAM
AT89S52
8051 based Full Static CMOS controller with Three-Level Program
Memory Lock, 32 I/O lines, 3 Timers/Counters, 8 Interrupts Sources,
Watchdog Timer, 2 DPTRs, 8K Flash Memory, 256 Bytes On-chip RAM
现在51跟52价格差不多,如果考虑兼容性好一点的可以选择52
89S52的EPROM有8K,内存有256B,其他都差不多,现在建议选S52,单是内存就多了128B,好用很多
52只是51的升级版, 好处是ROM大了一倍,而且定时器比51多了一个 也就是除了T0,T1外还多出个T2来
stc89c52与89c52的区别有哪些?
STC89C52RC比普通89C52多了后缀“RC”,虽然它们都是单片机芯片,但是带有“RC”字样的单片机自带RC时钟振荡电路(有的频率可调有的频率不可调),可以在不接外部晶振就能使用,没有带“RC”这个字样的芯片一般必须安装外部晶振电路。STC89C52RC是宏晶公司的增强型MCS-51单片机,与Atmel公司的AT89C52相比...
STV89C52 跟 AT89C52 有什么区别没
STC89C52跟AT89C52基本上一样,只是STC89C52最高时钟更高、有更多的内部RAM,有看门狗,可以选择一个机器周期等于6个时钟周期的模式,有片内EEPROM,有第五个端口P4口,还有一些改进,如果不用增加的功能,程序是完全一样的
89C52与8051有什么区别吗?
1)程序存储器(ROM):8051的容量是4KB,8052的容量是8KB;2)数据存储器(RAM):8051的容量是128b,8052的容量是256b;3)可编程定时\/计数器:8051有2个,8052有3个;4)中断源:8051有5个,8052有6个。所有兼容Intel8031指令系统的单片机统称为51单片机。8051单片机是51系列基本型之一,其余还有875...
STC89C52RC与普通89C52有什么区别
某宝上,STC89C52RC单片机后面带40I,表示最大工作频率40MHz,工业级。STC89C52单片机后面带35I,表示最大工作频率35MHz,工业级。当然,对于额外带RC或RD后缀的产品,标识它内部RAM大小不一样。但是就STC89C52RC和STC89C52而言,它们除了最大工作频率不一样之外,内部RAM也都是512 Bytes,也没有其他任何...
89C52单片机与AVR单片机的区别
ARM7,9是32位MCU,AVR\\51是8位MCU,32位机可以运算非常复杂的指令,进行大量的数据计算,比如视频数据,能力较8位机强很多。运算速度也高好多倍.AVR与51相比采用精简指令集(51是复杂指令集),可以在每个时钟周期内执行一条命令,而51至少需要12个时钟周期,AVR的运算能力比51强很多。另外, 像ATmega8...
在单片机学习板上,一块89C52RC芯片,最多能烧写多少次?
资料上说1000次以上,估计800次是没有问题的,我曾经就烧录后次数多后烧不进去了的,但如果你把烧录速度改为最低,烧录次数会多些!特别是在高速烧不了的时候你改为低速烧录还可以成功的
用单片机STM89C52能否驱动TFT LCD
你好 1、请问你所指的STM89C52是什么芯片,是不是打错了。要么是STC89C52要么是STM32或者STM8的片子,哪里有这样型号的片子。2、对于STM32或者STM8都是完全可以GUI了,还怕什么TFT 驱动吗,推荐使用Cortex-M3内核的32位机,非常有学习一下的必要。3、请问是谁告诉你单片机不能控制TFT,看你如何使用...
请问89C52单晶片流水灯,如何通过RS485连接电脑,让电脑可显示?_百度...
89C52 如何与电脑 RS485 连接?电脑 是 没有 RS485 接口的,除非是 工业控制机 普通电脑 有RS232 的话,可以用 232-485,如 E485A 或者 E485C 没有RS232 的话,可以用 USB-485,如 E820A 或者 E820B 再就是 程序 问题,通常说的 上位机程序,可以用 VB + 串口,当然还有 89C52 ...
89C52单片机的内存8K不够用了怎么办?
答:可以扩展.典型的并行存储芯片一般都可.电路非常经典.程序设计上做配合,参考Keil的Band模式.另外,要不直接扩一个足够大的外部程序芯片算了.3.如果改用大内存的单片机芯片,那程序又不一样了吧?答:只要单片机还是51系列的,程序基本不会大变动,甚至不用变动.价格方面不要贵啊,我只会52的C程序的...
在89C52单片机里面怎么用程序把I\/O设定为高阻态状态??
在89C52单片机里面怎么用程序把I/O设定为高阻态状态??吸电流、拉电流输出、灌电流输出拉即泄,主动输出电流,从输出口输出电流;灌即充,被动输入电流,从输出端口流入;吸则是主动吸入电流,从输入端口流入。吸
庄雪牛痘: 这是一款最基本的单片机.只有普通I/O口,定时器,没什么特别的了.
石柱土家族自治县18975301947: 89C52与89S52单片机在用法和功能上有哪些区别? - ?
庄雪牛痘: 89C52与89S52单片机区别在于: 1、89C56不支持在系统编程,89S52支持. 2、89C52具有一个数据指针DPTR,而89S52具有两个数据指针DPTR0和DPTR1. 3、89S52含有一个看门狗定时器,具有断电标志POF;而89C852无.单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用.
石柱土家族自治县18975301947: stc单片机89C52与我们平常说的51单片机编程时应主意什么 啊? - ?
庄雪牛痘: STC的89C52兼容普通的AT89C51单片机,并且还有一些扩展功能,比如串口编程、P4端口等等.C语言里面没有什么需要注意的,C语言在不同的单片机之间都能比较容易的移至,何况是同一类的单片机,几乎不用做任何修改.汇编语言我也是刚刚接触,感觉STC单片机的扩展功能在汇编编程的时候,地址容易弄错
石柱土家族自治县18975301947: AT89C52单片机内部有多少BFlash ROM - ?
庄雪牛痘: 主频 12/24/33MHz.89C52是INTEL公司MCS-51系列单片机中基本的产品,它采用ATMEL公司可靠的CMOS工艺技术制造的高性能8位单片机,属于标准的MCS-51的HCMOS产品.它结合了CMOS的高速和高密度技术及CMOS的低功耗特征,...
石柱土家族自治县18975301947: 急求89C52单片机的原理及引脚功能 - ?
庄雪牛痘: VCC:供电电压. GND:接地. P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流.当P1口的管脚第一次写1时, 被定义为高阻输入.P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位. 在FIASH编程时,...
石柱土家族自治县18975301947: 89C52的功能特性 - ?
庄雪牛痘: · 标准MCS-51内核和指令系统 · 片内8kROM(可扩充64kB外部存储器) · 32个双向I/O口 · 256x8bit内部RAM(可扩充64kB外部存储器) · 3个16位可编程定时/计数器 · 时钟频率3.5-12/24/33MHz · 向上或向下定时计数器 · 改进型快速编程脉冲算法 · 6个中断源 · 5.0V工作电压 · 全双工串行通信口 · 布尔处理器 —帧错误侦测 · 4层优先级中断结构 —自动地址识别 · 兼容TTL和CMOS逻辑电平 · 空闲和掉电节省模式 · PDIP(40)和PLCC(44)封装形式
石柱土家族自治县18975301947: stc89c52单片机的片内集成哪些功能部件 - ?
庄雪牛痘: 1. 增强型8051单片机,6 时钟/机器周期和12 时钟/机器周期可以任意 选择,指令代码完全兼容传统8051.[2] 2. 工作电压:5.5V~3.3V(5V单片机)/3.8V~2.0V(3V 单片机) 3.工作频率范围:0~40MHz,相当于普通8051 的0~80MHz,实际工知作 频率...
石柱土家族自治县18975301947: 单片机 MPC98E58AE和89C52有什么区别 - ?
庄雪牛痘: 不一样,首先存储容量不同,51的内存较小,rom为4K,RAM为128字节.52为8K、256字节; 第二:程序存储器的类型不同; 第三:内部集成的功能也有差异,52的更多些.
石柱土家族自治县18975301947: 89C52单片机有几个定时/计数器,分别有几种工作模式,每种工作模式各有何特点? - ?
庄雪牛痘: 3个定时器和计数器,大致分为2种模式,一种比较匹配中断,一种溢出中断.
石柱土家族自治县18975301947: 单片机89C52有什么功能?
庄雪牛痘: 89s51片内有128B RAM,4KB程序存储器,2个定时器 89s52片内有256B RAM,8KB程序存储器,3个定时器 以下摘自KEIL里面的介绍: AT89S51 8051 based Full Static CMOS controller with Three-Level Program Memory Lock, 32 I/O lines, 2 ...