上一页 1 ··· 5 6 7 8 9 10 11 下一页
摘要: copy正点程序,在神舟IV串口输出,KEY2按下后中断,输出当前时间先给出正点原子地址:http://openedv.com/posts/list/12119.htmSTM32的实时时钟(RTC)是一个独立的定时器。STM32的RTC模块拥有一组连续计数的计数器,在相应软件配置下,可提供时钟日历的功能。修改计数器的值可以重新设置系统当前的时间和日期。RTC模块和时钟配置系统(RCC_BDCR寄存器)是在后备区域,即在系统复位或从待机模式唤醒后RTC的设置和时间维持不变。但是在系统复位后,会自动禁止访问后备寄存器和RTC,以防止对后备区域(BKP)的意外写操作。所以在要设置时间之前, 先要取消 阅读全文
posted @ 2013-03-19 19:29 wwjdwy 阅读(489) 评论(0) 推荐(0) 编辑
摘要: 记录一下:http://baike.baidu.com/view/1617265.htm定义#ifndef x //if not define的简写#define x ...#endif这是宏定义的一种,它可以根据是否已经定义了一个变量来进行分支选择,一般用于调试等等.实际上确切的说这应该是预处理功能中三种(宏定义,文件包含和条件编译)中的一种----条件编译。 C语言在对程序进行编译时,会先根据预处理命令进行“预处理”。C语言编译系统包括预处理,编译和链接等部分。#ifndef x //先测试x是否被宏定义过#define x程序段1 //如果x没有被宏定义过,定义x,并编译程序段1#end 阅读全文
posted @ 2013-03-19 12:09 wwjdwy 阅读(229) 评论(0) 推荐(0) 编辑
摘要: DAC相对比较简单,看寄存器手册,内容不是太多。同样方式DAC 给 ADC 串口输出。目前一直没有用LCD,木有移植呢DAC:PA4 ADC:PB1 :PA4 DAC 1CH 当前AD转换结果为:0xBB8, 百分比为:73%,电压值:2.416992 V.PB1 ADC 9CH 当前AD转换结果为:0xBB5, 百分比为:73%,电压值:2.414575 V.正点原子:http://openedv.com/posts/list/12952.htm通过以上介绍,我们了解了STM32实现DAC输出的相关设置,本章我们将使用DAC模块的通道1来输出模拟电压,其详细设置步骤如下:1)开启PA口时钟, 阅读全文
posted @ 2013-03-18 11:23 wwjdwy 阅读(376) 评论(0) 推荐(0) 编辑
摘要: STM32手册中写的很详细:单次转换/连续转换,规则通道/注入通道,扫描模式。很多设置,但是比TIM简单多了感觉。。。。双ADC模式还没有看正点原子的例程网址,给出http://openedv.com/posts/list/12176.htm通过以上介绍,我们了解了STM32的单次转换模式下的相关设置,本章我们使用ADC1的通道1来进行AD转换,其详细设置步骤如下:1)开启PA口时钟,设置PA1为模拟输入。STM32F103ZET6的ADC通道1在PA1上,所以,我们先要使能PORTA的时钟,然后设置PA1为模拟输入。2)使能ADC1时钟,并设置分频因子。要使用ADC1,第一步就是要使能ADC 阅读全文
posted @ 2013-03-17 22:38 wwjdwy 阅读(608) 评论(0) 推荐(0) 编辑
摘要: 完全照搬正点原子的实验:http://openedv.com/posts/list/11885.htm我使用的库函数下面我们介绍输入捕获的配置步骤:1)开启TIM5时钟,配置PA0为下拉输入。要使用TIM5,我们必须先开启TIM5的时钟(通过APB1ENR设置)。这里我们还要配置PA0为下拉输入,因为我们要捕获TIM5_CH1上面的高电平脉宽,而TIM5_CH1是连接在PA0上面的。2)设置TIM5的ARR和PSC。在开启了TIM5的时钟之后,我们要设置ARR和PSC两个寄存器的值来设置输入捕获的自动重装载值和计数频率。3)设置TIM5的CCMR1TIM5_CCMR1寄存器控制着输入捕获1和2 阅读全文
posted @ 2013-03-17 10:36 wwjdwy 阅读(479) 评论(0) 推荐(0) 编辑
摘要: 看了一天的通用定时器,寄存器好多,最后也只是明白个大概,真要使用每个功能的时候还需要再去细看。只是单独使用的话很好办只有几个参数需要设置。先给出正点原子链接:http://www.openedv.com/posts/list/11859.htm我是用的神舟IV板子,用TIM4 通道4 PB9来做的,... 阅读全文
posted @ 2013-03-16 21:16 wwjdwy 阅读(402) 评论(0) 推荐(0) 编辑
摘要: 输入捕获模式可以用来测量脉冲宽度或者测量频率。STM32的定时器,除了TIM6和TIM7,其他定时器都有输入捕获功能。STM32的输入捕获,简单的说就是通过检测TIMx_CHx上的边沿信号,在边沿信号发生跳变(比如上升沿/下降沿)的时候,将当前定时器的值(TIMx_CNT)存放到对应的通道的捕获/比较寄存(TIMx_CCRx)里面,完成一次捕获。同时还可以配置捕获时是否触发中断/DMA 等. 例如:我们用到TIM5_CH1来捕获高电平脉宽,也就是要先设置输入捕获为上升沿检测,记录发生上升沿的时候TIM5_CNT的值。然后配置捕获信号为下降沿捕获,当下降沿到来时,发生捕获,并记录此时的TIM5_ 阅读全文
posted @ 2013-03-16 14:14 wwjdwy 阅读(1098) 评论(0) 推荐(0) 编辑
摘要: 依旧转的正点的教材http://www.openedv.com/posts/list/0/11806.htm?privmsg=1#71344窗口看门狗(WWDG)通常被用来监测由外部干扰或不可预见的逻辑条件造成的应用程序背离正常的运行序列而产生的软件故障。除非递减计数器的值在T6位(WWDG->CR的第六位)变成0前被刷新,看门狗电路在达到预置的时间周期时,会产生一个MCU复位。在递减计数器达到窗口配置寄存器(WWDG->CFR)数值之前,如果7位的递减计数器数值(在控制寄存器中)被刷新, 那么也将产生一个MCU复位。这表明递减计数器需要在一个有限的时间窗口中被刷新。他们的关系可以 阅读全文
posted @ 2013-03-15 13:58 wwjdwy 阅读(506) 评论(0) 推荐(0) 编辑
摘要: 看了正点的教程觉得写得很好,以下复制的正点的教程http://www.openedv.com/posts/list/0/11790.htm#711981)向IWDG_KR写入0X5555。#define IWDG_WriteAccess_Enable ((uint16_t)0x5555)#define IWDG_WriteAccess_Disable ((uint16_t)0x0000)通过这步,我们取消IWDG_PR和IWDG_RLR的写保护,使后面可以操作这两个寄存器。设置IWDG_PR和IWDG_RLR的值。这两步设置看门狗的分频系数,和重装载的值Tout=((4×2^prer 阅读全文
posted @ 2013-03-15 12:37 wwjdwy 阅读(499) 评论(0) 推荐(0) 编辑
摘要: 先级运算符名称或含义使用形式结合方向说明1[]数组下标数组名[常量表达式]左到右()圆括号(表达式)/函数名(形参表).成员选择(对象)对象.成员名->成员选择(指针)对象指针->成员名2-负号运算符-表达式右到左单目运算符(类型)强制类型转换(数据类型)表达式++自增运算符++变量名/变量名++单目运算符--自减运算符--变量名/变量名--单目运算符*取值运算符*指针变量单目运算符&取地址运算符&变量名单目运算符!逻辑非运算符!表达式单目运算符~按位取反运算符~表达式单目运算符sizeof长度运算符sizeof(表达式)3/除表达式/表达式左到右双目运算符*乘表达 阅读全文
posted @ 2013-03-15 00:19 wwjdwy 阅读(189) 评论(0) 推荐(0) 编辑
上一页 1 ··· 5 6 7 8 9 10 11 下一页