2014年10月14日

FPGA设计中对输入信号的处理

摘要: 总而言之,五条原则:1.全局时钟的跳变沿最可靠2.来自异步时钟域的输入需要寄存一次以同步化,再寄存一次以减少亚稳态带来的影响3.不需要用到跳变沿的来自同一时钟域的输入,没有必要对信号进行寄存4.需要用到跳变沿的来自同一时钟域的输入,寄存一次即可5.需要用到跳变沿的来自不同时钟域的输入,需要用到3个触... 阅读全文

posted @ 2014-10-14 10:58 Life's coding 阅读(267) 评论(0) 推荐(0) 编辑

STM32的USART使用DMA接收带校验位的数据

摘要: 工作中用到了一个数据包里面的数据采用不同的校验方式,一部分为奇校验,一部分为偶校验.这时我的方案为: 1.USART设置9bit数据长度,1个停止位,无校验位,这时确保能接收到带校验位的数据 2.设置DMA接收和发送数据,设置外设地址和内存地址都为halfword(16bit)可以接收到带校验位的数... 阅读全文

posted @ 2014-10-14 10:45 Life's coding 阅读(1006) 评论(0) 推荐(0) 编辑

2014年9月1日

UCOS中的消息队列并不是真正意义上的队列

摘要: UCOS中的消息队列并不是真正意义上的队列,它只是发送了想要发送数据的指针,这个时候,如果发送多个同一个变量的不同数据,那么数据就相当于被覆盖了.解决办法: 定义一个缓存数组buffer[i]; 更改变量i的数值,就可以实现一个变相的FIFO,因为每次发送的变量的指针是不同的. i++; i... 阅读全文

posted @ 2014-09-01 10:10 Life's coding 阅读(1231) 评论(0) 推荐(0) 编辑

2014年8月29日

关于STM32串口空闲中断的问题

摘要: 1.空闲中断是接受数据后出现一个byte的高电平(空闲)状态,就会触发空闲中断.并不是空闲就会一直中断,准确的说应该是上升沿(停止位)后一个byte,如果一直是低电平是不会触发空闲中断的(会触发break中断)。2.关于第二点有要铺垫的三个情况,datasheet中 "当一空闲帧被检测到时,其处理步... 阅读全文

posted @ 2014-08-29 17:17 Life's coding 阅读(16145) 评论(0) 推荐(0) 编辑

2014年8月28日

Hello world

摘要: 学习编程的第一个代码就是"Hello world",我也用它当作我的开通博客后的第一篇博客题目吧. 接触单片机和FPGA有2年多了,也做过一些项目,不过都是比较简单.深知自己的能力不够,需要勤加学习,就想找个平台记录一下过程中学到的东西,将来以后翻阅查找也方便. So be it! 阅读全文

posted @ 2014-08-28 20:00 Life's coding 阅读(168) 评论(0) 推荐(0) 编辑

导航