STM32 boot IAP ucos 卡死在OSStartHang

作者:fly 发布于:2014-6-16 15:25 分类:嵌入式

本文出自www.forwhat.cn

ucos卡死在OSStartHang 根本原因是因为中断没能正常处理。

 

我这边是因为下边这句。写上了,但是没有调用引起的。

NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x2800);

马虎

评论(0) 浏览(2756)

STM32寄存器列表 独立看门狗相关寄存器

作者:fly 发布于:2014-5-13 10:12 分类:嵌入式

键寄存器(IWDG_KR)

15-0位:KEY[15:0]键值(只写寄存器,读出值为0x0000),软件必须以一定的间隔写入0xAAAA,否则,当计数器为0时,看门狗会产生复位。

       写入0x5555表示允许访问IWDG_PR和IWDG_RLR寄存器,写入0xCCCC,启动看门狗工作(若选择了硬件看门狗则不受此命令字限制)

阅读全文>>

评论(0) 浏览(2277)

STM32寄存器列表 RTC相关寄存器

作者:fly 发布于:2014-5-13 10:10 分类:嵌入式

RTC_CRH(RTC控制寄存器高位)

2位:OWIE允许溢出中断位,定义:0(屏蔽中断),1(允许中断)

1位:ALRIE允许闹钟中断位,定义:0(屏蔽中断),1(允许中断)

0位:SECIE允许秒中断位,定义:0(屏蔽中断),1(允许中断)

阅读全文>>

评论(0) 浏览(2489)

STM32寄存器列表 基本定时器相关寄存器

作者:fly 发布于:2014-5-13 10:08 分类:嵌入式

TIMx_CR1(TIM6和TIM7控制寄存器1)

7位:ARPE自动重装载预装载使能,定义:0(TIMx_ARR寄存器没有缓冲)1(TIMx_ARR寄存器具有缓冲)

