博客园 - bfbdxj520
uuid:24b78886-0ed1-41c2-8670-e3f31dcf42c4;id=121198
2019-10-28T12:30:32Z
bfbdxj520
https://www.cnblogs.com/linux-bfbdxj520/
feed.cnblogs.com
https://www.cnblogs.com/linux-bfbdxj520/p/11755338.html
stm8的坑 - bfbdxj520
stm8某些管脚是真正开漏状态的,必须外接上拉电阻,不然不能拉高,这点和stm32不一样。 例如stm8al3188 pc0管脚没有内部上拉。
2019-10-28T12:31:00Z
2019-10-28T12:31:00Z
bfbdxj520
https://www.cnblogs.com/linux-bfbdxj520/
【摘要】stm8某些管脚是真正开漏状态的,必须外接上拉电阻,不然不能拉高,这点和stm32不一样。 例如stm8al3188 pc0管脚没有内部上拉。 <a href="https://www.cnblogs.com/linux-bfbdxj520/p/11755338.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linux-bfbdxj520/p/11706973.html
大小端 - bfbdxj520
存储模式:小端:较高的有效字节存储在较高的存储器地址,较低的有效字节存储在较低的存储器地址。大端:较高的有效字节存储在较低的存储器地址,较低的有效字节存储在较高的存储器地址。STM32 属于小端模式,简单地说:比如:temp=0X12345678;假设temp的地址为:0X4000 0000那么,在
2019-10-20T03:07:00Z
2019-10-20T03:07:00Z
bfbdxj520
https://www.cnblogs.com/linux-bfbdxj520/
【摘要】存储模式:小端:较高的有效字节存储在较高的存储器地址,较低的有效字节存储在较低的存储器地址。大端:较高的有效字节存储在较低的存储器地址,较低的有效字节存储在较高的存储器地址。STM32 属于小端模式,简单地说:比如:temp=0X12345678;假设temp的地址为:0X4000 0000那么,在 <a href="https://www.cnblogs.com/linux-bfbdxj520/p/11706973.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linux-bfbdxj520/p/11662347.html
联合体 注意char和unsigned char - bfbdxj520
2019-10-12T08:30:00Z
2019-10-12T08:30:00Z
bfbdxj520
https://www.cnblogs.com/linux-bfbdxj520/
【摘要】 <a href="https://www.cnblogs.com/linux-bfbdxj520/p/11662347.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linux-bfbdxj520/p/11655613.html
c语言字符串与其他类型的翻译方法 - bfbdxj520
C语言提供了几个标准库函数,可以将任意类型(整型、长整型、浮点型等)的数字转换为字符串。 1.int/float to string/array: C语言提供了几个标准库函数,可以将任意类型(整型、长整型、浮点型等)的数字转换为字符串,下面列举了各函数的方法及其说明。● itoa():将整型值转换为
2019-10-11T09:31:00Z
2019-10-11T09:31:00Z
bfbdxj520
https://www.cnblogs.com/linux-bfbdxj520/
【摘要】C语言提供了几个标准库函数,可以将任意类型(整型、长整型、浮点型等)的数字转换为字符串。 1.int/float to string/array: C语言提供了几个标准库函数,可以将任意类型(整型、长整型、浮点型等)的数字转换为字符串,下面列举了各函数的方法及其说明。● itoa():将整型值转换为 <a href="https://www.cnblogs.com/linux-bfbdxj520/p/11655613.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linux-bfbdxj520/p/11609511.html
联合体在单片机中的应用 - bfbdxj520
联合体在单片机中的应用 单片机中经常会遇见分离高低字节的操作,比如进行计时中断复位操作时往往会进行 (65535-200)/256,(65535-200)%256这样的操作,而一个除法消耗四个机器周期,取余也需要进行一些列复杂的运算,如果在短时间内需要进行很多次这样的运算无疑会给程序带来巨大的负担。
2019-09-29T11:08:00Z
2019-09-29T11:08:00Z
bfbdxj520
https://www.cnblogs.com/linux-bfbdxj520/
【摘要】联合体在单片机中的应用 单片机中经常会遇见分离高低字节的操作,比如进行计时中断复位操作时往往会进行 (65535-200)/256,(65535-200)%256这样的操作,而一个除法消耗四个机器周期,取余也需要进行一些列复杂的运算,如果在短时间内需要进行很多次这样的运算无疑会给程序带来巨大的负担。 <a href="https://www.cnblogs.com/linux-bfbdxj520/p/11609511.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linux-bfbdxj520/p/11562045.html
CAN过滤 - bfbdxj520
在 STM32互联型产品中, CAN1和 CAN2分享 28 个过滤器组, 其它 STM32F103xx系列产品中有 14 个过滤器组, 用以对接收到的帧进行过滤。每组过滤器包括了 2 个可配置的 32 位寄存器:CAN_FxR0 和 CAN_FxR1 。这些过滤器相当于关卡,每当收到一条报文时,
2019-09-21T03:16:00Z
2019-09-21T03:16:00Z
bfbdxj520
https://www.cnblogs.com/linux-bfbdxj520/
【摘要】在 STM32互联型产品中, CAN1和 CAN2分享 28 个过滤器组, 其它 STM32F103xx系列产品中有 14 个过滤器组, 用以对接收到的帧进行过滤。每组过滤器包括了 2 个可配置的 32 位寄存器:CAN_FxR0 和 CAN_FxR1 。这些过滤器相当于关卡,每当收到一条报文时, <a href="https://www.cnblogs.com/linux-bfbdxj520/p/11562045.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linux-bfbdxj520/p/11559081.html
can的ack - bfbdxj520
CAN总线上单片机与服务器双向通信,服务器发一次数据等待单片机响应,响应完成继续发送,没有响应等待1秒再次发送;单片机向服务器发送数据同理。CAN总线上共三个节点:STM32+CAN收发器组成的设备1与设备2还有以太网转CAN模块。 问题描述: 设备1、设备2、以太网转CAN模块进行频繁的数据通信,
2019-09-20T11:18:00Z
2019-09-20T11:18:00Z
bfbdxj520
https://www.cnblogs.com/linux-bfbdxj520/
【摘要】CAN总线上单片机与服务器双向通信,服务器发一次数据等待单片机响应,响应完成继续发送,没有响应等待1秒再次发送;单片机向服务器发送数据同理。CAN总线上共三个节点:STM32+CAN收发器组成的设备1与设备2还有以太网转CAN模块。 问题描述: 设备1、设备2、以太网转CAN模块进行频繁的数据通信, <a href="https://www.cnblogs.com/linux-bfbdxj520/p/11559081.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linux-bfbdxj520/p/11428255.html
晶振与电容 - bfbdxj520
1. 匹配电容 负载电容是指晶振要正常震荡所需要的电容。一般外接电容,是为了使晶振两端的等效电容等于或接近负载电容。要求高的场合还要考虑ic输入端的对地电容。一般晶振两端所接电容是所要求的负载电容的两倍。这样并联起来就接近负载电容了。 2. 负载电容是指在电路中跨接晶体两端的总的外界有效电容。他是一
2019-08-29T02:34:00Z
2019-08-29T02:34:00Z
bfbdxj520
https://www.cnblogs.com/linux-bfbdxj520/
【摘要】1. 匹配电容 负载电容是指晶振要正常震荡所需要的电容。一般外接电容,是为了使晶振两端的等效电容等于或接近负载电容。要求高的场合还要考虑ic输入端的对地电容。一般晶振两端所接电容是所要求的负载电容的两倍。这样并联起来就接近负载电容了。 2. 负载电容是指在电路中跨接晶体两端的总的外界有效电容。他是一 <a href="https://www.cnblogs.com/linux-bfbdxj520/p/11428255.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linux-bfbdxj520/p/11411449.html
函数指针与类成员函数指针 - bfbdxj520
1,函数指针函数指针,顾名思义就是函数的指针,而指针其实就是地址,那么函数指针就是存储函数的地址,可是实际大部分时间里,我们写程序时是根本不会去考虑函数地址在哪里。我们只需要知道函数原型和函数声明就可以。但是想象一下,我们总是以为函数就应该接收参数,那么函数本身是否可以作为函数的参数呢?我做了下面的
2019-08-26T03:19:00Z
2019-08-26T03:19:00Z
bfbdxj520
https://www.cnblogs.com/linux-bfbdxj520/
【摘要】1,函数指针函数指针,顾名思义就是函数的指针,而指针其实就是地址,那么函数指针就是存储函数的地址,可是实际大部分时间里,我们写程序时是根本不会去考虑函数地址在哪里。我们只需要知道函数原型和函数声明就可以。但是想象一下,我们总是以为函数就应该接收参数,那么函数本身是否可以作为函数的参数呢?我做了下面的 <a href="https://www.cnblogs.com/linux-bfbdxj520/p/11411449.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linux-bfbdxj520/p/11405474.html
C语言的内联函数的作用 - bfbdxj520
view plain copy关内联函数键字inline view plain copyvoid myprintf(int a) { priintf(“%d”,a); } int main() { for(i=0;i《100;i++) myprintf(3); } 对于这个函数,在进行反复的打印3的
2019-08-24T09:54:00Z
2019-08-24T09:54:00Z
bfbdxj520
https://www.cnblogs.com/linux-bfbdxj520/
【摘要】view plain copy关内联函数键字inline view plain copyvoid myprintf(int a) { priintf(“%d”,a); } int main() { for(i=0;i《100;i++) myprintf(3); } 对于这个函数,在进行反复的打印3的 <a href="https://www.cnblogs.com/linux-bfbdxj520/p/11405474.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linux-bfbdxj520/p/11405469.html
内联函数的作用 - bfbdxj520
内联函数是一种编译机制,优点从代码上是看不出来的,但是程序的执行效率上有差别,通常,编译器对函数调用的处理是一种类似中断的方式,即当执行到函数调用语句时,程序把当前所有的状态信息比如CPU所有寄存器(其中一个很重要的就是指令指针寄存器)的值保存起来,然后放心大胆地转去执行那个函数的代码,执行完后再返
2019-08-24T09:52:00Z
2019-08-24T09:52:00Z
bfbdxj520
https://www.cnblogs.com/linux-bfbdxj520/
【摘要】内联函数是一种编译机制,优点从代码上是看不出来的,但是程序的执行效率上有差别,通常,编译器对函数调用的处理是一种类似中断的方式,即当执行到函数调用语句时,程序把当前所有的状态信息比如CPU所有寄存器(其中一个很重要的就是指令指针寄存器)的值保存起来,然后放心大胆地转去执行那个函数的代码,执行完后再返 <a href="https://www.cnblogs.com/linux-bfbdxj520/p/11405469.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linux-bfbdxj520/p/11405103.html
结构体变量用 . 结构体指针用-> 的原因 - bfbdxj520
s.member等价于(&s)->member。反之:(*p).member则是(&(*p))->member,即是p->member,解了指针又取指针,绕回来了
2019-08-24T08:31:00Z
2019-08-24T08:31:00Z
bfbdxj520
https://www.cnblogs.com/linux-bfbdxj520/
【摘要】s.member等价于(&s)->member。反之:(*p).member则是(&(*p))->member,即是p->member,解了指针又取指针,绕回来了 <a href="https://www.cnblogs.com/linux-bfbdxj520/p/11405103.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linux-bfbdxj520/p/11404636.html
&a和a的区别 - bfbdxj520
当我们定义一个数组a时,编译器根据指定的元素个数和元素的类型分配确定大小(元素类型大小*元素个数)的一块内存,并把这块内存的名字命名为a。名字a一旦与这块内存匹配就不能改变。a[0],a[1]等为a的元素,但并非元素的名字。数组的每一个元素都是没有名字的。 这里&a[0]和&a到底有什么区别呢?a[
2019-08-24T06:47:00Z
2019-08-24T06:47:00Z
bfbdxj520
https://www.cnblogs.com/linux-bfbdxj520/
【摘要】当我们定义一个数组a时,编译器根据指定的元素个数和元素的类型分配确定大小(元素类型大小*元素个数)的一块内存,并把这块内存的名字命名为a。名字a一旦与这块内存匹配就不能改变。a[0],a[1]等为a的元素,但并非元素的名字。数组的每一个元素都是没有名字的。 这里&a[0]和&a到底有什么区别呢?a[ <a href="https://www.cnblogs.com/linux-bfbdxj520/p/11404636.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linux-bfbdxj520/p/11400302.html
分布电容 - bfbdxj520
分布电容是指由非电容形态形成的一种分布参数。带电电缆、变压器对地都有一定的分布电容,而分布电容大小取决于电缆的几何尺寸、电缆的长度和绝缘材料等,它由两个存在压差而又相互绝缘的导体所构成。必须注意到的是,在电子及电器线路中并不是只有电容器才有电容,在任何两个通电导体之间都存在电容,如电力输电线之间、输
2019-08-23T07:28:00Z
2019-08-23T07:28:00Z
bfbdxj520
https://www.cnblogs.com/linux-bfbdxj520/
【摘要】分布电容是指由非电容形态形成的一种分布参数。带电电缆、变压器对地都有一定的分布电容,而分布电容大小取决于电缆的几何尺寸、电缆的长度和绝缘材料等,它由两个存在压差而又相互绝缘的导体所构成。必须注意到的是,在电子及电器线路中并不是只有电容器才有电容,在任何两个通电导体之间都存在电容,如电力输电线之间、输 <a href="https://www.cnblogs.com/linux-bfbdxj520/p/11400302.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linux-bfbdxj520/p/11400282.html
介电常数 - bfbdxj520
1.介质在外加电场时会产生感应电荷而削弱电场,介质中的电场减小与原外加电场(真空中)的比值即为相对介电常数。 相同电压下,电容越大,电容器储存的电荷越多,对原电场的削弱越多,介电常数就越大。 2.介质在外加电场时会产生感应电荷而削弱电场,介质中的电场减小与原外加电场(真空中)的比值即为相对介电常数(
2019-08-23T07:26:00Z
2019-08-23T07:26:00Z
bfbdxj520
https://www.cnblogs.com/linux-bfbdxj520/
【摘要】1.介质在外加电场时会产生感应电荷而削弱电场,介质中的电场减小与原外加电场(真空中)的比值即为相对介电常数。 相同电压下,电容越大,电容器储存的电荷越多,对原电场的削弱越多,介电常数就越大。 2.介质在外加电场时会产生感应电荷而削弱电场,介质中的电场减小与原外加电场(真空中)的比值即为相对介电常数( <a href="https://www.cnblogs.com/linux-bfbdxj520/p/11400282.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linux-bfbdxj520/p/11399942.html
天线 - bfbdxj520
物联网、智能硬件产品,要联网传输数据,都需要有天线。空间越小、频段越多,天线设计越复杂。外置天线一般都是标准品,买频段合适的,无需调试,即插即用。例如快递柜、售货机这些,普遍使用磁吸的外置天线,吸在铁皮外壳上即可。这些天线不能放在铁皮柜里面,金属会屏蔽天线信号,所以只能放在外面。好处是使用方便、价格
2019-08-23T06:44:00Z
2019-08-23T06:44:00Z
bfbdxj520
https://www.cnblogs.com/linux-bfbdxj520/
【摘要】物联网、智能硬件产品,要联网传输数据,都需要有天线。空间越小、频段越多,天线设计越复杂。外置天线一般都是标准品,买频段合适的,无需调试,即插即用。例如快递柜、售货机这些,普遍使用磁吸的外置天线,吸在铁皮外壳上即可。这些天线不能放在铁皮柜里面,金属会屏蔽天线信号,所以只能放在外面。好处是使用方便、价格 <a href="https://www.cnblogs.com/linux-bfbdxj520/p/11399942.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linux-bfbdxj520/p/11388937.html
封装的思想 - bfbdxj520
在 C 语言中,可以使用一个 C 文件(*.c 文件)和 H 文件完(*.h 文件)成“类”的定义,将所有需要封装的东西都存于 C 文件中,H 文件中只展现那些“对外可见、无需封装”的内容。
2019-08-21T07:17:00Z
2019-08-21T07:17:00Z
bfbdxj520
https://www.cnblogs.com/linux-bfbdxj520/
【摘要】在 C 语言中,可以使用一个 C 文件(*.c 文件)和 H 文件完(*.h 文件)成“类”的定义,将所有需要封装的东西都存于 C 文件中,H 文件中只展现那些“对外可见、无需封装”的内容。 <a href="https://www.cnblogs.com/linux-bfbdxj520/p/11388937.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linux-bfbdxj520/p/11385421.html
关于中断标志位 - bfbdxj520
在各种单片机触发中断后,一定要判断是否需要手动清除各种中断标志位,否则程序将卡死在中断服务函数之中。例如cc2530.
2019-08-20T12:30:00Z
2019-08-20T12:30:00Z
bfbdxj520
https://www.cnblogs.com/linux-bfbdxj520/
【摘要】在各种单片机触发中断后,一定要判断是否需要手动清除各种中断标志位,否则程序将卡死在中断服务函数之中。例如cc2530. <a href="https://www.cnblogs.com/linux-bfbdxj520/p/11385421.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linux-bfbdxj520/p/11384321.html
TI CC2530官方datesheet中对于ADC采集时的特殊寄存器ADCCFG未提到,但是在实际使用中应该记得配置。 - bfbdxj520
TI CC2530官方datesheet中对于ADC采集时的特殊寄存器ADCCFG未提到,但是在实际使用中应该记得配置。
2019-08-20T09:28:00Z
2019-08-20T09:28:00Z
bfbdxj520
https://www.cnblogs.com/linux-bfbdxj520/
【摘要】TI CC2530官方datesheet中对于ADC采集时的特殊寄存器ADCCFG未提到,但是在实际使用中应该记得配置。 <a href="https://www.cnblogs.com/linux-bfbdxj520/p/11384321.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linux-bfbdxj520/p/11383111.html
cc2530pcb布线要求 - bfbdxj520
1、在CC2530主芯片下面加焊盘和过孔的作用是增大到地的过电流、增强抗干扰 、 散热; 2、低功耗运放电路中尽量选择阻值较大的电阻,也不宜过大,会导致噪声和不稳定现象。一般选择10K数量级; 3、在电路板上空余区域加大量对地过孔是为了屏蔽和散热; 4、2.4G天线制版时板材厚度为1mm。我们希望能
2019-08-20T07:20:00Z
2019-08-20T07:20:00Z
bfbdxj520
https://www.cnblogs.com/linux-bfbdxj520/
【摘要】1、在CC2530主芯片下面加焊盘和过孔的作用是增大到地的过电流、增强抗干扰 、 散热; 2、低功耗运放电路中尽量选择阻值较大的电阻,也不宜过大,会导致噪声和不稳定现象。一般选择10K数量级; 3、在电路板上空余区域加大量对地过孔是为了屏蔽和散热; 4、2.4G天线制版时板材厚度为1mm。我们希望能 <a href="https://www.cnblogs.com/linux-bfbdxj520/p/11383111.html" target="_blank">阅读全文</a>