循环点亮LED灯
//object: 循环点亮Led灯,每次点亮一个 //writer: mike //time: 2020.10.1 #include<reg52.h> //用于对位的循环 #include<intrins.h> #define uchar unsigned char #define uint unsigned int void delay(uint); void main() { uchar i; uchar temp; //注意16进制,左侧才是低位,右侧是高位 temp = 0x7f; //这里不能直接操作P0口,P0不是变量,直接就点亮小灯 P1 = temp; while(1) { for(i=0;i<8;i++) { //每次将temp循环移动一位 temp = _cror_(temp,1); //将移动好的二进制,给P0口 P1 = temp; //延时函数 delay(1000); } } } void delay(uint x) { uint m, n; for(m=x;m>0;m--) { //120是调试出来的,大概执行120次是一个毫秒。 for(n=120;n>0; n--); } }
其中 intrins.h 头文件包含了 循环左移动,以及循环右移动函数 _crol_(), _cror_()
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律