- 博客(15)
- 资源 (1)
- 收藏
- 关注
原创 VS2010-MFC-串口数据接收
UINT WINAPI CbintoarrayDlg::ListenThread(void* pParam){ /** 得到本类的指针 */ CbintoarrayDlg *pSerialPort = reinterpret_cast<CbintoarrayDlg*>(pParam); // 线程循环,轮询方式读取串口数据 while (!pSerialPort->s_bExit) { UINT BytesInQue = ...
2020-09-08 12:30:20
2352
1
原创 CC2640R2F-修改ATT-MTU
在simple_central例程中修改ble_user_config.h如果使用的是蓝牙4.2则默认的PDU为69 MTU=PDU-4#if defined(BLE_V42_FEATURES) && (BLE_V42_FEATURES & SECURE_CONNS_CFG) #define MAX_PDU_SIZE 255#else #define MAX_PDU_SIZE 27#endi...
2020-08-28 12:08:36
771
原创 KEIL 警告last line of file ends without a newline解决办法
碰到如题警告,一直解决不了,后来也是在优快云的一位博主上看到的方法,将光标放置到发生警告的.C文件最后一行代码行的行位位置,然后一直delete删除完所有空格,然后回车,这个时候光标位于行首,然后在delete一次即可
2017-10-26 16:08:39
18485
8
原创 单片机数组操作需谨慎-程序跑飞原因之一
调STM32时时不时碰到一个现象就是,程序跑到某个地方就完全黑掉了,完全无响应,或者说有时候数据乱了,本来就没操作某个变量于是莫名其妙就变了,我遇到的这种情况一般原因是数组操作界限超了,,,比如int buf[10] 结果写了到了buf[10],buf[11]-----因为C程序的RAM分配是由编译器完成的一般都是紧密相连的,所以只要超出一点点,就意味着风险,当然如果是汇编 一般都是出栈入栈不配对
2017-07-28 17:43:56
3281
原创 STM32 中断使用
STM32中断有时候用多了容易乱,特此记录一下,因为之前一直是M3 M0交叉用,固件库有些区别容易弄混,这里说一下M3外部中断的配置步骤:1.将对应的IO配置为输入2.将IO对应的中断的优先等级用NVIC配置好3.设置好对应IO的中断模式和触发方式4.将IO所属的中断线设为中断输入源1---------以PB5为例子GPIO_InitStructure.GPIO
2016-11-01 14:53:07
946
1
原创 ambiq micro 的滴答定时器使用
由于ambiq的芯片也是最近这几年才出来,市面上的资料比较少,这里就遇到的问题做一下积累。。。。。具体型号 ambiq micro apollo 512 BGA滴答定时的使用: 这个很简单,不过由于当时对芯片还有程序还不够熟悉,也卡住了一两天由于内核是cortex-m4,自己建立工程的话可以在manage run-time environment对话框的device选项里面勾选star
2016-08-15 14:33:47
1206
原创 STM32 IAP(在线更新程序)的使用关键点
所谓IAP其实就相当于一个小小的bootloader 用来更新程序的很多产品基本都是程序做好后就直接在产线烧录一次就OK了,但是,但是BUG有时候是无可避免的,经常有产品装好后又要重新拆外壳 取下板子重新上烧录架烧的惨痛经历,所以,这种情况下IAP就很有必要了,只要一个对外的接口就能在线更新了,常用的是USB口,当然要是一定要用串口的话也是可以的 硬件上麻烦一些而已,下面就是例程typ
2016-07-16 16:47:22
7434
1
转载 一种单片机的滤波算法(转)
原文地址:http://bbs.21ic.com/icview-170880-1-1.html这种算法适用于对采样结果实时性要求不高的,比如电池电压....SUM=SUM-SUM/n+S 其中:S为采样值,SUM为保存值,n是放电比例、最好选2的幂次数,单片机移位即可,不需要做除法,跟随后得到的值为SUM/n,SUM注意不溢出,预留的容量为采样数最大值的n倍,初
2016-07-16 15:18:54
568
原创 STM32管脚的复用与重映像关系
最近记忆力以指数形式下降,以前弄明白的东西结果又忘了,故而将之写下避免下次又得重新查阅资料这里讲的是关于STM32F10X的,和STM32F0XX系列的还是有一些区别的,F0的下次有空在写了....概括一下:复用就是一个引脚有几个功能,1.做普通IO输入输出2.其他外设的输入输出(比如I2C,TIM,SPI等等),这就是复用。重映射就是将引脚功能重新定义到其他引脚,例如PA9是USAR
2016-06-30 11:41:29
16834
5
原创 浅析STM32的hex文件
前段时间需要用到BIN文件 随便把HEX文件也了解了一下 参考查阅了一些网上资料,如有雷同除了巧合还有借鉴参考。。。正题:HEX文件格式如下[数据长度1Byte][数据地址2Byte][数据类型1Byte][数据nByte][校验1Byte]分析下面具体例子:020000040800F2: 这个就是,也就是冒号02 这个就是说明这行数据区的数据内容长度,也就是数据内容为两个
2016-06-29 11:34:03
7977
原创 什么是单片机AD的精度
定义:AD精度AD精度指的是AD实际转换的结果和理想的计算结果之间的误差,也叫做积分非线性误差,符号是(INL) 单位是LSBLSB=基准/2^AD位数 例如3V的基准 12位AD 那LSB=3/4096一般芯片的数据手册上都有写明,例如这个手册写的典型值就是正负4个LSB,这就是衡量AD误差的一个标准 上述有些词或者某些描述或许不当,但我能确定的就是了LSB就是衡量一个AD
2016-06-29 00:19:56
5291
原创 VC++2010读取BIN文件
最近在弄STM32更新固件的上位机,记录一下碰到的问题点 unsigned long nFileBytes;//用于存储BIN文件总字节数 unsigned char aBinByte[65536];//用于储存从BIN文件获取的数据 FILE *pFile; _wfopen_s(&pFile,strFilePath,L"rb"); //打开文件str
2016-06-28 18:44:56
4873
原创 STM32将常量数组定义到FLASH固定地址
方法:static const uint8_t s_acBmpLogo030[len] __attribute__((at(0X800F000)))={0x80,0xC0,0xC0,0xC0,0xC0,0x80,xxxxxxx}编译之后可在.map文件看到其分配到的地址 0x0800f000 0x0000005c Data RO 4013 .ARM.
2016-06-28 17:45:55
17044
原创 boxlist显示最新一行从VB6.0到VB2010的改动
VB6原本的程序 form1.lstResults.AddItem "add string" form1.boxlist1.ListIndex = form1.boxlist1.ListCount - 1VB2010 Form1.boxlist1.Items.Add("add string" ) Form1.boxlist1.SelectedIndex = Form
2016-06-22 15:10:36
372
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人