修改单片机C语言程序:0~59秒计数器;1个独立按键控制,第一次按按键,实现暂停,第二次按按键,实现复位

修改单片机C语言程序:0~59秒计数器;1个独立按键控制,第一次按按键,实现暂停,第二次按按键,实现复位,第1张

#include<reg52h>

#include<intrinsh>

#define uint unsigned int

#define uchar unsigned char

sbit KEY = P3^0;

uchar aa,num,flag;

uchar code table[]={

0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,

0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};

void delay(uint ms)

{

uchar t;

while(ms--)  for(t = 0; t < 123; t++);

}

void main()

{

num = 0;

aa = 0;

TMOD = 0x01;

TH0 = (65536 - 50000) / 256;

TL0 = (65536 - 50000) % 256;

TR0 = 1;

ET0 = 1;

EA = 1;

P0 = table[0];

P2 = table[0];

while(1)  {

if(!KEY) {

delay(10);

if(!KEY) {

while (!KEY);

flag++;

if(flag == 1)  TR0 = 0;

if(flag == 2)  {

P0 = table[0];

P2 = table[0];

flag = 0;

    aa = 0;

num = 0;

TR0 = 1;

} } } }

}

void timer0() interrupt 1

{

TH0 = (65536 - 50000) / 256;

TL0 = (65536 - 50000) % 256;

aa++;

if(aa == 20)  {

aa = 0;

num++;

if(num == 60)  num = 0;

P0 = table[num / 10];

P2 = table[num % 10];

}

}

仿真实验截图如下:

ac5的程序到ac6上运行复位的 *** 作方法如下。

1、在AC6中打开AC5项目,通过“Project”菜单下的“ConverttoAC6”选项将AC5项目转换为AC6项目。

2、在AC6中打开新的AC6项目,通过“Project”菜单下的“Import”选项将转换后的AC6项目导入。

3、在AC6中逐一检查和修改程序中与AC5不兼容的部分,例如程序语法、外设驱动程序等。

4、对修改后的程序进行编译和下载。

5、在微控制器上运行程序前,需要进行硬件上的适配和验证,包括电源电压、IO口定义、外设接口等方面的配置,确保程序能够正确地运行。

6、对于需要进行复位的情况,可以在程序的相应部分添加复位代码。

硬件复位是由外部硬件造成的单片机复位。如低电压复位、上电复位、断电复位等。

软件复位,是由编程程序需要时候,通过软件来控制的单片机复位。

一个是外部原因及故障原因,造成的强制保护复位。

一个是由编程者有目的的控制复位。

通常就是一种方法,在复位管脚(RST)加高电平信号。复位后程序计数器回零。

1、一般数据手册上对寄存器的描述都会有给出默认值或直接描述上电或复位后的值,默认值就是复位后的寄存器的值。

2、是从STC89C51RC单片机的Data Sheet中截图的,Value after Power-on or Reset就是单片机上电或复位后的状态,x表示不确定,可能是1,可能是0。

扩展资料:

AT89C51 提供以下标准功能:4k 字节Flash 闪速存储器,256字节片内数据存储器(00H -7FH为片内RAM,80H-FFH为特殊功能寄存器SFR),32 个I/O 口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。

同时,AT89C51可降至0Hz的静态逻辑 *** 作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。

参考资料来源:百度百科-AT89C51

传统型号51单片机复位之后;

PC程序计数器值为0000,也就是程序存储器ROM的起始地址。

最新研制的扩展型单片机除了具有硬件复位功能以外,还增加了软件复位功能。硬件复位时PC为0000,软件复位时,PC指向ISP区,此时PC值不再是0000,而是该型号单片机定义的ISP起始地址,一般这个地址在ROM的顶端空间。

DSP系统的硬件复位有三种方式是:上电复位,手动复位,软件复位。

硬件复位是复位启动以后需要重新加载加载FPGA、DSP等,也有可能在这个 *** 作之前初始化化CPU,加载系统文件等 *** 作,具体视需要而定,然后初始化一些配置芯片;软复位则不需要进行FPGA、DSP等的加载,只是一些配置芯片的初始化。

用最少的字来解释:复位的概念:让赛跑运动员各自回到自己的起跑线。硬复位:用拖车把运动员给拖到起跑线。软复位:运动员自己走到起跑线。硬件复位是靠复位电路,而这种类型的复位从理论上讲只是起到了软件程序重启的作用,之前所有保存的数据是依然存在的,当软件重启后有可能会清掉或者不清这些数据。

1Blackfin系列DSP的特点P5-6

微信号结构、动态电源管理、高度并行的计算单元、高性能的数据地址产生器、极佳的代码密度、视频指令、分层结构的内存、集成的更多的外围设备、部分芯片配有专门的视频接口、调试/JTAG接口、性能发展进程。

2DSP芯片特点P3-4

普遍采用哈佛结构及改进的哈佛结构、流水线技术、针对滤波相关矩阵运算配有独立的乘法器和加法器、有多条总线、具有硬件接口逻辑和软件等待功能、带有多个DMA通道控制器、配有中断处理器定时控制器及实时时钟、低功耗、多机并行运行特性、丰富的外设接口。

改进哈弗结构的特点P3

将程序和数据存储在不同的存储空间中,程序存储器和数据存储器是两个相互独立的存储器,每个存储器独立编制独立访问。对应的是系统中设置了程序总线和数据总线,使数据的吞吐率提高了一倍。

动态电源管理允许电压和频率独立调整,使每一个单项任务所消耗的能量最少,使ADI的DSP性能提高4倍以上,功耗降低1/3。使用外部电源管理控制器能够 *** 纵DSP内核的内部电压,从而更进一步减少功耗。

22内核数据算术单元的基本处理过程(对数据寄存器的使用过程):数据首先经过总线从内存读入数据寄存器,然后作为计算单元(ALU、MAC)的输入,计算结果存入数据寄存器,作后写入内存。ALU支持的特殊除法原语。

以上就是关于修改单片机C语言程序:0~59秒计数器;1个独立按键控制,第一次按按键,实现暂停,第二次按按键,实现复位全部的内容,包括:修改单片机C语言程序:0~59秒计数器;1个独立按键控制,第一次按按键,实现暂停,第二次按按键,实现复位、ac5的程序到ac6上运行复位、单片机硬件复位和软件复位的区别等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10167316.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存