单片机c语言是什么类型的_单片机c语言是什么类型的程序

单片机c语言是什么类型的_单片机c语言是什么类型的程序单片机C语言知识点全攻略单片机C语言知识点全攻略为了让有需要的朋友进一步了解单片机C语言知识,下面的文章将为大家讲解单片机C语言的知识内容,欢迎学习!C51运算符和表达式运算符,双目运算符和三目运算符。单目就是指需要有一

单片机C语言知识点全攻略   单片机C语言知识点全攻略   为了让有需要的朋友进一步了解单片机C语言知识,下面的文章将为大家讲解单片机C语言的知识内容,欢迎学习!   
单片机C语言知识点全攻略   C51运算符和表达式   运算符,双目运算符和三目运算符。单目就是指需要有一个运算对象,双目就要求有两个运 算对象,三目则要三个运算对象。表达式则是由运算及运算对象所组成的具有特定含义的式 子。C 是一种表达式语言,表达式后面加“;”号就构成了一个表达式语句。   赋值运算符   对于“=”这个符号大家不会陌生的,在 C 中它的功能是给变量赋值,称之为赋值运算 符。它的作用不用多说大家也明白,就是但数据赋给变量。如,x=10;由此可见利用赋值运 算符将一个变量与一个表达式连接起来的式子为赋值表达式,在表达式后面加“;”便构成 了赋值语句。使用“=”的赋值语句格式如下:   变量 = 表达式; 示例如下   a = 0xFF; //将常数十六进制数 FF 赋于变量 a   b = c = 33; //同时赋值给变量 b,c d = e; //将变量 e 的值赋于变量 d   f = a+b; //将变量 a+b 的值赋于变量 f 由上面的例子能知道赋值语句的意义就是先计算出“=”右边的表达式的值,然后将得到 的值赋给左边的变量。而且右边的表达式能是一个赋值表达式。   在一些朋友的来信中会出现“==”与“=”这两个符号混淆的错误原码,问为何编译报 错,一般就是错在 if (a=x)之类的语句中,错将“=”用为“==”。“==”符号是用来进行相 等关系运算。   算术,增减量运算符   对于 a+b,a/b 这样的表达式大家都很熟悉,用在 C 语言中,+,/,就是算术运算符。单片机c语言 中的算术运算符有如下几个,其中只有取正值和取负值运算符是单目运算符,其它则都是双 目运算符:   + 加或取正值运算符   - 减或取负值运算符   * 乘运算符   / 除运算符   % 取余运算符 算术表达式的形式:   表达式 1 算术运算符 表达式 2 如:a+b*(10-a), (x+9)/(y-a)   除法运算符和一般的算术运算规则有所不一样,如是两浮点数相除,其结果为浮点数。   10.0/20.0 所得值为 0.5,而两个整数相除时,所得值就是整数,如 7/3,值为 2。像别的语 言一样 C 的运算符与有优先级和结合性,同样可用用括号“()”来改变优先级。这些和我们 小时候学的数学几乎是一样的,也不必过多的说明了。   ++ 增量运算符   – 减量运算符   这两个运算符是 C 语言中特有的一种运算符。在 VB,PASCAL 等都是没有的。作用就是 对运算对象作加 1 和减 1 运算。要注意的`是运算对象在符号前或后,其含义都是不一样的,虽 然同是加 1 或减 1。如:I++,++I,I–,–I。   I++(或 I–) 是先使用 I 的值,再执行 I+1(或 I-1)   ++I(或–I) 是先执行 I+1(或 I-1),再使用 I 的值。增减量运算符只允许用于变量的运算中,不能用于常数或表达式。 先来做一个实验吧。学习运算符和另外一些知识时,我们还是给我们的实验板加个串行   接口吧。借助电脑转件直观的看单片机的输出结果,如果你用的是成品实验板或仿真器,那你就能跳过这一段了。   在制作电路前我们先来看看要用的 MAX232,这里不去具体讨论它,只要知道它是 TTL和 RS232 电平相互转换的芯片和基本的引脚接线功能就行了。通常我会用两个小功率晶体管加少量的电路去替换MAX232,能省一点,效 果也不错 (如有兴趣能查看 网站中的相关资料)。下图就是 MAX232 的基本接线图。       图 6-1 MAX232   在上两课的电路的基础上按图 6-3 加上 MAX232 就能了。串行口座用 DB9 的母头,这样 就能用买来的 PC 串行口延长线进行和电脑相连接,也能直接接到电脑 com 口上。   图 6-2 DB9 接头   图 6-3 加上了 MAX232 的实验电路 做好后,就先用回前面的“Hello World!”程序,用它来和你的电脑说声 Hello!把程序   烧到芯片上,把串行口连接好。嘿嘿,这个时候要打开你的串行口调试软件,没有就赶快到网上 DOWN 一个了。你会用 Windows 的超级终端也行,不过我从不用它。我用 http://emouze.com 的 comdebug,它是个不错的软件,我喜欢它是因为它功能好而且还有“线路状态”功能,这对   我制作小玩意时很有用。串行口号,波特率调好,打开串行口,单片机上电,就能在接收区看 到不断出现的“Hello World!”。一定要先打开软件的串行口,再把单片机上电,不然可能因字符不对齐而看到乱码哦。   运算符和表达式(关系运算符)   关系运算符,同样我们也并不陌生。单片机C语言中有六种关系运算符,这些东西同样是在我们小时候学算术时就已经学习过了的:   > 大于   < 小于   >= 大于等于   <= 小于等于   == 等于   != 等于   或者你是个非 C语言 程序员,那么对前四个一定是再熟悉不过的了。而“==”在 VB 或 PASCAL 等中是用“=”,“!=”则是用“not ”。   小学时的数学课就教授过运算符是有优先级别的,计算机的语言也不过是人类语言的一种扩展,这里的运算符同样有着优先级别。前四个具有相同的优先级,后两个也具有相同的优先级,但是前四个的优先级要高于后2个的。   当两个表达式用关系运算符连接起来时,这个时候就是关系表达式。关系表达式通常是用来判别某个条件是否满足。要注意的是用关系运算符的运算结果只有 0 和 1 两种,也就是逻辑的真与假,当指定的条件满足时结果为 1,不满足时结果为 0。   表达式 1 关系运算符 表达式 2 如:I   借助我们在上一课做好的电路和学习了的相关操作。我们来做一个关系运算符相关的实例程序。为了增加学习的趣味性和生动性,不妨我们来假设在做一个会做算术的机器人,当然真正会思考对话的机器,我想我是做不出来的了,这里的程序只是用来学习关系运算符的基本应用。   #include 《AT89X51.H》   #include 《stdio.h》   void main(void)   {   int x,y;   SCON = 0x50; //串行口方式 1,允许接收 TMOD = 0x20; //定时器 1 定时方式 2   TH1 = 0xE8; //11.0592MHz 1200 波特率 TL1 = 0xE8;   TI = 1;   TR1 = 1; //启动定时器   while(1)   {   printf(“您好!我叫 Robot!我是一个会做算术的机器人! ”); //显示   printf(“请您输入两个 int,X 和 Y ”); //显示   scanf(“%d%d”,&x,&y); //输入   if (x 《 y)   printf(“X《Y ”); //当 X 小于 Y 时   else //当 X 不小于 Y 时再作判断   {   if (x == y)   printf(“X=Y ”); //当 X 等于 Y 时   else   printf(“X》Y ”); //当 X 大于 Y 时   }   }   }   要注意的是,在连接 PC 串行口调试时。发送数字时,发送完一个数字后还要发送一个回车符,以使 scanf 函数确认有数据输入。   【单片机C语言知识点全攻略】相关文章:   如何优化C语言(单片机)10-04   单片机C语言的好处11-26   如何提高单片机C语言代码效率12-04   C语言知识点集锦11-05   单片机C语言有几种内存泄露问题10-06   C语言数组知识点总结10-05   用单片机C语言精确延时(定时)的方法12-02   C语言基础知识点集锦01-28   C语言知识点及其简单应用12-01   如何写出高效优美的单片机C语言代码10-04

2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/26578.html

(0)
上一篇 2024年 9月 13日 下午1:56
下一篇 2024年 9月 13日 下午2:04

相关推荐

关注微信