51单片机c语言程序控制,51单片机C语言编程基础及实例.pdf
基础知识: 51 单片机编程基础
第一节:单数码管按键显示
第二节:双数码管可调秒表
第三节:十字路口交通灯
第四节:数码管驱动
第五节:键盘驱动
第六节:低频频率计
第七节:电子表
第八节:串行口应用
基础知识: 51 单片机编程基础
单片机的外部结构 :
1. DIP40 双列直插;
2. P0 ,P1 ,P2 ,P3 四个 8 位准双向 I/O 引脚;(作为 I/O 输入时,要先输出高电平)
3. 电源 VCC (PIN40 )和地线 GND (PIN20 );
4. 高电平复位 RESET (PIN9 );( 10uF 电容接 VCC 与 RESET ,即可实现上电复位)
5. 内置振荡电路,外部只要接晶体至 X1 (PIN18 )和 X0 (PIN19 );(频率为主频的 12 倍)
6. 程序配置 EA (PIN31 )接高电平 VCC ;(运行单片机内部 ROM 中的程序)
7. P3 支持第二功能: RXD 、TXD 、INT0 、INT1 、T0 、T1
单片机内部 I/O 部件 :(所为学习单片机,实际上就是编程控制以下 I/O 部件,完成指定任务 )
1. 四个 8 位通用 I/O 端口,对应引脚 P0 、P1 、P2 和 P3 ;
2. 两个 16 位定时计数器;( TMOD ,TCON ,TL0 ,TH0 ,TL1 ,TH1 )
3. 一个串行通信接口;( SCON ,SBUF )
4. 一个中断控制器;( IE ,IP )
针对 AT89C52 单片机,头文件 AT89x52.h 给出了 SFR 特殊功能寄存器所有端口的定义。
C 语言编程基础 :
1. 十六进制表示字节 0x5a :二进制为 ;0x6E 为。
2. 如果将一个 16 位二进数赋给一个 8 位的字节变量,则自动截断为低 8 位,而丢掉高 8 位。
3. ++var 表示对变量 var 先增一; var — 表示对变量后减一。
4. x |= 0x0f; 表示为 x = x | 0x0f;
5. TMOD = ( TMOD & 0xf0 ) | 0x05; 表示给变量 TMOD 的低四位赋值 0x5 ,而不改变 TMOD 的高
四位。
6. While( 1 ); 表示无限执行该语句,即死循环。语句后的分号表示空循环体,也就是 {;}
在某引脚输出高电平的编程方法 :(比如 P1.3 (PIN4 )引脚)
代码
1. #include // 该头文档中有单片机内部资源的符号化定义,其中包含 P1.3
2. void main( void ) //void 表示没有输入参数, 也没有函数返值, 这入单片机运行的复
位入口
3. {
4. P1_3 = 1; // 给 P1_3 赋值 1 ,引脚 P1.3 就能输出高电平 VCC
5. While( 1 ); // 死循环,相当 LOOP: goto LOOP;
6. }
注意: P0 的每个引脚要输出高电平时,必须外接上拉电阻(如 4K7 )至 VCC 电源。
在某引脚输出低电平的编程方法 :(比如 P2.7 引脚)
代码
1. #include // 该头文档中有单片机内部资源的符号化定义,其中包含 P2.7
2. void main( void ) //void 表示没有输入参数, 也没有函数返值, 这入单片机运行的复
位入口
51单片机c语言程序控制,51单片机C语言编程基础及实例.pdf相关推荐
- c语言中文渲染库,GLSL渲染编程基础与实例 (C#版本) 中文pdf扫描版[136MB]
本书介绍了用GLSL语言进行三维渲染的方法,以及用大量的实例来展示如何进行GLSL编程.本书详细讲述了GLSL渲染流程: GLSL着色器编程:顶点光照:像素光照:卡通渲染.影线渲染.分形渲染.Gooc ...
- python语言好不好_《python编程基础》这本书怎么样
<python编程基础>这本书怎么样 发布时间:2020-11-11 12:01:06 来源:亿速云 阅读:73 作者:小新 小编给大家分享一下<python编程基础>这本书怎 ...
- 51单片机c语言程序控制,51单片机C语言程序设计源代码
<51单片机C语言程序设计源代码>由会员分享,可在线阅读,更多相关<51单片机C语言程序设计源代码(281页珍藏版)>请在人人文库网上搜索. 1.51 SCM c语言教程示例2 ...
- openjudge用c语言答案,OpenJudge - NOI - 1.4编程基础之逻辑表达式与条件分支(C语言 全部题解)...
01:判断数正负 #include int main(void) { int num; scanf("%d", &num); if (num > 0) { print ...
- 零基础想学编程,应该学习哪一门语言呢?看看各种语言的简介!
在学习编程之前,我们还是要搞清楚一件事情,那就是你为什么要学习编程? 是想要获得高额的薪水呢?还是自己对编程感兴趣呢?或者两者都是. 目前在国内只要你是个程序员,那么你基本上都能够拿到一份不错的薪资. ...
- mel编程相较于c语言怎么样,关于mel脚本语言的编写与使用?
慕哥6287543 ge(Maya内置语言)的缩写,是一种强大的命令和脚本语言,让你直接控制Maya的特征.进程和工作流程.mel能做什么,不能做什么?能做的mel有一个很重要的功能是编写界面,May ...
- c语言51单片机计算器,新基于51单片机的简易计算器
<新基于51单片机的简易计算器>由会员分享,可在线阅读,更多相关<新基于51单片机的简易计算器(24页珍藏版)>请在人人文库网上搜索. 1.基于51单片机的简易计算器1.前言: ...
- 万年历设计单片机c语言,基于51单片机的电子万年历的设计
基于51单片机的电子万年历的设计(论文9400字) 功能要求 1. 万年历能用数码管显示阳历年.月.日.星期.[小]时.分.秒并设置指定时间的闹铃. 2. 数字式温度计要求测温范围-50~100°C, ...
- 单片机如何使用?51单片机C语言编程实例有哪些?
大家好,我是无际单片机编程的徐明,今天和大家一起探讨一下"单片机如何使用?" 单片机如何使用,我们要知道单片机在哪里使用? 单片机是很多电子产品的核心器件,它具有一定的逻辑判断和事 ...
最新文章
- SkipList 跳表
- SwipeRefreshLayout 报错 dispatchTouchEvent
- php中将数据加入到文件中
- Plus from Picture
- HDU - 3126 Nova(最大流+二分+简单几何)
- redis分片_5000+字硬核干货!Redis 分布式集群部署实战
- P5825-排列计数【EGF,NTT】
- 各层电子数排布规则_干货 | 高中化学电子排布、第一电离能和电负性知识汇总...
- Win8Metro(C#)数字图像处理--2.18图像平移变换
- 读redis->双重检测同步锁->防止Redis缓存击穿
- Raki的读paper小记:RoBERTa: A Robustly Optimized BERT Pretraining Approach
- 采用UltraISO软碟通制作Dos启动盘教程
- 入魂一番赏android,入魂一番赏APP
- 协昌电子递交注册:年营收5.25亿 实控人顾挺曾任民警
- 网络安全培训小白入门课,从buu到红帽的图片隐写
- JAVA 基本数据结构--数组、链表、ArrayList、Linkedlist、hashmap、hashtab
- vba 批量生成条形图代码
- 华硕天选 3 和 联想拯救者 Y9000P 2022 款 哪个好
- Spring Boot项目出现问题: Whitelabel Error Page
- k图着色 局部搜索算法与模拟退火算法的python实现
热门文章
- 走在WCF学习的路上---印在脑子里的点点滴滴(两种元数据交换方式的优缺点)...
- 解决iphone横屏时字体变大问题或者内容大小不一样等...
- ASP.NET Core搭建多层网站架构【11-WebApi统一处理返回值、异常】
- 【报告分享】2020年中国金融科技企业领袖观点洞察报告.pdf(附下载链接)
- 1024程序员节:心疼被段子手黑得最惨的你们
- 200+页综述!阐述大规模预训练模型机遇与风险
- linux有许多sed进程,Linux进程与性能监控
- Facebook广告5大成功案例!
- Leetcode每日一题:226.invert-binary-tree(翻转二叉树)
- G-TAD: Sub-Graph Localization for Temporal Action Detection