当前位置: 首页 > news >正文

#循循渐进学51单片机#c语言基础和流水灯实现#not.3

1、熟练掌握二进制、十进制和十六进制的转换方法。

多少进制就是多少之间相加,比如十六进制就是十六一次一加;二进制转化十六进制,分成四个一组。


2、C语言变量类型与取值范围,for、while等基本语句的用法。

for、while等基本语句的用法教程链接:

 https://blog.csdn.net/2301_77479336/article/details/130087491?spm=1001.2014.3001.5501


3、了解函数的基本结构,能够独立进入程序debug,并且多动手操作,熟练Keil软件的基本操作方法。

1)

2)run 全速运行,reset显示运行点。


4,独立成流水灯右移操作。

#include <REGX52.H>
sbit add0 = P1^0;
sbit add1 = P1^1;
sbit add2 = P1^2;
sbit add3 = P1^3;
sbit ENLED = P1^4;
unsigned int cnt = 1,i = 0;
void main()
{ENLED = 0;add3 = 1;add0 = 0;add1 = 1;add2 = 1;while(1) 
{P0 = ~(0x80 >> cnt);for(i = 0;i < 20000;i++);cnt++;if(cnt >= 8)cnt = 1;}
}


5、独立完成一个左移到头接着右移,右移到头接着左移的花样流水灯程序。

#include <REGX52.H>
sbit add0 = P1^0;
sbit add1 = P1^1;
sbit add2 = P1^2;
sbit add3 = P1^3;
sbit ENLED = P1^4;
unsigned int cnt = 1,i ,a = 0,arr = 1;
void main()
{ENLED = 0;add3 = 1;add0 = 0;add1 = 1;add2 = 1;while(1) 
{P0 = ~(0x80 >> cnt);for(i = 0;i < 20000;i++);cnt++;if(cnt >= 8){for(arr = 1;arr <= 8;arr++){P0 = ~(0x01 << arr);for(a = 0;a < 20000;a++);}if(arr >= 8){arr = 0;cnt = 0;}}	}
}

http://www.lryc.cn/news/169103.html

相关文章:

  • 算法刷题 week3
  • TCP详解之流量控制
  • mac根目录下创建文件不能问题
  • stable diffusion model训练遇到的问题【No module named ‘triton‘】
  • 线性dp,优化记录,273. 分级
  • JWT 安全及案例实战
  • Vue2+Vue3
  • 华为云云耀云服务器L实例评测|redis漏洞回顾 MySQL数据安全解决 搭建主从集群MySQL 相关设置
  • 【C++】详解std::thread
  • Apache HTTPD 漏洞复现
  • 【C++从入门到精通】第2篇:C++基础知识(中)
  • 【RuoYi移动端】uni-app中实现生成二维码功能(代码示例)
  • 深度解剖数据在栈中的应用
  • Android10 SystemUI系列 需求定制(一)状态栏控制中心默认tile定制属性适配
  • 【微信小程序】文章设置
  • 程序员在线周刊(冒泡算法篇)
  • string
  • html的日期选择插件
  • OPPO哲库事件 “ 始末 ” ! 集体打哑谜?
  • 数据聚类分析
  • 前 40 个 Microsoft Excel 面试问题答案
  • ros2学习笔记:shell环境变量脚本setup.bash[-z][-n][-f]参数作用
  • xss渗透(跨站脚本攻击)
  • 9参数化重采样时频变换,基于MATLAB平台,程序已调通,可直接替换数据进行分析。
  • RK3568平台开发系列讲解(调试篇)系统运行相关频率设置
  • 嵌入式:驱动开发 Day2
  • RK3399平台开发系列讲解(入门篇)VIM的基础命令
  • Rocky Linux 安装图解(替代centos)服务器+桌面
  • webpack 基础配置
  • C语言和mfc按格式读取文件数据