自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 资源 (1)
  • 收藏
  • 关注

原创 关于STM32 使用ARM GCC编译链接C++生成固件的压缩、减少和优化大小的几个编译链接参数

随之进来的物联网的兴起,要像安卓那样建立生态,需要跟多的开发者投入其中,那么就要降低门槛。物联网系统中arm 自家的mbed 系统就采用了c++,用对象的形式封装了外设驱动,比如GPIO口封装成AnalogIn,AnalogOut,BusIn,BusInOut,BusOut,DigitalInOut,DigitalIn,DigitalOut等类。使开发者可以不用非常熟悉cortex-m 内

2016-09-28 21:33:08 4768 3

原创 stm32 使用malloc申请内存和free释放内存造成的内存碎片测试

本例中使用stm32c8t6  mdk3.5 和 gcc-arm-none-eabi-4_9。使用EmBitz IDE  ARM GCC Compiler。单片机是不建议使用 内存管理函数,但是在物联网应用当中,内存资源很是宝贵,MQTT 协议需要SSL TLS,数据签名 MD5,RSA等等 使用很是耗费内存资源,使用内存管理函数就显得很有必要了。经过测试不断的malloc和free

2016-09-26 23:36:45 16178 1

原创 stm32 使用arm gcc 实现malloc 和 free

对于 stm32c8t6 来说 rom 是64k ram 是 20k。使用静态库的libnosys.a 实现的_sbrk 函数 是可以使用malloc 和free的。但是有个问题就是没有边界检查。ram 的范围是0x20000000-0x20005000,申请的内存会超过 0x20005000。这样就好引发HardFault_Handler 异常。可以这样重定向_sbrk 函数。堆增长的时

2016-09-26 23:16:37 3483

原创 ARM GCC 链接错误 引用未定义函数 _read _write _sbrk 解决和重定向

使用 printf ,scanf ,malloc 等函数需要实现`_read'`_lseek'`_isatty'`_fstat'`_write'`_sbrk' 函数。stm32 使用stdlib 时候编译提示错误:d:/gcc-arm-none-eabi-4_9/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/lib

2016-09-24 21:35:50 20028 6

原创 stm32 基于ARM GCC Compliler(EmBitz IDE) print重定向到串口打印输出 com serial

print重定向到串口打印输出 com serial,使用的方法是重新实现函数  int _write (int fd, char *pBuffer, int size) 覆盖原来的_write 函数。在使用 arm gcc 编译链接的过程可能会出现错误undefined reference to  `_sbrk'   `_close'  `_fstat'  `_read' `_write'

2016-09-24 17:10:46 9492 4

原创 Embitz 使用ARM GCC Compiler(generic) 兼容性问题<signal handler called>

ARM GCC Compiler(generic)  编译程序运行 validate_structure 异常 ,跳到 WWDG_IRQHandler。查看map文件发现 .text.validate_structure 0x08004a70 0x2a4 D:\gcc-arm-none-eabi-4_9\bin\..\arm-none-eabi\li

2016-09-23 15:51:59 3905 2

原创 在 mbed平台使用 airkiss_cloudapi sdk 过程中碰到问题解决方法

在 mbed平台使用 airkiss_cloudapi 过程中碰到不少问题。问题的根源在于mbed大部分驱动是用c++实现的。c++(在mian.cpp中) 调用 c静态库 libwxcloud.a 中的函数(airkiss_cloud_loop()),反过来 c静态库 libwxcloud.a 引用c 函数(airkiss_porting.cpp中的ak_socket airkiss_tcp

2016-09-21 22:57:51 1943 1

DS9773_f030_DataSheet.pdf

Value-line Arm®-based 32-bit MCU with up to 256 KB Flash, timers, ADC, communication interfaces, 2.4-3.6 V operation

2020-02-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除