3位:OPM单脉冲模式,定义:0(在发生更新事件时,计数器不停止),1(在发生下次更新事件时,计数器停止计数(清除CEN位)

2位:URS更新请求源,该位由软件设置和清除,以选择UEV事件的请求源。定义:0(如果使能了中断或DMA,以下任一事件可以产生一个更新中断或DMA请求:

阅读全文>>

评论(0) 浏览(2533)

STM32寄存器列表 通用定时器相关寄存器

作者:fly 发布于:2014-5-13 10:05 分类:嵌入式

本文出自www.forwhat.cn

 

TIMx_CR1(控制寄存器1)

9-8位:CKD[1:0]时钟分频因子,定义在定时器时钟(CK_INT)频率与数字滤波器(ETR,TIx)使用的采样频率之间的分频比例。

     定义:00(tDTS = tCK_INT),01(tDTS = 2 x tCK_INT),10(tDTS = 4 x tCK_INT)11:保留

7位:ARPE:自动重装载预装载允许位,定义:0(TIMx_ARR寄存器没有缓冲),1(TIMx_ARR寄存器被装入缓冲器)

6-5位:CMS[1:0]选择中央对齐模式,定义:00:边沿对齐模式。计数器依据方向位(DIR)向上或向下计数。

阅读全文>>

评论(0) 浏览(11450)

STM32寄存器列表 高级定时器T1和T8相关寄存器

作者:fly 发布于:2014-5-13 10:01 分类:嵌入式

本文出自www.forwhat.cn

 

TIMx_CR1(TIM1和TIM8控制寄存器1)

9-8位:CKD[1:0]时钟分频因子,定义在定时器时钟(CK_INT)频率与数字滤波器(ETR,TIx)使用的采样频率之间的分频比例。

     定义:00(tDTS = tCK_INT),01(tDTS = 2 x tCK_INT),10(tDTS = 4 x tCK_INT)11:保留

7位:ARPE:自动重装载预装载允许位,定义:0(TIMx_ARR寄存器没有缓冲),1(TIMx_ARR寄存器被装入缓冲器)

6-5位:CMS[1:0]选择中央对齐模式,定义:00:边沿对齐模式。计数器依据方向位(DIR)向上或向下计数。

     01(中央对齐模式1。计数器交替地向上和向下计数。配置为输出的通道(TIMx_CCMRx寄存器中CCxS=00)的输出比较中断标志位,只在计数器向下计数时被设置)

     10(中央对齐模式2。计数器交替地向上和向下计数。配置为输出的通道(TIMx_CCMRx寄存器中CCxS=00)的输出比较中断标志位,只在计数器向上计数时被设置)

    11(中央对齐模式3,计数器交替地向上和向下计数,配置为输出的通道(TIMx_CCMRx寄存器中CCxS=00)的输出比较中断标志位,在计数器向上和向下计数时均被设置

阅读全文>>

评论(0) 浏览(6624)

STM32寄存器列表 DAC相关寄存器

作者:fly 发布于:2014-5-13 9:57 分类:嵌入式

本文出自 www.forwhat.cn 

DAC_CR(DAC控制寄存器)

28位:DMAEN2-DAC通道2 DMA使能,该位由软件设置和清除,定义:0(关闭DAC通道2DMA模式),1(使能)

27-24位:MAMP2[3:0]DAC通道2屏蔽/幅值选择器(手动)用来在噪声生成模式下选择屏蔽位,在三角波生成模式下选择波形的幅值

     定义:0000:不屏蔽LSFR位0 / 三角波幅值等于1;0001:不屏蔽LSFR位[1:0] / 三角波幅值等于3;0010:不屏蔽LSFR位[2:0] / 三角波幅值等于7;

           0011: [3:0]/15;0100:[4:0] / 31;0101:[5:0] /63;0110:[6:0] / 127;0111:[7:0] / 255;1000:[8:0] / 三511;1001:[9:0] / 1023;

           1010:[10:0] / 2047;≥1011: [11:0] / 4095

23-22位:WAVE2[1:0]DAC通道2噪声/三角波生成使能(手动)定义:00(关闭波形发生器)10(使能噪声波形发生器)1x(使能三角波发生器)

阅读全文>>

评论(0) 浏览(1996)

STM32寄存器列表 ADC相关寄存器

作者:fly 发布于:2014-5-12 10:09 分类:嵌入式

文章出自www.forwhat.cn

ADC_SR(ADC状态寄存器)

4位:STRT规则通道开始位(硬件在开始转换时置位,软件清0)定义:0(规则通道未开始转换),1(规则通道已开始转换)

3位:JSTRT注入通道开始位(硬件在开始转换时置位,软件清0)定义:0(规则通道未开始转换),1(规则通道已开始转换)

2位:JEOC注入通道转换结束位(硬件在所有注入通道转换结束时设置,由软件清0)定义:0(转换未完成),1(转换完成)

1位:转换结束位(该位由硬件在(规则或注入)通道组转换结束时设置,由软件清除或由读取ADC_DR时清除,定义:0(转换未完成),1(转换完成)

0位:AWD模拟看门狗标志,该位在硬件转换的电压值超出了ADC_LTR和ADC_HTR寄存器定义的范围时置位,由软件清0,定义:0(没事件),1(有事件)

阅读全文>>

评论(0) 浏览(6988)

STM32寄存器列表 DMA相关寄存器

作者:fly 发布于:2014-5-12 10:05 分类:嵌入式

文章出自www.forwhat.cn

 

DMA_ISR(DMA中断状态寄存器

27,23,19,15,11,7,3位:TEIFx通道x的传输错误标志(x=1…7)(硬件控制)在DMA_IFCR寄存器的相应位写1可清除这些标志位,定义:0(无错),1(有错)

26,22,18,14,10,6,2位:HTIFx通道x的办传输标志(x=1…7)(硬件控制)在DMA_IFCR寄存器的相应位写1可清除这写位,定义:0(无半传输事件),1(有)

25,21,17,13,9,5,1位:TCIFx通道x的传输完成标志(x=1…7)(硬件控制)在DMA_IFCR寄存器的相应位写入1可清除这些位,定义:(传输没完成),1(传输完成)

24,20,16,12,8,4,0位:GIFx通道x的全局中断标志(x=1…7)(硬件控制)在DMA_IFCR寄存器的相应位写入1可清除这些位,定义:0(没有TE/HT/TC事件),1(有)

阅读全文>>

评论(1) 浏览(3420)

#define Fbw(f) f ## _fbw() C语言中的 ##是什么意思

作者:fly 发布于:2014-5-10 11:08 分类:嵌入式

以上代码片段取自PPZ飞控源代码

最后的含义Fbw即如果定义使用FBW,则执行函数init_fbw();如果没有定义使用,则此处没有执行任何东西。

阅读全文>>

评论(0) 浏览(2258)

 
Powered by emlog sitemap