
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
code是一个特定的扩展关键字。它的意思是:将这些数据存储在程序存储器(ROM / Flash)中,而不是数据存储器(RAM)中。为什么要用code?节省宝贵的RAM:51单片机的RAM空间非常小,而ROM空间相对较大。你代码里的seg_wei(数码管位选)和seg_duan(数码管段选)都是查表用的固定数据,在程序运行过程中绝对不会被修改。
回头看看,从找出被撑爆的内存,再到最后完美搞定 DAC 的“幻灯片”平滑输出,这 100 分全是我一步步啃下硬骨头、坚持不懈调试换来的!

1把数码管全部熄灭2设置变量a有关显示模式的变量b1s的定时标志位c计时变量3显示数据4倒计时的实现,写在中断服务函数里面Timer_1s=0;

判断一个函数要不要加EA=0/1时序保护,唯一的标准是:这个函数是在哪里被调用的?Led_Disp是在定时器中断里面调用的。单片机有一个硬件机制:当程序进入中断服务函数时,硬件会自动屏蔽掉同级中断。也就是说,当代码正在执行中断里的Led_Disp操作P0和P2时,绝对不可能有另一个定时器中断跑出来打断它。它本身就是“最高优先级”的,所以天生自带保护光环!谁才需要加EA=0/1保护?是在主循环whi
摘要:本文分析了单片机编程中的三个关键问题:(1)整点检测逻辑导致5秒定时器失效,使LED实际亮6秒;(2)继电器控制时序问题,中断服务程序修改P0值导致继电器误动作;(3)参数修改应即时生效的设计原则。文中给出了完整代码实现,包括温度/时间显示、按键处理、LED控制等功能模块,重点解决了定时器中断与主循环的时序冲突问题,并提供了继电器控制的正确实现方法。代码采用STC15F2K60S2单片机,包
该代码是一个基于STC15F2K60S2单片机的嵌入式系统程序,主要功能包括: 温度采集与显示:通过DS18B20传感器获取温度值,并在数码管上显示 按键控制:实现模式切换、温度阈值调节等功能 输出控制:根据温度值通过PCF8591进行DA转换输出 LED状态指示:显示当前工作模式 系统包含多个模块: 主程序(main.c)协调各模块工作 数码管显示(seg.c)处理温度值和状态显示 温度传感器(







