摘要: 实验内容:PC向单片机发送波特率和占空比相关信息,单片机接收到数据后,显示接收到的频率和占空比并改变波形。 问题:PC向单片机发送数据,第一次接收正常,后面就无法正常接收了。 这是串口中断处理函数部分代码: 问题出在NOTICE那里: 1、因为crc是static变量,所以只初始化一次,在数据接收完 阅读全文
posted @ 2016-08-25 16:39 长悟 阅读(1103) 评论(0) 推荐(0) 编辑
摘要: 1、先看#ifdef的用法: 如果定义过 KEY1_PA0,就执行第一段代码,否则就执行第二段代码!! 2、#ifndef的用法: 在文件bsp_usart1.h中: 如果没有define过__USART1_H,就执行下面的语句;如果定义过,就不执行; 所以在一个.c文件里面,多次调用到该文件的时候 阅读全文
posted @ 2016-09-07 11:23 长悟 阅读(8427) 评论(0) 推荐(1) 编辑
摘要: 51内核的单片机中,定时器中的加1计数器输入的计数脉冲有两个来源: 1、一个是由系统的时钟振荡器输出脉冲经12分频后送来; 2、一个是T0或T1引脚输入的外部脉冲源,每来一个脉冲计数器加1,当加到全1时,再输入一个脉冲就使计数器回零; 上图假设一个脉冲的周期为T,2分频之后周期就变成了2T; N分频 阅读全文
posted @ 2016-08-22 15:01 长悟 阅读(1249) 评论(0) 推荐(0) 编辑
摘要: 循环执行次数问题: 1、 执行结果如下: 分析:i-- 是先判断i的值后执行--操作,所以打印了2次 2、 执行结果如下: 分析:--i是先执行--操作再判断i的值,所以只打印了1次 阅读全文
posted @ 2016-08-21 10:29 长悟 阅读(152) 评论(0) 推荐(0) 编辑
摘要: oracle 阅读全文
posted @ 2015-01-30 13:26 长悟 阅读(1242) 评论(0) 推荐(0) 编辑
摘要: oracle 阅读全文
posted @ 2015-01-30 10:40 长悟 阅读(862) 评论(0) 推荐(0) 编辑
摘要: 定义了变量之后,我们要把值存到它们所表示的存储空间里,可以用赋值(Assignment)语句实现: char firstletter; int hour, minute; firstletter = 'a'; /* give firstletter the value 'a' */ ... 阅读全文
posted @ 2015-01-22 12:06 长悟 阅读(393) 评论(0) 推荐(0) 编辑
摘要: 变量(Variable)是编程语言最重要的概念之一,变量是计算机存储器中的一块命名的空间,可以在里面存储一个值(Value),存储的值是可以随时变的,比如这次存个字符 'a' 下次存个字符 'b' ,正因为变量的值可以随时变所以才叫变量。 C语言中的声明(Declaration)有变量声明、函... 阅读全文
posted @ 2015-01-22 11:15 长悟 阅读(671) 评论(0) 推荐(0) 编辑
摘要: printf("character: %c\ninteger: %d\nfloating point: %f\n", '}', 34, 3.14); printf 中的第一个字符串称为格式化字符串(Format String),它规定了后面几个常量以何种格式插入到这个字符串中,在格式化字符串中%号... 阅读全文
posted @ 2015-01-22 10:49 长悟 阅读(224) 评论(0) 推荐(0) 编辑
摘要: 如果在字符串字面值中要表示单引号和问号,既可以使用转义序列 \' 和 \? ,也可以直接用字符'和?,而要表示\或"则必须使用转义序列,因为\字符表示转义而不表示它的字面含义,"表示字符串的界定符而不表示它的字面含义。 可见转义序列有两个作用:一是把普通字符转义成特殊字符,例如把字母n转义成换... 阅读全文
posted @ 2014-12-15 16:06 长悟 阅读(658) 评论(0) 推荐(0) 编辑