2015年10月29日

SPI Flash的操作

摘要: 智能硬件设备的MCU下面,常常会挂一个SPI Flash,用于存放字库等文件。容量不会太大,16MB左右。今天记录一下通过SPI接口对其进行操作。 这个图是SPI的接口结构图。主机写数据寄存器,通过 MOSI 信号线 传送给从机,从机也将自己的移位寄存器中的内容通过 MISO 信号线返回给主机。这... 阅读全文

posted @ 2015-10-29 12:59 nasduc 阅读(12667) 评论(1) 推荐(0) 编辑

2015年10月8日

输入捕获实验

摘要: 这个实验的效果是:按住按钮,然后放开,串口会打印按住的时间.捕获原理如图。计数器有捕获功能。没有捕获的时候,定时器也可以在工作。设置为上升沿捕获,有上升沿的时候,会触发中断进入中断函数。先把定时器清零。然后在捕获期间,定时器会溢出,要计算溢出的次数。同时在中断函数中,已经修改为下降沿捕获了。在下降沿... 阅读全文

posted @ 2015-10-08 21:41 nasduc 阅读(2221) 评论(0) 推荐(0) 编辑

2015年8月19日

uc os相关的C语言知识点1-函数指针

摘要: 开始读uc os的代码了,发现很多C语言的东西,之前没搞懂的,慢慢积累。就象某一数据变量的内存地址可以存储在相应的指针变量中一样,函数的首地址也以存储在某个函数指针变量里的。这样,我就可以通过这个函数指针变量来调用所指向的函数了。 形式1:返回类型(*函数名)(参数表) ,例子如下:#include... 阅读全文

posted @ 2015-08-19 12:07 nasduc 阅读(235) 评论(0) 推荐(0) 编辑

2015年8月11日

Lesson18-ADC相关

摘要: ADC初始化要做的一些事情,主要是通过调用ADC_CommonInit和ADC_Init,对ADC进行初始化。特别要注意的是,GPIO要配置成模拟输入,不是AF。ADC的时钟不要操作36MHZ。具体的代码注解,见D:\02 Learn\02 UC_OS\mypro\Lesson 18void Ad... 阅读全文

posted @ 2015-08-11 10:58 nasduc 阅读(811) 评论(0) 推荐(0) 编辑

2015年8月9日

C语言相关笔记1

摘要: 学习了几个端口相关的工程后,把过程中的C语言相关的点记录下来。后续可以继续增加。1/ typedeftypedef int size// size和int有一样的意义,这样size就可以去做类型申明了,比如size a,和int a,是一样的。2/enum 枚举枚举的意思是这个变量的变化值是有限的,... 阅读全文

posted @ 2015-08-09 15:16 nasduc 阅读(231) 评论(0) 推荐(0) 编辑

2015年8月4日

独立看门狗和窗口看门狗

摘要: 独立看门狗没几个寄存器。1、IWDG_KR,写入0xcccc,启动看门狗。计数器开始从复位值 0xFFF 递减计数。当计数器计数到终值 (0x000) 时会产生一个复位信号( IWDG 复位)2、任何时候将关键字 0xAAAA 写到 IWWDG_KR 寄存器中, IWDG_RLR 的值就会被重载到计... 阅读全文

posted @ 2015-08-04 22:37 nasduc 阅读(1326) 评论(0) 推荐(0) 编辑

外部中断

摘要: 中断寄存器的配置在两个地方。第一个是在SYSCFG,完成外部GPIO端口和外部中断源的映射。stm32f4xx_syscfg.c第二个是在第10章,配置中断的沿,使能等信息。stm32f4xx_exti.c一般的外部中断用法如下:void EXTIX_Init(void){ NVIC_Init... 阅读全文

posted @ 2015-08-04 09:07 nasduc 阅读(1148) 评论(0) 推荐(0) 编辑

2015年7月31日

UART 串口相关库函数

摘要: 串口的各种函数,其实都是围绕对CR1到CR3这几个寄存器进行配置,串口有很多功能,都没用到,这里先列一些平时会用到的函数。以下是串口初始化的一个参考函数:void uart_init(u32 bound){ GPIO_InitTypeDef GPIO_InitStructure; //对... 阅读全文

posted @ 2015-07-31 10:06 nasduc 阅读(1170) 评论(0) 推荐(0) 编辑

2015年7月30日

中断库函数misc

摘要: 1/中断的优先级分为抢占优先级和响应优先级,这个设置是针对所有中断的设置,共分为5种,在AIRCR寄存器的[10:8]中设置。关于抢占和响应的区别等,网上有很多,就不罗列了。RM手册中会有中断向量表,每个AF接口都有一个中断,比如I2C2,UART5等。一共有16个外部中断EXTI。每个端口的第X个... 阅读全文

posted @ 2015-07-30 09:40 nasduc 阅读(1025) 评论(0) 推荐(0) 编辑

2015年7月29日

GPIO的库函数

摘要: 1 void GPIO_DeInit(GPIO_TypeDef* GPIOx)这个函数调用了rcc.c里面的RCC_AHB1PeriphResetCmd,对外设端口进行复位,最终操作的是RCC_AHB1RSTR和RCC_AHB2RSTR,这样操作后,使端口寄存器恢复默认值void GPIO_DeIn... 阅读全文

posted @ 2015-07-29 10:35 nasduc 阅读(6187) 评论(0) 推荐(0) 编辑

导航