一直做硬件类工作,大公司职责分明,小公司要求你什么都会,有压力才有动力,因此下定决心开始重新学习单片机编程。当时粗略的学习了51单片机,编程语言使用的是C,基本来说是0基础了。看过很多的网站,都较为笼统,感觉这个STM8社区资源相对比较丰富,为了获取更多的学习资源,同时也为了鞭策自己,决定就在这里挖个坑,每天来打卡,同时不懂的也跟论坛隐藏的大牛讨教。 目前有的配套工具为STM8L的开发板,STM8自制开发板,烧录工具,示波器等常规测试仪器。STM8L买开发板的时候有赠送例程,STM8S网上资源丰富,STM8S与STM8L的区别也简单了解了一下,大致就是初始状态不同。鉴于基础的薄弱,准备从应用更为广泛的STM8S着手。 学习计划不准备按教程一步一步走,将通过模拟项目来学习,有问题会另外开贴求助,希望各位不吝赐教。1 [ Z# r6 h1 S! M, b5 e 7 g$ t% U+ F- J1 g: G6 V& A1 i |
STM32比STM8S贵不了多少 成本差不多 封装也有很小的 从高端到低端 覆盖面更广 网上资料也多 开发环境也比STM8S好一些
只是建议
谢谢,STM8是想先练下手,熟悉一下,STM32在后备任务当中
谢谢,有机会请多多指教
三个月修炼成功?
IIC总线是一种串行数据总线,只有两根信号线,一根是双向的数据线SDA,另一根是时钟线SCL,两条线可以挂多个设备。IIC设备都有个固化的地址,只有在两条线上传输的值等于IIC设备的固化地址时,其才会做出响应。通常我们为了方便把IIC设备分为主设备及从设备,基本上谁控制时钟线谁就是主设备。
开始信号:处理器让SCL时钟保持高电平,然后让SDA数据信号由高变低就表示一个开始信号。同时IIC总线上的设备检测到这个开始信号它就知道处理器要发送数据了。& n& @; m& i: h1 }9 z2 |
停止信号:处理器让SCL时钟保持高电平,然后让SDA数据信号由低变高就表示一个停止信号。同时IIC总线上的设备检测到这个停止信号它就知道处理器已经结束了数据传输。) G; h. s3 q" M3 b0 {) ]6 R
数据传输:SDA上的数据只能在SCL为低电平期间翻转变化,在SCL为高电平期间必须保持稳定,IIC设备只在SCL为高电平期间采集SDA数据。# r4 v" Z& Q( ^3 p7 s
响应信号:单片机发完8bit数据后就不再驱动总线了(SDA脚变输入)。在第8个数据位,如果外接IIC设备能接收到信号的话接着在第9个周期把SDA拉低,那么处理器检测到SDA拉低就能知道外接IIC设备数据已经接收到。IIC数据从最高位开始传输。
以上是根据网上的教程描述,根据自己的理解重新抄录了一遍,最主要的还是得看各个IIC器件的时序图来应用,目前对于时序图还是有点看不懂,稍作操作先理解一下。
食言了一个项目赶得两地跑,加班加点