cortex-m3
文章平均质量分 79
魔罗
嵌入式软开发、嵌入式通用基础框架研究。
展开
-
cortex-m3非对齐访问引发HardFault
进行stm32 或者lpc开发时遇到HardFault错误。一般是数组越界访问或者堆栈溢出,今天遇到了个非对齐访问,源代码如下:u32 *p;....p = (u32 *)&buf[xxx];for (...; ...; ...){*p++ = xxx;//=>进入HardFault}避免非对齐错误的方法使用关键字__pa原创 2015-08-22 10:29:15 · 2102 阅读 · 0 评论 -
stm32 位操作
/************************************文件名:GpioBitMap.h*文件功能:将位带区上的GPIO端口的某个位映射到位带别名区,实现单个位操作*作者:Roger*************************************实现方法:对于片上外设位带区的某个比特,记它所在字节的地址为 A,位序号为 n(0则该比特在别原创 2015-10-16 22:18:43 · 619 阅读 · 0 评论 -
基于MDK平台 cortex-M3 shell 的实现
每次写完代码最头疼的就是测试,大多数时间都得花在这里。要么用串口调试助手、要么用上位机。至于串口调度助手效率,大家都懂的。但又不想每次都写一个上位机、闲暇之余模仿u-boot和rtt-shell 写了一个shell,大多数代码都来自U-BOOT的、做了小小的阉割。原创 2015-10-29 14:41:47 · 1148 阅读 · 0 评论 -
一个免锁环形缓冲区的实现
#ifndef _RING_BUF_H_#define _RING_BUF_H_/*环形缓冲区管理器*/typedef struct{ unsigned char *buf; /*环形缓冲区 */ unsigned int size; /*环形缓冲区 */ unsigned int front; /*头指针 ...原创 2016-12-11 11:09:01 · 4533 阅读 · 0 评论 -
stm32F4 串口DMA+环形缓冲区的实现
下面是串口DMA+环形缓冲区的实现,数据收发是异步的,不需要死等。关于环形缓冲区参考:http://blog.csdn.net/jieffantfyan/article/details/53572103实现原理程序是在串口中断收发方式的基础上设计的,应用层通过环形缓冲区进行串口数据读取,环形缓冲区作为一级缓存,增加DMA作为二级缓存。相对中断方式这种设计可以减少串口进入中断的次数,...原创 2016-09-26 22:43:56 · 17623 阅读 · 10 评论 -
基2时选快速傅里叶变换算法(FFT)
此程序是大学以前做双色点阵音乐频谱时参考数字信号处理写的。相对于网上的一些代码,我这里对一些特殊的旋转因子做了特别处理程度稍微快了些,当然相对了基2,使用分裂基、基4肯定会更快。原创 2016-12-11 11:41:38 · 6752 阅读 · 0 评论