可爱又可恨的I2C
I2C有很多优点,对于用户来说,两根线,挂好多设备,在速度要求不是很高的场合完全是够用的.但是I2C相对来说就是软件上的编写比较复杂,需要涉及到复杂的状态机,对CPU来说,处理效率并不高,因为同样是发送数据,就涉及多多种状态的转换,是发...
I2C有很多优点,对于用户来说,两根线,挂好多设备,在速度要求不是很高的场合完全是够用的.但是I2C相对来说就是软件上的编写比较复杂,需要涉及到复杂的状态机,对CPU来说,处理效率并不高,因为同样是发送数据,就涉及多多种状态的转换,是发...
一个很奇怪的实验,首先有一个STM32,一个5V的51单片机.5V的51单片机时钟需要从STM32的MCO获取.究竟能不能,这就得验证了.为了验证这个问题.首先配置一个输出HSE时钟的,这个通常比较低,只有8MHz,STC的51使用无源晶振下也能做12MHz,所以这...
用STM32F429最大的优点就是驱动TFT屏幕,支持RGB的SYNC模式,最大支持到1024*768,不过好像性价比比较高的,还是1024*600的,当然,更便宜一些的,就是5寸的800*480,因为7寸的还要一个外部电路,可没想象中的几十元那么便宜.当然,我指的都是淘...
拆一个台电的MP4,里面有一片Flash,上面的型号已经重新打标,写着J31CG08PJ,容量就不知道了,这个MP4自称有4G用户储存,那么说,这个最有可能是8G的片子了.因为具体型号不清楚,只能焊接在万能兼容的安国主控AU6989上了.现在最新的安国工具,...
FreeRTOS的内存管理,目前有5个(版本8.2.3下),有heap_1.c, heap_2.c, heap_3.c, heap_4.c and heap_5.c,并不是网上说的,要用heap_2.c怎么的,当然.他们是有区别的. heap_1.c 最简单的分配器,不允许内存释放. heap_2.c 比heap_1.c改进的...
如果,处理器的硬件定时器不足,而成本又受到限制,并且在误差允许范围(1-2 Tick)内,就可以用软件定时器,除了不能像某些硬件定时可以直接发生波形,做做通用定时器还是挺方便的.既然是软件定时器,那一定占一些软件资源,比如RAM和性能开销....
FreeRTOS内有croutine这个驱动,但是,这个怎么翻译,我也不太明白,暂且脑补成协程,就是co-routine,这个用起来跟任务比较类似,只不过他调用每个东西,都像一个函数一样,不像一个任务,就是说,任务是Cortex-A的话,这协程能做的就是Cortex-M...
一直不知道怎么解释,就解释为互斥锁吧,就是这个变量,或者这块内存,他有锁,需要拿到这个钥匙的人,才能去操作这个内存,不然大家都能操作,就麻烦大了.创建互斥锁的函数是xSemaphoreCreateMutex,返回QueueHandle_t类型的互斥锁,暂定为xMut...
为什么要用临界区保护,一般是因为防止任务执行到一半,被别人抢占了,举个简单的例子,比如UART发送数据.任务A想发送Hello,任务B要发送Tater,然后任务A发送了He后,被任务B抢占,结果最后输出可能是HeTallteor,根本不知道是什么东西. 为了...
只要在一个完善的系统上,必然会有中断,比如GPIO中断啊,SPI中断啊,当然这些怎么处理,首先系统就有中断在上面,所以我们需要一个更高优先级的中断.也就是配置的中断要被configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY高,另外还需要开启SY...