51单片机C51程序
51单片机51单片机
- C51程序
C51程序
学习C51程序之前需要对C语言有一定的了解和学习;这里只介绍与C语言有区别的地方;
具体的不同如下:
1、C51中增加了几种针对MSC-51单片机的特有数据类型
a、sfr和sfr16:用于定义特殊功能寄存器,如:sfr PSW = 0xd0(一般情况下这些特殊功能寄存器不需要用户自定义,通常包含在<reg51.h>头文件中)
b、bit和sbit: 定义位变量,只占用一个二进制位;bit是位寻址区中的变量(20H~2FH,关于位寻址区详见51单片机之存储器篇);sbit指特殊功能寄存器中的可以位寻址的变量 ,如:sbit P1_0 = P1^0 sbit OV = 0xd2
2、C51的存储模式与存储器密切相关,定义变量时要指明指定的存储器属性
如:
其实,对于单片机而言,他有片内、片外存储器,有RAM、ROM之分,RAM中还可以细分为4块(详见51单片机之存储器篇),所以我们需要在定义变量时明确的指出变量要存放在哪里?因此我们需要上图的不同的存储器类型来标识。
3、有专门的关键字和语法规则
在常规的函数定义后加入interrupt n来说明该函数为中断函数。n的取值有6种,分别代表不同的中断类型:
在使用中断函数时要注意以下几点:
51单片机C51程序相关推荐
- c语言编写51单片机中断程序,执行过程是怎样的?
Q:c语言编写51单片机中断程序,执行过程是怎样的? 例如程序: #include<reg52.h> void main(void) { EA=1; //开放总中断 ...
- 24c512 c语言程序,24C32~24C512的51单片机读写程序
24C32~24C512的51单片机读写程序 来源:-- 作者:-- 浏览:3875 时间:2016-08-10 14:18 标签: 摘要: AT89S52 晶振频率为11.0592MHz 指令周期: ...
- 台达触摸屏modbusRTU与51单片机通讯台达屏与郭天祥51单片机通讯程序
台达触摸屏modbusRTU与51单片机通讯台达屏与郭天祥51单片机通讯程序亲测过好用,P1口led显示8个位的状态上传给触摸屏,d2至d7为16数据寄存器能写能读,数码管显示当前写入的数码id=60 ...
- 51单片机计算机加减乘除,51单片机加减乘除程序.doc
51单片机加减乘除程序 #include //STC51单片机头文件 #define uchar unsigned char #define uint unsigned int uint key; u ...
- 51单片机容易串电,用USB转ttl(ch340)给51单片机下载程序,接上TX,RX,板子上的灯就亮了,怎么解决?
1 原理框架图: 2 原理图: 51单片机要冷启动下载程序,就是先点下载,然后再给单片机上电,上述的电路设计解决了在用USB转ttl为51单片机下载程序时串电的问题.
- 简述单片机c51语言程序结构,单片机C51程序结构
<单片机C51程序结构>由会员分享,可在线阅读,更多相关<单片机C51程序结构(14页珍藏版)>请在人人文库网上搜索. 1.1 C51程序流程与控制C语言是一种结构化的编程语言 ...
- keil5安装及51单片机入门程序实例
1. keil5的安装 之前我在找的时候,一直以为官网不是很方便下载,在其他地方找,这过程很玛法,今天试了一下官网发现非常方便. 进入官网,点击Downloads 点击C51,以为我们是写51的单片机 ...
- ds18b20c语言显示小数位,DS18B20多点测温(读序列,匹配序列,51单片机C程序,1602显示)...
DS18B20多点测温(读序列,匹配序列,51 C程序,1602显示) 程序一:单个读序列号.程序二,匹配并且读两个DS18B20,当然,读多个与读两个基本原理一样,只要加上其序列号等即可.本程序所有 ...
- c语言51单片机延时程序,51单片机c语言延时.doc
1,_nop_() 适用于us级的少量延时 标准的C语言中没有空语句.但在单片机的C语言编程中,经常需要用几个空指令产生短延时的效果.这在汇编语言中很容易实现,写几个nop就行了. 在keil C51 ...
最新文章
- 【Android基础】序列化 Serializable vs Parcelable
- js 通过jquery插件获取url参数 其中的一个小问题,或许不算Bug。
- php 脏数据,使用 PHP Masked Package 屏蔽敏感数据
- extern 在c/c++ 中的作用
- 自动/持续部署Docker 的tomcat web项目(二)
- 【服务端渲染】NuxtJS基础
- python报错cannot import name ‘BeautifulSoup‘ from ‘bs4‘
- 扫雷android源代码,Android实现扫雷小游戏
- DirectShow笔记
- 全民 https!使用 FreeSSL 申请免费的 https 证书
- 理解加载class到JVM的时机
- 如何快速在手机上修改证件照底色
- 计算机硬盘格式化与储存原理
- web前端学习13-19(HTML常用标签)
- 白酒分化明显,中小酒企面临生存困境
- 微信h5互动小游戏制作心得
- Java-龙与地下城怪物设计
- execjs._exceptions.ProcessExitedWithNonZeroStatus
- 利达主机联网接线端子_利达接线图介绍
- android平台下OpenGL ES 3.0使用GLSurfaceView对相机Camera预览实时处理
热门文章
- thinkcmf ajax,thinkcmfx 中如何用jquery ajax提交数据,自己尝试去做之后,还是没法提交,求助!...
- python 定义字符串变量_Python变量和字符串详解
- 外显子和基因组基本概念(一)
- 精选| 2021年2月R新包推荐(第51期)
- 高通量数据中批次效应的鉴定和处理(一)
- SIP系统怎么禁用?SIP系统完整性保护关闭方法(含M1)
- Linux开发相关书籍
- QT Core | 信号槽01 - GUI上按钮触发应用程序里某个类的函数
- STM32H743+CubeMX-串口重定向printf
- java 发送数据_用JAVA模拟POST发送数据