摘要: static关键字至少有下列n个作用: (1)设置变量的存储域,函数体内static变量的作用范围为该函数体,不同于auto变量,该变量的内存只被分配一次,因此其值在下次调用时仍维持上次的值; (2)限制变量的作用域,在模块内的static全局变量可以被模块内所用函数访问,但不能被模块外其它函数访问 阅读全文
posted @ 2018-10-12 22:28 Stephen1120 阅读(170) 评论(0) 推荐(0)
摘要: C或C++中,对main()函数的定义只有2种,如下:int main( void ) int main( int argc, char *argv[] )main()函数的返回值必须是int。这样返回值才能传递给程序的激活者(如操作系统)。 main 函数的返回值用于说明程序的退出状态。如果返回 阅读全文
posted @ 2018-10-12 22:25 Stephen1120 阅读(176) 评论(0) 推荐(0)
摘要: 一,基础知识 1,8080并行接口 2,STM32F407的FSMC接口支持:SRAM、NAND FLASH、NOR FALSH、PSRAM等控制器,不支持SDRAM。 3,无论外部存储器的宽度为 16 位还是 8 位, FSMC_A[0] 都应连接到外部存储器地址 A[0]。 (在画PCB原理图时 阅读全文
posted @ 2018-07-05 21:07 Stephen1120 阅读(6004) 评论(0) 推荐(0)
摘要: 一,基础知识 1,相关网站: 中国触摸屏网 http://www.51touch.com/ 2,电阻技术触摸屏的最基本的原理 :当手指触摸屏幕时,两层导电层在触摸点位置就有了接触,电阻发生变化,在 X 和 Y 两个方向上产生信号,然后送触摸屏控制器。控制器侦测到这一接触并计算出(X, Y)的位置,再 阅读全文
posted @ 2018-07-05 21:07 Stephen1120 阅读(1706) 评论(0) 推荐(0)
摘要: 一,基础知识 1,SPI允许数据一位一位的传送,甚至允许暂停,因为SCK时钟线由主控设备控制,当没有时钟跳变时,从设备不采集或传送数据。 2,SPI是一个数据交换协议。外设的写操作和读操作是同步完成的。如果只进行写操作,主机只需忽略接收到的字节;反之,若主机要读取从机的一个字节,就必须发送一个空字节 阅读全文
posted @ 2018-07-05 21:06 Stephen1120 阅读(1947) 评论(0) 推荐(0)
摘要: 一,基础 1,使用这些API函数时前,需要打开对应的宏定义。 2,任务句柄就是任务控制块。 3,API函数的名字后缀***FromISR(),说明这类函数只能在中断服务函数中使用。 4,当前系统中存在的任务数量, 此值=挂起态的任务+阻塞态的任务+就绪态的任务+空闲任务+运行态的任务。 5,IDLE 阅读全文
posted @ 2018-06-13 20:02 Stephen1120 阅读(894) 评论(0) 推荐(0)
摘要: 一,列表是FreeRTOS中的一个数据结构,被用来跟踪FreeRTOS中的任务。 二,任务控制块中,有两个状态列表项和事件列表项 1,当前任务处于什么状态,就将该状态列表项添加到状态列表中。 2,当前任务在等待什么事件,就将任务添加到事件列表中。 三,列表项结构体和迷你列表项结构体 1,实际开发中, 阅读全文
posted @ 2018-06-12 20:47 Stephen1120 阅读(2368) 评论(0) 推荐(0)
摘要: 一, STM32F407的ADC的基础知识 1,ADC是12位逐次逼近型模拟数字转换器。 2,ADC的时钟不超过36MHz。 3,STM32F407的ADC的最小转换时间为0.41us。 4,STM32F407将ADC的转换分为2个通道组:规则通道组和注入通道组 因为规则组和注入组,我们不需要在切换 阅读全文
posted @ 2018-06-10 22:11 Stephen1120 阅读(9165) 评论(0) 推荐(0)
摘要: 一,Cortex-M内核的MCU都有NVIC 1,中断是由硬件产生的。 2,与中断有关的寄存器都在NVIC和SCB中。只能在特权级下访问。 3,Cortex-M3和M4的NVIC最多支持240个IRQ、1个NMI、一个SysTick定时器中断和多个系统异常。 4,在STM32F407的软件工程的启动 阅读全文
posted @ 2018-06-05 19:47 Stephen1120 阅读(1038) 评论(0) 推荐(0)
摘要: 一,在删除任务之前,需要确保被删除任务的任务句柄是有效的,即任务存在。 二,任务的挂起与恢复 1,当一个任务被删除时,该任务对应的堆栈被释放了,存储的数据都被删除了。 2,当一个任务被挂起时,该任务对于的堆栈和数据都被保护了起来;当恢复该任务时,挂起前的任务堆栈和数据又可被利用。 3,一个在运行态的 阅读全文
posted @ 2018-06-03 17:59 Stephen1120 阅读(291) 评论(0) 推荐(0)